diff --git a/matmat/tests.py b/matmat/tests.py index a39b155a..3640ddda 100644 --- a/matmat/tests.py +++ b/matmat/tests.py @@ -1 +1,35 @@ # Create your tests here. + +from django.core.management import call_command +from django.test import TestCase +from django.urls import reverse +from model_bakery import baker + +from com.models import News +from core.baker_recipes import subscriber_user +from core.models import User + + +class TestMatmatronch(TestCase): + @classmethod + def setUpTestData(cls): + News.objects.all().delete() + User.objects.all().delete() + users = [ + baker.prepare(User, promo=17), + baker.prepare(User, promo=17), + baker.prepare(User, promo=17, department="INFO"), + baker.prepare(User, promo=18, department="INFO"), + ] + cls.users = User.objects.bulk_create(users) + call_command("update_index", "core", "--remove") + + def test_search(self): + self.client.force_login(subscriber_user.make()) + response = self.client.get(reverse("matmat:search")) + assert response.status_code == 200 + response = self.client.get( + reverse("matmat:search", query={"promo": 17, "department": "INFO"}) + ) + assert response.status_code == 200 + assert list(response.context_data["object_list"]) == [self.users[2]]