37 lines
1.8 KiB
Python
37 lines
1.8 KiB
Python
import pytest
|
|
|
|
general_permissions = {}
|
|
|
|
ncircc_permissions = {'can_view_company_card', 'can_edit_company_card', 'can_view_message_list',
|
|
'can_view_message_card', 'can_edit_message_card'}
|
|
|
|
DEFAULT_GROUPS_TEST = (
|
|
|
|
('Оператор', 10,
|
|
{'can_view_incidents_list', 'can_view_incidents', 'can_add_widgets', 'can_view_storage', 'can_view_network',
|
|
'can_edit_message_card', 'can_view_message_card', 'can_view_message_list', 'can_edit_company_card',
|
|
'can_view_company_card'}),
|
|
('Офицер безопасности 1 уровня', 15,
|
|
{'can_view_incidents_list', 'can_view_incidents', 'can_work_with_incidents', 'can_view_events',
|
|
'can_view_asset', 'can_view_events_list', 'can_view_assets_list', 'can_add_widgets', 'can_view_storage',
|
|
'can_view_network', 'can_edit_message_card', 'can_view_message_card', 'can_view_message_list', 'can_edit_company_card',
|
|
'can_view_company_card'})
|
|
|
|
)
|
|
|
|
|
|
@pytest.mark.skipif(reason="Skipped before the rights model is recycled")
|
|
@pytest.mark.unit
|
|
@pytest.mark.django_db
|
|
@pytest.mark.parametrize('group_name, permissions_count, expected_permissions', DEFAULT_GROUPS_TEST)
|
|
def test_migrations_0006_add_default_groups(group_name: str, permissions_count: int, expected_permissions: set,
|
|
migrator):
|
|
migrator.apply_initial_migration(('perms', '0005_auto_20210124_1727'))
|
|
new_state = migrator.apply_tested_migration(('perms', '0006_add_default_groups'))
|
|
Group = new_state.apps.get_model('auth', 'Group')
|
|
|
|
groups = Group.objects.filter(name=group_name)
|
|
assert len(groups) == 1
|
|
permissions = set(groups[0].permissions.values_list('codename', flat=True))
|
|
assert len(permissions) == permissions_count
|
|
assert permissions == expected_permissions
|