mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-08-24 00:07:02 -04:00
Move tests to match where the code is located
These tests are unrelated to the others in test_permissions.py. We should try and structure our tests the same as the code under test so that it's clear where new tests should go.
This commit is contained in:
@@ -5,10 +5,6 @@ import re
|
|||||||
import pytest
|
import pytest
|
||||||
from flask import current_app
|
from flask import current_app
|
||||||
|
|
||||||
from app.utils.user_permissions import (
|
|
||||||
translate_permissions_from_admin_roles_to_db,
|
|
||||||
translate_permissions_from_db_to_admin_roles,
|
|
||||||
)
|
|
||||||
from tests import service_json
|
from tests import service_json
|
||||||
from tests.conftest import (
|
from tests.conftest import (
|
||||||
ORGANISATION_ID,
|
ORGANISATION_ID,
|
||||||
@@ -18,42 +14,6 @@ from tests.conftest import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.parametrize('db_roles,admin_roles', [
|
|
||||||
(
|
|
||||||
['approve_broadcasts', 'reject_broadcasts', 'cancel_broadcasts'],
|
|
||||||
{'approve_broadcasts'},
|
|
||||||
),
|
|
||||||
(
|
|
||||||
['manage_templates', 'create_broadcasts', 'reject_broadcasts', 'cancel_broadcasts'],
|
|
||||||
{'create_broadcasts', 'manage_templates'},
|
|
||||||
),
|
|
||||||
(
|
|
||||||
['manage_templates'],
|
|
||||||
{'manage_templates'},
|
|
||||||
),
|
|
||||||
(
|
|
||||||
['create_broadcasts'],
|
|
||||||
set(),
|
|
||||||
),
|
|
||||||
(
|
|
||||||
['send_texts', 'send_emails', 'send_letters', 'manage_templates', 'some_unknown_permission'],
|
|
||||||
{'send_messages', 'manage_templates', 'some_unknown_permission'},
|
|
||||||
),
|
|
||||||
])
|
|
||||||
def test_translate_permissions_from_db_to_admin_roles(
|
|
||||||
db_roles,
|
|
||||||
admin_roles,
|
|
||||||
):
|
|
||||||
roles = translate_permissions_from_db_to_admin_roles(db_roles)
|
|
||||||
assert roles == admin_roles
|
|
||||||
|
|
||||||
|
|
||||||
def test_translate_permissions_from_admin_roles_to_db():
|
|
||||||
roles = ['send_messages', 'manage_templates', 'some_unknown_permission']
|
|
||||||
db_perms = translate_permissions_from_admin_roles_to_db(roles)
|
|
||||||
assert db_perms == {'send_texts', 'send_emails', 'send_letters', 'manage_templates', 'some_unknown_permission'}
|
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
'user_services, user_organisations, expected_status, organisation_checked',
|
'user_services, user_organisations, expected_status, organisation_checked',
|
||||||
(
|
(
|
||||||
|
|||||||
42
tests/app/utils/test_user_permissions.py
Normal file
42
tests/app/utils/test_user_permissions.py
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
import pytest
|
||||||
|
|
||||||
|
from app.utils.user_permissions import (
|
||||||
|
translate_permissions_from_admin_roles_to_db,
|
||||||
|
translate_permissions_from_db_to_admin_roles,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.parametrize('db_roles,admin_roles', [
|
||||||
|
(
|
||||||
|
['approve_broadcasts', 'reject_broadcasts', 'cancel_broadcasts'],
|
||||||
|
{'approve_broadcasts'},
|
||||||
|
),
|
||||||
|
(
|
||||||
|
['manage_templates', 'create_broadcasts', 'reject_broadcasts', 'cancel_broadcasts'],
|
||||||
|
{'create_broadcasts', 'manage_templates'},
|
||||||
|
),
|
||||||
|
(
|
||||||
|
['manage_templates'],
|
||||||
|
{'manage_templates'},
|
||||||
|
),
|
||||||
|
(
|
||||||
|
['create_broadcasts'],
|
||||||
|
set(),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
['send_texts', 'send_emails', 'send_letters', 'manage_templates', 'some_unknown_permission'],
|
||||||
|
{'send_messages', 'manage_templates', 'some_unknown_permission'},
|
||||||
|
),
|
||||||
|
])
|
||||||
|
def test_translate_permissions_from_db_to_admin_roles(
|
||||||
|
db_roles,
|
||||||
|
admin_roles,
|
||||||
|
):
|
||||||
|
roles = translate_permissions_from_db_to_admin_roles(db_roles)
|
||||||
|
assert roles == admin_roles
|
||||||
|
|
||||||
|
|
||||||
|
def test_translate_permissions_from_admin_roles_to_db():
|
||||||
|
roles = ['send_messages', 'manage_templates', 'some_unknown_permission']
|
||||||
|
db_perms = translate_permissions_from_admin_roles_to_db(roles)
|
||||||
|
assert db_perms == {'send_texts', 'send_emails', 'send_letters', 'manage_templates', 'some_unknown_permission'}
|
||||||
Reference in New Issue
Block a user