paper-dynasty-discord/tests/gameplay_models/test_rosterlinks_model.py
Cal Corum 073bd04b4b Added RosterLinks to remove card_id from setup process
Add SelectStartingPitcher dropdown
New .sync function
2024-11-23 19:53:48 -06:00

33 lines
980 B
Python

import pytest
from sqlmodel import Session, select, func
from in_game.gameplay_models import Game, RosterLink
from in_game.gameplay_queries import get_available_subs
from tests.factory import session_fixture
def test_get_rosterlinks(session: Session):
game_1 = session.get(Game, 1)
g1_links = session.exec(select(RosterLink).where(RosterLink.game == game_1)).all()
assert len(g1_links) == 20
home_team = game_1.home_team
home_roster = session.exec(select(RosterLink).where(RosterLink.game == game_1, RosterLink.team == home_team)).all()
assert len(home_roster) == 10
def test_get_available_subs(session: Session):
this_game = session.get(Game, 3)
home_team = this_game.home_team
home_roster = session.exec(select(RosterLink).where(RosterLink.game == this_game, RosterLink.team == home_team)).all()
assert len(home_roster) == 11
cards = get_available_subs(session, this_game, this_game.home_team)
assert len(cards) == 1