mirror of
https://github.com/ansible/awx.git
synced 2026-01-14 03:10:42 -03:30
fix system auditor getter logic
This commit is contained in:
parent
8e76da89f2
commit
14746eebe3
@ -76,7 +76,8 @@ User.add_to_class('auditor_of_organizations', user_get_auditor_of_organizations)
|
||||
@property
|
||||
def user_is_system_auditor(user):
|
||||
if not hasattr(user, '_is_system_auditor'):
|
||||
user._is_system_auditor = Role.objects.filter(role_field='system_auditor', id=user.id).exists()
|
||||
user._is_system_auditor = user.roles.filter(
|
||||
singleton_name='system_auditor', role_field='system_auditor').exists()
|
||||
return user._is_system_auditor
|
||||
|
||||
|
||||
|
||||
@ -41,7 +41,7 @@ from awx.main.models.organization import (
|
||||
Permission,
|
||||
Team,
|
||||
)
|
||||
|
||||
from awx.main.models.rbac import Role
|
||||
from awx.main.models.notifications import (
|
||||
NotificationTemplate,
|
||||
Notification
|
||||
@ -262,6 +262,13 @@ def admin(user):
|
||||
return user('admin', True)
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def system_auditor(user):
|
||||
u = user(False)
|
||||
Role.singleton('system_auditor').members.add(u)
|
||||
return u
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def alice(user):
|
||||
return user('alice', False)
|
||||
|
||||
@ -9,7 +9,7 @@ from awx.main.models import Role, User, Organization, Inventory
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
class TestSysAuditor(TransactionTestCase):
|
||||
class TestSysAuditorTransactional(TransactionTestCase):
|
||||
def rando(self):
|
||||
return User.objects.create(username='rando', password='rando', email='rando@com.com')
|
||||
|
||||
@ -41,6 +41,10 @@ class TestSysAuditor(TransactionTestCase):
|
||||
assert not rando.is_system_auditor
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_system_auditor_is_system_auditor(system_auditor):
|
||||
assert system_auditor.is_system_auditor
|
||||
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_user_admin(user_project, project, user):
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user