From b2c13f061493c359361b18fbace9b231e77f32a7 Mon Sep 17 00:00:00 2001 From: "Jens L." Date: Fri, 28 Mar 2025 22:14:15 +0100 Subject: [PATCH] core: fix flaky tests introduced with is_superuser API fix (#13709) Signed-off-by: Jens Langhammer --- authentik/core/tests/test_users_api.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/authentik/core/tests/test_users_api.py b/authentik/core/tests/test_users_api.py index bd88dae787..94ec3a616e 100644 --- a/authentik/core/tests/test_users_api.py +++ b/authentik/core/tests/test_users_api.py @@ -20,6 +20,7 @@ from authentik.core.tests.utils import ( create_test_admin_user, create_test_brand, create_test_flow, + create_test_user, ) from authentik.flows.models import FlowDesignation from authentik.lib.generators import generate_id, generate_key @@ -31,7 +32,7 @@ class TestUsersAPI(APITestCase): def setUp(self) -> None: self.admin = create_test_admin_user() - self.user = User.objects.create(username="test-user") + self.user = create_test_user() def test_filter_type(self): """Test API filtering by type""" @@ -48,7 +49,9 @@ class TestUsersAPI(APITestCase): def test_filter_is_superuser(self): """Test API filtering by superuser status""" - self.client.force_login(self.admin) + User.objects.all().delete() + admin = create_test_admin_user() + self.client.force_login(admin) # Test superuser response = self.client.get( reverse("authentik_api:user-list"), @@ -59,8 +62,9 @@ class TestUsersAPI(APITestCase): self.assertEqual(response.status_code, 200) body = loads(response.content) self.assertEqual(len(body["results"]), 1) - self.assertEqual(body["results"][0]["username"], self.admin.username) + self.assertEqual(body["results"][0]["username"], admin.username) # Test non-superuser + user = create_test_user() response = self.client.get( reverse("authentik_api:user-list"), data={ @@ -70,7 +74,7 @@ class TestUsersAPI(APITestCase): self.assertEqual(response.status_code, 200) body = loads(response.content) self.assertEqual(len(body["results"]), 1, body) - self.assertEqual(body["results"][0]["username"], self.user.username) + self.assertEqual(body["results"][0]["username"], user.username) def test_list_with_groups(self): """Test listing with groups""" @@ -130,6 +134,8 @@ class TestUsersAPI(APITestCase): def test_recovery_email_no_flow(self): """Test user recovery link (no recovery flow set)""" self.client.force_login(self.admin) + self.user.email = "" + self.user.save() response = self.client.post( reverse("authentik_api:user-recovery-email", kwargs={"pk": self.user.pk}) )