50 lines
1.5 KiB
Python
50 lines
1.5 KiB
Python
from datetime import date
|
|
|
|
import pytest
|
|
from django.contrib.auth.models import User
|
|
from django.urls import reverse
|
|
|
|
from apps.players.models import Nationality, Player, Position, Role
|
|
from apps.scouting.models import SavedSearch
|
|
|
|
|
|
@pytest.mark.django_db
|
|
def test_saved_search_run_filters_player_results(client):
|
|
user = User.objects.create_user(username="integration", password="pass12345")
|
|
client.force_login(user)
|
|
|
|
nationality = Nationality.objects.create(name="Italy", iso2_code="IT", iso3_code="ITA")
|
|
position = Position.objects.create(code="PG", name="Point Guard")
|
|
role = Role.objects.create(code="playmaker", name="Playmaker")
|
|
|
|
Player.objects.create(
|
|
first_name="Marco",
|
|
last_name="Rossi",
|
|
full_name="Marco Rossi",
|
|
birth_date=date(2001, 1, 1),
|
|
nationality=nationality,
|
|
nominal_position=position,
|
|
inferred_role=role,
|
|
)
|
|
Player.objects.create(
|
|
first_name="Luca",
|
|
last_name="Bianchi",
|
|
full_name="Luca Bianchi",
|
|
birth_date=date(2001, 1, 1),
|
|
nationality=nationality,
|
|
nominal_position=position,
|
|
inferred_role=role,
|
|
)
|
|
|
|
saved = SavedSearch.objects.create(
|
|
user=user,
|
|
name="Only Marco",
|
|
filters={"q": "Marco", "sort": "name_asc"},
|
|
)
|
|
|
|
response = client.get(reverse("scouting:saved_search_run", kwargs={"pk": saved.pk}), follow=True)
|
|
|
|
assert response.status_code == 200
|
|
assert "Marco Rossi" in response.content.decode()
|
|
assert "Luca Bianchi" not in response.content.decode()
|