From 5697b4e9c8189acc9d902fe32d225daf0ae708df Mon Sep 17 00:00:00 2001 From: Kenneth SOARES Date: Mon, 3 Nov 2025 20:50:04 +0100 Subject: [PATCH] move club api test to test_controller_club.py --- club/tests/test_api.py | 44 ----------------------------- club/tests/test_club_controller.py | 45 +++++++++++++++++++++++++++++- 2 files changed, 44 insertions(+), 45 deletions(-) delete mode 100644 club/tests/test_api.py diff --git a/club/tests/test_api.py b/club/tests/test_api.py deleted file mode 100644 index 12e00aa0..00000000 --- a/club/tests/test_api.py +++ /dev/null @@ -1,44 +0,0 @@ -from django.test import Client, TestCase -from django.urls import reverse - -from core.models import User - - -class TestClubSearch(TestCase): - @classmethod - def setUpTestData(cls): - cls.url = reverse("api:search_club") - cls.client = Client() - cls.user = User.objects.get(username="root") - - def test_inactive_club(self): - self.client.force_login(self.user) - response = self.client.get(self.url, {"is_active": False}) - assert response.status_code == 200 - - data = response.json() - names = [item["name"] for item in data["results"]] - assert "AE" not in names - assert "Troll Penché" not in names - - def test_excluded_id(self): - self.client.force_login(self.user) - response = self.client.get(self.url, {"exclude_ids": [1]}) - assert response.status_code == 200 - - data = response.json() - names = [item["name"] for item in data["results"]] - assert "AE" not in names - - def test_club_search(self): - self.client.force_login(self.user) - response = self.client.get(self.url, {"search": "AE"}) - assert response.status_code == 200 - - data = response.json() - names = [item["name"] for item in data["results"]] - assert len(names) > 1 - - def test_anonymous_user_unauthorized(self): - response = self.client.get(self.url) - assert response.status_code == 401 diff --git a/club/tests/test_club_controller.py b/club/tests/test_club_controller.py index 18a3aef1..57a53346 100644 --- a/club/tests/test_club_controller.py +++ b/club/tests/test_club_controller.py @@ -1,7 +1,7 @@ from datetime import date, timedelta import pytest -from django.test import Client +from django.test import Client, TestCase from django.urls import reverse from model_bakery import baker from model_bakery.recipe import Recipe @@ -9,6 +9,49 @@ from pytest_django.asserts import assertNumQueries from club.models import Club, Membership from core.baker_recipes import subscriber_user +from core.models import User + + +class TestClubSearch(TestCase): + @classmethod + def setUpTestData(cls): + cls.url = reverse("api:search_club") + cls.user = User.objects.get(username="root") + + def test_inactive_club(self): + self.client.force_login(self.user) + response = self.client.get(self.url, {"is_active": False}) + assert response.status_code == 200 + + data = response.json() + names = [item["name"] for item in data["results"]] + assert "AE" not in names + assert "Troll Penché" not in names + + def test_excluded_id(self): + self.client.force_login(self.user) + response = self.client.get(self.url, {"exclude_ids": [1]}) + assert response.status_code == 200 + + data = response.json() + names = [item["name"] for item in data["results"]] + assert "AE" not in names + + def test_club_search(self): + self.client.force_login(self.user) + response = self.client.get(self.url, {"search": "AE"}) + assert response.status_code == 200 + + data = response.json() + names = [item["name"] for item in data["results"]] + assert len(names) > 1 + + for name in names: + assert "AE" in name.upper() + + def test_anonymous_user_unauthorized(self): + response = self.client.get(self.url) + assert response.status_code == 401 @pytest.mark.django_db