Refactor tests to common factory

This commit is contained in:
Cal Corum 2024-10-13 20:06:25 -05:00
parent b2fd6fc9c4
commit a16ed26541
7 changed files with 257 additions and 172 deletions

View File

@ -4,7 +4,7 @@ from sqlmodel import Session, SQLModel, create_engine
from sqlmodel.pool import StaticPool
from typing import Literal
from in_game.gameplay_models import Game, Lineup, Team, Player
from in_game.gameplay_models import Card, Cardset, Game, GameCardsetLink, Lineup, Team, Player
@pytest.fixture(name='session')
@ -15,7 +15,7 @@ def session_fixture():
SQLModel.metadata.create_all(engine)
with Session(engine) as session:
team_1 = Team(
id=31, abbrev='NCB', sname='CornBelters', lname='Normal CornBelters', gmid=1234, gmname='Cal', gsheet='asdf1234', wallet=6969, team_value=69420, collection_value=169420, color='006900', season=7, event=False, career=1234, ranking=1337, has_guide=True, is_ai=False
id=31, abbrev='NCB', sname='CornBelters', lname='Normal CornBelters', gmid=1234, gmname='Cal', gsheet='asdf1234', wallet=6969, team_value=69420, collection_value=169420, color='006900', season=7, event=False, career=1234, ranking=1337, has_guide=True, is_ai=True
)
team_2 = Team(
id=400, abbrev='WV', sname='Black Bears', lname='West Virginia Black Bears', gmid=5678, gmname='Evil Cal', gsheet='https://i.postimg.cc/HjDc8bBF/blackbears-transparent.png', wallet=350, team_value=420, collection_value=169, color='6699FF', season=7, event=False, career=2, ranking=969, has_guide=False, is_ai=False
@ -24,7 +24,7 @@ def session_fixture():
id=69, abbrev='NCB3', sname='CornBelters', lname='Normal CornBelters', gmid=1234, gmname='Cal', gsheet='asdf1234', wallet=6969, team_value=69420, collection_value=169420, color='006900', season=7, event=False, career=1234, ranking=1337, has_guide=True, is_ai=False
)
team_4 = Team(
id=420, abbrev='WV4', sname='Black Bears', lname='West Virginia Black Bears', gmid=5678, gmname='Evil Cal', gsheet='https://i.postimg.cc/HjDc8bBF/blackbears-transparent.png', wallet=350, team_value=420, collection_value=169, color='6699FF', season=7, event=False, career=2, ranking=969, has_guide=False, is_ai=False
id=420, abbrev='WV4', sname='Black Bears', lname='West Virginia Black Bears', gmid=5678, gmname='Evil Cal', gsheet='https://i.postimg.cc/HjDc8bBF/blackbears-transparent.png', wallet=350, team_value=420, collection_value=169, color='6699FF', season=7, event=False, career=2, ranking=969, has_guide=False, is_ai=True
)
incomplete_team = Team(
id=446, abbrev='CLS', sname='Macho Men', lname='Columbus Macho Men', gmid=181818, gmname='Mason Socc', gsheet='asdf1234', wallet=6969, team_value=69420, collection_value=169420, color='https://i.postimg.cc/8kLZCYXh/S10CLS.png', season=7, event=False, career=0
@ -41,84 +41,112 @@ def session_fixture():
session.add(old_cache_team)
session.commit()
game_1 = Game(away_team_id=1, home_team_id=2, channel_id=1234, season=9)
game_2 = Game(away_team_id=4, home_team_id=3, channel_id=5678, season=9, active=False, is_pd=True, ranked=True, week_num=6, game_num=9, away_roster_id=69, home_roster_id=420, first_message=12345678, ai_team='home', game_type='minor-league')
game_3 = Game(away_team_id=3, home_team_id=4, channel_id=5678, season=9, active=True, is_pd=True, ranked=True, week_num=6, game_num=10, away_roster_id=69, home_roster_id=420, first_message=34567890, ai_team='home', game_type='minor-league')
game_1 = Game(away_team_id=31, home_team_id=400, channel_id=1234, season=9, ai_team='away')
game_2 = Game(away_team_id=69, home_team_id=420, channel_id=5678, season=9, active=False, is_pd=True, ranked=True, week_num=6, game_num=9, away_roster_id=69, home_roster_id=420, first_message=12345678, ai_team='home', game_type='minor-league')
game_3 = Game(away_team_id=69, home_team_id=420, channel_id=5678, season=9, active=True, is_pd=True, ranked=True, week_num=6, game_num=10, away_roster_id=69, home_roster_id=420, first_message=34567890, ai_team='home', game_type='minor-league')
session.add(game_1)
session.add(game_2)
session.add(game_3)
session.commit()
cardset_1 = Cardset(id=1, name='1969 Live')
cardset_2 = Cardset(id=2, name='2024 Season')
session.add(cardset_1)
session.add(cardset_2)
session.commit()
link_1 = GameCardsetLink(game=game_1, cardset=cardset_1, priority=1)
link_2 = GameCardsetLink(game=game_1, cardset=cardset_2, priority=1)
link_3 = GameCardsetLink(game=game_2, cardset=cardset_1, priority=1)
link_4 = GameCardsetLink(game=game_2, cardset=cardset_2, priority=2)
session.add(link_1)
session.add(link_2)
session.add(link_3)
session.add(link_4)
session.commit()
all_players = []
all_cards = []
pos_list = ['C', '1B', '2B', '3B', 'SS', 'LF', 'CF', 'RF', 'DH', 'P']
for x in range(40):
if x < 10:
mlb_team = 'Baltimore Orioles'
team_id = 31
elif x < 20:
mlb_team = 'New York Yankees'
team_id = 400
elif x < 30:
mlb_team = 'Boston Red Sox'
team_id = 69
else:
mlb_team = 'Tampa Bay Rays'
team_id = 420
all_players.append(Player(
id=x+1,
name=f'Player {x}',
cost=x * 3,
image=f'player_{x}_image_url',
mlbclub=mlb_team,
franchise=mlb_team,
cardset=cardset_1 if x % 2 == 1 else cardset_2,
set_num=x,
rarity_id=1,
pos_1=pos_list[(x % 10)],
description="Live" if x % 2 == 1 else "2024"
))
all_cards.append(Card(
player_id=x+1,
team_id=team_id
))
all_players.append(Player(
id=69, name='Player 68', cost=69*3, mlbclub='Junior All-Stars', franchise='Junior All-Stars', cardset=cardset_1, set_num=69, pos_1='DH', description='Live', created=datetime.datetime.today() - datetime.timedelta(days=60), image='player_69_image_URL', rarity_id=1
))
all_cards.append(Card(
player_id=41,
team_id=420,
created=datetime.datetime.now() - datetime.timedelta(days=60)
))
for player in all_players:
session.add(player)
for card in all_cards:
session.add(card)
session.commit()
# all_lineups = []
# for team in [team_1, team_2]:
# for (order, pos) in [(1, 'C'), (2, '1B'), (3, '2B'), (4, '3B'), (5, 'SS'), (6, 'LF'), (7, 'CF'), (8, 'RF'), (9, 'DH'), (10, 'P')]:
# all_lineups.append(Lineup(team_id=team, card_id=order, player_id=68+order, position=pos, batting_order=order, game=game_1))
# for team in [team_3, team_4]:
# for (order, pos) in [(1, 'C'), (2, '1B'), (3, '2B'), (4, '3B'), (5, 'SS'), (6, 'LF'), (7, 'CF'), (8, 'RF'), (9, 'DH'), (10, 'P')]:
# all_lineups.append(Lineup(team_id=team, card_id=order, player_id=100+order, position=pos, batting_order=order, game=game_3))
all_lineups = []
player_count = 1
for team in [team_1, team_2]:
for (order, pos) in [(1, 'C'), (2, '1B'), (3, '2B'), (4, '3B'), (5, 'SS'), (6, 'LF'), (7, 'CF'), (8, 'RF'), (9, 'DH'), (10, 'P')]:
all_lineups.append(Lineup(
position=pos,
batting_order=order,
game=game_1,
team=team,
player_id=player_count,
card_id=player_count
))
player_count += 1
for team in [team_3, team_4]:
for (order, pos) in [(1, 'C'), (2, '1B'), (3, '2B'), (4, '3B'), (5, 'SS'), (6, 'LF'), (7, 'CF'), (8, 'RF'), (9, 'DH'), (10, 'P')]:
all_lineups.append(Lineup(
position=pos,
batting_order=order,
game=game_3,
team=team,
player_id=player_count,
card_id=player_count
))
player_count += 1
for lineup in all_lineups:
session.add(lineup)
session.commit()
yield session
@pytest.fixture(name='new_games')
def new_games_fixture():
return [
Game(away_team_id=1, home_team_id=2, channel_id=1234, season=9),
Game(away_team_id=4, home_team_id=3, channel_id=5678, season=9, active=False, is_pd=True, ranked=True, week_num=6, game_num=9, away_roster_id=69, home_roster_id=420, first_message=12345678, ai_team='home', game_type='minor-league'),
Game(away_team_id=3, home_team_id=4, channel_id=5678, season=9, active=True, is_pd=True, ranked=True, week_num=6, game_num=10, away_roster_id=69, home_roster_id=420, first_message=34567890, ai_team='home', game_type='minor-league')
]
@pytest.fixture(name='new_games_with_lineups')
def new_games_with_lineups_fixture():
all_games = [
Game(away_team_id=1, home_team_id=2, channel_id=1234, season=9),
Game(away_team_id=4, home_team_id=3, channel_id=5678, season=9, active=False, is_pd=True, ranked=True, week_num=6, game_num=9, away_roster_id=69, home_roster_id=420, first_message=12345678, ai_team='home', game_type='minor-league'),
Game(away_team_id=3, home_team_id=4, channel_id=5678, season=9, active=True, is_pd=True, ranked=True, week_num=6, game_num=10, away_roster_id=69, home_roster_id=420, first_message=34567890, ai_team='home', game_type='minor-league')
]
game_1 = all_games[0]
game_2 = all_games[1]
all_lineups = []
for team_id in [1, 2]:
for (order, pos) in [(1, 'C'), (2, '1B'), (3, '2B'), (4, '3B'), (5, 'SS'), (6, 'LF'), (7, 'CF'), (8, 'RF'), (9, 'DH'), (10, 'P')]:
all_lineups.append(Lineup(team_id=team_id, card_id=order, player_id=68+order, position=pos, batting_order=order, game=game_1))
for team_id in [3, 4]:
for (order, pos) in [(1, 'C'), (2, '1B'), (3, '2B'), (4, '3B'), (5, 'SS'), (6, 'LF'), (7, 'CF'), (8, 'RF'), (9, 'DH'), (10, 'P')]:
all_lineups.append(Lineup(team_id=team_id, card_id=order, player_id=100+order, position=pos, batting_order=order, game=game_2))
return [game_1, game_2]
@pytest.fixture(name='new_teams')
def new_teams_fixture():
team_1 = Team(
id=31, abbrev='NCB', sname='CornBelters', lname='Normal CornBelters', gmid=1234, gmname='Cal', gsheet='asdf1234', wallet=6969, team_value=69420, collection_value=169420, color='006900', season=7, event=False, career=1234, ranking=1337, has_guide=True, is_ai=False
)
team_2 = Team(
id=400, abbrev='WV', sname='Black Bears', lname='West Virginia Black Bears', gmid=5678, gmname='Evil Cal', gsheet='https://i.postimg.cc/HjDc8bBF/blackbears-transparent.png', wallet=350, team_value=420, collection_value=169, color='6699FF', season=7, event=False, career=2, ranking=969, has_guide=False, is_ai=False
)
incomplete_team = Team(
id=446, abbrev='CLS', sname='Macho Men', lname='Columbus Macho Men', gmid=181818, gmname='Mason Socc', gsheet='asdf1234', wallet=6969, team_value=69420, collection_value=169420, color='https://i.postimg.cc/8kLZCYXh/S10CLS.png', season=7, event=False, career=0
)
old_cache_team = Team(
id=3, abbrev='BAL', sname='Orioles', lname='Baltimore Orioles', gmid=181818, gmname='Brandon Hyde', gsheet='asdf1234', wallet=6969, team_value=69420, collection_value=169420, color='https://i.postimg.cc/8kLZCYXh/S10CLS.png', season=7, event=False, career=0, ranking=500, has_guide=False, is_ai=False, created=datetime.datetime.today() - datetime.timedelta(days=60))
return [team_1, team_2, incomplete_team, old_cache_team]
@pytest.fixture(name='new_players')
def new_players_fixture():
player_1 = Player(
id=10139, name='Jihmih Tyranus', cost=316, image='https://pd.manticorum.com/api/v2/players/10139/battingcard?d=2024-5-07', mlbclub='Custom Ballplayers', franchise='Custom Ballplayers', set_num=420, pos_1='C', pos_2='3B', pos_3='LF', description='24 Custom', bbref_id='sandyman'
)
player_2 = Player(
id=9873, name='Finn Sturm', cost=146, image='https://pd.manticorum.com/api/v2/players/9873/battingcard?d=2024-5-06', mlbclub='Custom Ballplayers', franchise='Custom Ballplayers', set_num=69, pos_1='C', pos_2='1B', description='24 Custom', bbref_id='sandyman'
)
old_cache_player = Player(
id=10334, name='Ryan Ohearn', cost=91, image='https://pd.manticorum.com/api/v2/players/10334/battingcard?d=2024-8-18', mlbclub='Baltimore Orioles', franchise='Baltimore Orioles', set_num=420, pos_1='1B', pos_2='RF', pos_3='LF', description='2024', bbref_id='ohearry01', strat_code='656811', fangr_id='16442', mlbplayer_id=1200, created=datetime.datetime.today() - datetime.timedelta(days=60)
)
return [player_1, player_2, old_cache_player]

View File

@ -0,0 +1,20 @@
import datetime
from sqlmodel import Session
from in_game.gameplay_models import CACHE_LIMIT, Card, Player, Team, get_or_create_ai_card, select
from factory import session_fixture
def test_create_card(session: Session):
all_cards = session.exec(select(Card)).all()
assert len(all_cards) == 41
card_1 = session.get(Card, 1)
card_2 = session.get(Card, 12)
assert card_1.player_id == 1
assert card_1.team_id == 31
assert card_2.player_id == 12
assert card_2.team_id == 400

View File

@ -0,0 +1,50 @@
import pytest
from sqlalchemy import delete
from sqlmodel import Session
from in_game.gameplay_models import select, Cardset, GameCardsetLink
from in_game.gameplay_queries import get_channel_game_or_none, get_active_games_by_team
from factory import session_fixture
def test_create_cardset(session: Session):
cardset_1 = session.get(Cardset, 1)
cardset_2 = session.get(Cardset, 2)
assert cardset_1.name == '1969 Live'
assert cardset_2.name == '2024 Season'
def test_delete_cardset(session: Session):
cardset_1 = session.get(Cardset, 1)
session.delete(cardset_1)
bad_links = session.exec(select(GameCardsetLink).where(GameCardsetLink.cardset_id == 1)).all()
assert len(bad_links) == 0
def test_create_cardsetgamelink(session: Session):
pri_1 = session.exec(select(GameCardsetLink).where(GameCardsetLink.priority == 1)).all()
assert len(pri_1) == 3
pri_2 = session.exec(select(GameCardsetLink).where(GameCardsetLink.priority == 2)).all()
assert len(pri_2) == 1
g_1 = session.exec(select(GameCardsetLink).where(GameCardsetLink.game_id == 1)).all()
assert len(g_1) == 2
g_2 = session.exec(select(GameCardsetLink).where(GameCardsetLink.game_id == 2)).all()
assert len(g_2) == 2
def test_update_cardsetgamelink(session: Session):
pri_1 = session.exec(select(GameCardsetLink).where(GameCardsetLink.priority == 1)).all()
assert len(pri_1) == 3
link_2 = session.get(GameCardsetLink, (1, 1))
link_2.priority = 2
session.add(link_2)
session.commit()
pri_1 = session.exec(select(GameCardsetLink).where(GameCardsetLink.priority == 1)).all()
assert len(pri_1) == 2

View File

@ -1,18 +1,18 @@
import pytest
from sqlalchemy import delete
from sqlmodel import Session
from sqlalchemy import delete as sadelete
from sqlmodel import Session, delete
from in_game.gameplay_models import Game, select
from in_game.gameplay_queries import get_games_by_channel, get_channel_game_or_none, get_active_games_by_team
from factory import session_fixture, new_games_fixture
from in_game.gameplay_models import Game, Lineup, GameCardsetLink, select
from in_game.gameplay_queries import get_channel_game_or_none, get_active_games_by_team
from factory import session_fixture
def test_create_game(session: Session, new_games: list[Game]):
def test_create_game(session: Session):
game_1 = session.get(Game, 1)
game_2 = session.get(Game, 2)
assert game_1.away_team_id == 1
assert game_1.home_team_id == 2
assert game_1.away_team_id == 31
assert game_1.home_team_id == 400
assert game_1.channel_id == 1234
assert game_1.season == 9
assert game_1.active == True
@ -23,7 +23,7 @@ def test_create_game(session: Session, new_games: list[Game]):
assert game_1.away_roster_id == None
assert game_1.home_roster_id == None
assert game_1.first_message == None
assert game_1.ai_team == None
assert game_1.ai_team == 'away'
assert game_1.game_type == None
assert game_2.active == False
assert game_2.is_pd == True
@ -41,14 +41,14 @@ def test_select_all(session: Session):
games = session.exec(select(Game)).all()
assert len(games) == 3
session.execute(delete(Game))
session.execute(sadelete(Game))
session.commit()
games = session.exec(select(Game)).all()
assert len(games) == 0
def test_games_by_channel(session: Session, new_games: list[Game]):
def test_games_by_channel(session: Session):
assert get_channel_game_or_none(session, 1234) is not None
assert get_channel_game_or_none(session, 5678) is not None
assert get_channel_game_or_none(session, 69) is None
@ -73,15 +73,15 @@ def test_games_by_channel(session: Session, new_games: list[Game]):
assert get_channel_game_or_none(session, 5678) is None
def test_games_by_team(session: Session, new_games: list[Game]):
assert len(get_active_games_by_team(session, team_id=3)) == 1
def test_games_by_team(session: Session):
assert len(get_active_games_by_team(session, team_id=69)) == 1
game_2 = session.get(Game, 2)
game_2.active = True
session.add(game_2)
session.commit()
assert len(get_active_games_by_team(session, team_id=3)) == 2
assert len(get_active_games_by_team(session, team_id=69)) == 2
game_3 = session.get(Game, 3)
game_3.active = False
@ -90,4 +90,17 @@ def test_games_by_team(session: Session, new_games: list[Game]):
session.add(game_2)
session.commit()
assert len(get_active_games_by_team(session, team_id=3)) == 0
assert len(get_active_games_by_team(session, team_id=69)) == 0
def test_delete_game(session: Session):
game_1 = session.get(Game, 1)
# session.execute(sadelete(GameCardsetLink).where(GameCardsetLink.game == game_1))
# session.delete(game_1)
session.delete(game_1)
bad_lineups = session.exec(select(Lineup).where(Lineup.game_id == 1)).all()
bad_links = session.exec(select(GameCardsetLink).where(GameCardsetLink.game_id == 1)).all()
assert len(bad_lineups) == 0
assert len(bad_links) == 0

View File

@ -1,24 +1,15 @@
from sqlmodel import Session, select
from in_game.gameplay_models import Game, Lineup
from factory import session_fixture, new_games_with_lineups_fixture, new_games_fixture
from in_game.gameplay_models import Lineup
from factory import session_fixture
def test_create_lineup(session: Session, new_games_with_lineups: list[Game]):
"""
This test fails when run with the entire suite
"""
game_1 = new_games_with_lineups[0]
game_2 = new_games_with_lineups[1]
def test_create_lineup(session: Session):
all_lineups = session.exec(select(Lineup)).all()
assert len(all_lineups) == 40
assert len(game_1.lineups) == 20
assert len(game_2.lineups) == 20
session.add(game_1)
session.add(game_2)
session.commit()
query_ss = session.exec(select(Lineup).where(Lineup.game == game_1, Lineup.position == 'SS', Lineup.active == True)).all()
query_ss = session.exec(select(Lineup).where(Lineup.game_id == 1, Lineup.position == 'SS', Lineup.active == True)).all()
lineup_id_7 = session.get(Lineup, 7)
lineup_id_21 = session.get(Lineup, 21)

View File

@ -1,61 +1,50 @@
import datetime
import pytest
from sqlmodel import Session
from in_game.gameplay_models import CACHE_LIMIT, Player, player_description, select, get_player
from factory import session_fixture, new_players_fixture
from factory import session_fixture
def test_create_player(session: Session, new_players: list[Player]):
player_1 = new_players[0]
player_2 = new_players[1]
session.add(player_1)
session.add(player_2)
session.commit()
def test_create_player(session: Session):
all_players = session.exec(select(Player)).all()
assert len(all_players) == 41
assert player_1.id == new_players[0].id
assert player_1.name == new_players[0].name
assert player_1.cost == new_players[0].cost
assert player_1.bbref_id == new_players[0].bbref_id
assert player_1.image == new_players[0].image
assert player_1.bbref_id == new_players[0].bbref_id
assert player_1.description == new_players[0].description
assert player_1.fangr_id is None
assert player_2.fangr_id is None
assert player_2.pos_2 == new_players[1].pos_2
player_1 = session.get(Player, 1)
player_2 = session.get(Player, 12)
assert player_1.name == 'Player 0'
assert player_1.cardset_id == 2
assert player_1.pos_1 == 'C'
assert player_1.description == '2024'
assert player_1.franchise == 'Baltimore Orioles'
assert player_2.cardset_id == 1
assert player_2.description == 'Live'
assert player_2.mlbclub == 'New York Yankees'
async def test_cached_players(session: Session, new_players: list[Player]):
player_1 = new_players[0]
player_2 = new_players[1]
player_3 = new_players[2]
session.add(player_1)
session.add(player_2)
session.add(player_3)
session.commit()
async def test_cached_players(session: Session):
player_1 = session.get(Player, 1)
player_2 = session.get(Player, 69)
assert (datetime.datetime.now() - player_3.created).total_seconds() > CACHE_LIMIT
assert (datetime.datetime.now() - player_2.created).total_seconds() > CACHE_LIMIT
new_player_1 = await get_player(session, player_id=player_1.id)
new_player_2 = await get_player(session, player_id=player_2.id)
new_player_3 = await get_player(session, player_id=player_3.id)
new_player_4 = await get_player(session, player_id=69)
new_player_2 = await get_player(session, player_id=69)
new_player_3 = await get_player(session, player_id=6969)
assert player_1.created == new_player_1.created
assert player_2.created == new_player_2.created
assert (datetime.datetime.now() - new_player_3.created).total_seconds() < CACHE_LIMIT
assert new_player_4 is not None
assert (datetime.datetime.now() - new_player_2.created).total_seconds() < CACHE_LIMIT
assert new_player_3 is not None
def test_player_description(session: Session, new_players: list[Player]):
player_1 = new_players[0]
session.add(player_1)
session.commit()
session.refresh(player_1)
def test_player_description(session: Session):
player_1 = session.get(Player, 1)
player_2 = session.get(Player, 2)
player_dict = {'player_id': new_players[1].id, 'p_name': new_players[1].name, 'description': new_players[1].description}
player_dict = {'player_id': player_2.id, 'p_name': player_2.name, 'description': player_2.description}
assert player_description(player=player_1) == f'{new_players[0].description} {new_players[0].name}'
assert player_description(player_dict=player_dict) == f'{player_dict["description"]} {player_dict['p_name']}'
assert player_description(player=player_1) == f'2024 Player 0'
assert player_description(player_dict=player_dict) == f'Live Player 1'

View File

@ -5,21 +5,23 @@ from in_game.gameplay_models import Team, get_team, CACHE_LIMIT
from factory import session_fixture, new_teams_fixture, pytest
def test_create_team(session: Session, new_teams: list[Team]):
team_1 = new_teams[0]
team_2 = new_teams[1]
session.add(team_1)
session.add(team_2)
session.commit()
assert team_1.abbrev == 'NCB'
assert team_1.id == 31
assert team_2.abbrev == 'WV'
assert team_2.id == 400
team_31 = session.get(Team, 31)
team_400 = session.get(Team, 400)
team_69 = session.get(Team, 69)
team_420 = session.get(Team, 420)
team_3 = session.get(Team, 3)
assert team_31.abbrev == 'NCB'
assert team_400.abbrev == 'WV'
assert team_69.abbrev == 'NCB3'
assert team_420.abbrev == 'WV4'
assert team_3.abbrev == 'BAL'
def test_create_incomplete_team(session: Session, new_teams: list[Team]):
team_1 = new_teams[2]
team_1 = Team(
id=446, abbrev='CLS', sname='Macho Men', lname='Columbus Macho Men', gmid=181818, gmname='Mason Socc', gsheet='asdf1234', wallet=6969, team_value=69420, collection_value=169420, color='https://i.postimg.cc/8kLZCYXh/S10CLS.png', season=7, event=False, career=0
)
session.add(team_1)
@ -30,24 +32,16 @@ def test_create_incomplete_team(session: Session, new_teams: list[Team]):
async def test_team_cache(session: Session, new_teams: list[Team]):
team_1 = new_teams[0]
team_2 = new_teams[1]
team_3 = new_teams[3]
session.add(team_1)
session.add(team_2)
session.add(team_3)
session.commit()
team_31 = session.get(Team, 31)
team_3 = session.get(Team, 3)
assert (datetime.datetime.now() - team_3.created).total_seconds() > CACHE_LIMIT
new_team_1 = await get_team(session, team_id=team_1.id)
new_team_2 = await get_team(session, team_id=team_2.id)
new_team_31 = await get_team(session, team_id=team_31.id)
new_team_3 = await get_team(session, team_id=team_3.id)
new_team_4 = await get_team(session, team_abbrev='NYY')
assert team_1.created == new_team_1.created
assert team_2.created == new_team_2.created
assert team_31.created == new_team_31.created
assert (datetime.datetime.now() - new_team_3.created).total_seconds() < CACHE_LIMIT
assert new_team_4.created is not None