From 26adbecfe2f5702b25bd789b6e98c1ecae00fce6 Mon Sep 17 00:00:00 2001 From: Dirk Julich Date: Thu, 18 Jun 2026 15:09:56 +0200 Subject: [PATCH] Add setup_managed_roles fixture to functional tests hitting org views Tests that hit organization list/detail views now require the setup_managed_roles fixture to pre-create the Organization Member and Organization Admin RoleDefinition objects used by the DAB RBAC subqueries. Co-Authored-By: Claude Opus 4.6 --- awx/main/tests/functional/api/test_user.py | 2 +- awx/main/tests/functional/dab_rbac/test_external_auditor.py | 4 ++-- .../dab_resource_registry/test_ansible_id_display.py | 2 +- awx/main/tests/functional/rbac/test_rbac_api.py | 4 ++-- awx/main/tests/functional/test_named_url.py | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/awx/main/tests/functional/api/test_user.py b/awx/main/tests/functional/api/test_user.py index 366f6f943c..202cf56ccc 100644 --- a/awx/main/tests/functional/api/test_user.py +++ b/awx/main/tests/functional/api/test_user.py @@ -259,7 +259,7 @@ def test_user_verify_attribute_created(admin, get): @pytest.mark.django_db -def test_org_not_shown_in_admin_user_sublists(admin_user, get, organization): +def test_org_not_shown_in_admin_user_sublists(admin_user, get, organization, setup_managed_roles): for view_name in ('user_admin_of_organizations_list', 'user_organizations_list'): url = reverse(f'api:{view_name}', kwargs={'pk': admin_user.pk}) r = get(url, user=admin_user, expect=200) diff --git a/awx/main/tests/functional/dab_rbac/test_external_auditor.py b/awx/main/tests/functional/dab_rbac/test_external_auditor.py index c3602d7366..d05c11687d 100644 --- a/awx/main/tests/functional/dab_rbac/test_external_auditor.py +++ b/awx/main/tests/functional/dab_rbac/test_external_auditor.py @@ -66,7 +66,7 @@ class TestExternalAuditorRoleAllModels: assert obj not in get_user_queryset(rando, model) assert obj in get_user_queryset(ext_auditor, model) - def test_global_list(self, obj_factory, model, ext_auditor, rando, get): + def test_global_list(self, obj_factory, model, ext_auditor, rando, get, setup_managed_roles): fixture_name = model._meta.verbose_name.replace(' ', '_') obj_factory(fixture_name) @@ -85,7 +85,7 @@ class TestExternalAuditorRoleAllModels: r = get(url, user=ext_auditor, expect=200) assert r.data['count'] == initial_ct + 1 - def test_detail_view(self, obj_factory, model, ext_auditor, rando, get): + def test_detail_view(self, obj_factory, model, ext_auditor, rando, get, setup_managed_roles): fixture_name = model._meta.verbose_name.replace(' ', '_') obj = obj_factory(fixture_name) diff --git a/awx/main/tests/functional/dab_resource_registry/test_ansible_id_display.py b/awx/main/tests/functional/dab_resource_registry/test_ansible_id_display.py index bf0d550262..51b6e1ffb6 100644 --- a/awx/main/tests/functional/dab_resource_registry/test_ansible_id_display.py +++ b/awx/main/tests/functional/dab_resource_registry/test_ansible_id_display.py @@ -19,7 +19,7 @@ def assert_has_resource(list_response, obj=None): @pytest.mark.django_db -def test_organization_ansible_id(organization, admin_user, get): +def test_organization_ansible_id(organization, admin_user, get, setup_managed_roles): url = reverse('api:organization_list') response = get(url=url, user=admin_user, expect=200) assert_has_resource(response, obj=organization) diff --git a/awx/main/tests/functional/rbac/test_rbac_api.py b/awx/main/tests/functional/rbac/test_rbac_api.py index 61e7425c4d..3207971676 100644 --- a/awx/main/tests/functional/rbac/test_rbac_api.py +++ b/awx/main/tests/functional/rbac/test_rbac_api.py @@ -393,7 +393,7 @@ def test_remove_team_from_role(post, team, admin, role): @pytest.mark.django_db -def test_ensure_rbac_fields_are_present(organization, get, admin): +def test_ensure_rbac_fields_are_present(organization, get, admin, setup_managed_roles): url = reverse('api:organization_detail', kwargs={'pk': organization.id}) response = get(url, admin) assert response.status_code == 200 @@ -412,7 +412,7 @@ def test_ensure_rbac_fields_are_present(organization, get, admin): @pytest.mark.django_db -def test_ensure_role_summary_is_present(organization, get, user): +def test_ensure_role_summary_is_present(organization, get, user, setup_managed_roles): url = reverse('api:organization_detail', kwargs={'pk': organization.id}) response = get(url, user('admin', True)) assert response.status_code == 200 diff --git a/awx/main/tests/functional/test_named_url.py b/awx/main/tests/functional/test_named_url.py index 5bf12653ac..9650fd7b60 100644 --- a/awx/main/tests/functional/test_named_url.py +++ b/awx/main/tests/functional/test_named_url.py @@ -38,7 +38,7 @@ def test_team(get, admin_user): @pytest.mark.django_db -def test_organization(get, admin_user): +def test_organization(get, admin_user, setup_managed_roles): test_org = Organization.objects.create(name='test_org') url = reverse('api:organization_detail', kwargs={'pk': test_org.pk}) response = get(url, user=admin_user, expect=200)