Align balldontlie OpenAPI integration and clarify search metric semantics

This commit is contained in:
Alfredo Di Stasio
2026-03-12 16:37:02 +01:00
parent c9dd10a438
commit dac63f9148
16 changed files with 1562 additions and 82 deletions

View File

@ -193,3 +193,52 @@ def test_player_search_htmx_invalid_filters_return_validation_feedback(client):
body = response.content.decode().lower()
assert "search filters are invalid" in body
assert "points per game min" in body
@pytest.mark.django_db
def test_player_search_results_render_best_eligible_metric_labels(client):
nationality = Nationality.objects.create(name="Ireland", iso2_code="IE", iso3_code="IRL")
position = Position.objects.create(code="PG", name="Point Guard")
role = Role.objects.create(code="playmaker", name="Playmaker")
season = Season.objects.create(label="2025-2026", start_date=date(2025, 9, 1), end_date=date(2026, 6, 30))
competition = Competition.objects.create(
name="Super League",
slug="super-league",
competition_type=Competition.CompetitionType.LEAGUE,
gender=Competition.Gender.MEN,
country=nationality,
)
team = Team.objects.create(name="Dublin", slug="dublin", country=nationality)
player = Player.objects.create(
first_name="Sean",
last_name="Label",
full_name="Sean Label",
birth_date=date(2001, 1, 1),
nationality=nationality,
nominal_position=position,
inferred_role=role,
)
season_row = PlayerSeason.objects.create(
player=player,
season=season,
team=team,
competition=competition,
games_played=10,
minutes_played=250,
)
PlayerSeasonStats.objects.create(
player_season=season_row,
points=12,
rebounds=4,
assists=5,
steals=1,
blocks=0.1,
turnovers=2,
)
response = client.get(reverse("players:index"))
assert response.status_code == 200
body = response.content.decode()
assert "Best Eligible PPG" in body
assert "Best Eligible MPG" in body
assert "best eligible values per player" in body.lower()