mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-01 15:46:07 -05:00
Update invited user tests to take folder_permissions into account
This commit is contained in:
@@ -45,6 +45,7 @@ def test_validate_invitation_token_returns_200_when_token_valid(
|
|||||||
assert json_resp['data']['service'] == str(sample_invited_user.service_id)
|
assert json_resp['data']['service'] == str(sample_invited_user.service_id)
|
||||||
assert json_resp['data']['status'] == sample_invited_user.status
|
assert json_resp['data']['status'] == sample_invited_user.status
|
||||||
assert json_resp['data']['permissions'] == sample_invited_user.permissions
|
assert json_resp['data']['permissions'] == sample_invited_user.permissions
|
||||||
|
assert json_resp['data']['folder_permissions'] == sample_invited_user.folder_permissions
|
||||||
if invitation_type == 'organisation':
|
if invitation_type == 'organisation':
|
||||||
assert json_resp['data'] == sample_invited_org_user.serialize()
|
assert json_resp['data'] == sample_invited_org_user.serialize()
|
||||||
|
|
||||||
|
|||||||
@@ -752,7 +752,8 @@ def sample_invited_user(notify_db,
|
|||||||
'service': service,
|
'service': service,
|
||||||
'email_address': to_email_address,
|
'email_address': to_email_address,
|
||||||
'from_user': from_user,
|
'from_user': from_user,
|
||||||
'permissions': 'send_messages,manage_service,manage_api_keys'
|
'permissions': 'send_messages,manage_service,manage_api_keys',
|
||||||
|
'folder_permissions': ['folder_1_id', 'folder_2_id'],
|
||||||
}
|
}
|
||||||
invited_user = InvitedUser(**data)
|
invited_user = InvitedUser(**data)
|
||||||
save_invited_user(invited_user)
|
save_invited_user(invited_user)
|
||||||
|
|||||||
@@ -26,7 +26,8 @@ def test_create_invited_user(notify_db, notify_db_session, sample_service):
|
|||||||
'service': sample_service,
|
'service': sample_service,
|
||||||
'email_address': email_address,
|
'email_address': email_address,
|
||||||
'from_user': invite_from,
|
'from_user': invite_from,
|
||||||
'permissions': 'send_messages,manage_service'
|
'permissions': 'send_messages,manage_service',
|
||||||
|
'folder_permissions': []
|
||||||
}
|
}
|
||||||
|
|
||||||
invited_user = InvitedUser(**data)
|
invited_user = InvitedUser(**data)
|
||||||
@@ -39,6 +40,29 @@ def test_create_invited_user(notify_db, notify_db_session, sample_service):
|
|||||||
assert len(permissions) == 2
|
assert len(permissions) == 2
|
||||||
assert 'send_messages' in permissions
|
assert 'send_messages' in permissions
|
||||||
assert 'manage_service' in permissions
|
assert 'manage_service' in permissions
|
||||||
|
assert invited_user.folder_permissions == []
|
||||||
|
|
||||||
|
|
||||||
|
def test_create_invited_user_sets_default_folder_permissions_of_empty_list(
|
||||||
|
notify_db,
|
||||||
|
notify_db_session,
|
||||||
|
sample_service,
|
||||||
|
):
|
||||||
|
assert InvitedUser.query.count() == 0
|
||||||
|
invite_from = sample_service.users[0]
|
||||||
|
|
||||||
|
data = {
|
||||||
|
'service': sample_service,
|
||||||
|
'email_address': 'invited_user@service.gov.uk',
|
||||||
|
'from_user': invite_from,
|
||||||
|
'permissions': 'send_messages,manage_service',
|
||||||
|
}
|
||||||
|
|
||||||
|
invited_user = InvitedUser(**data)
|
||||||
|
save_invited_user(invited_user)
|
||||||
|
|
||||||
|
assert InvitedUser.query.count() == 1
|
||||||
|
assert invited_user.folder_permissions == []
|
||||||
|
|
||||||
|
|
||||||
def test_get_invited_user_by_service_and_id(notify_db, notify_db_session, sample_invited_user):
|
def test_get_invited_user_by_service_and_id(notify_db, notify_db_session, sample_invited_user):
|
||||||
@@ -124,7 +148,8 @@ def make_invitation(user, service, age=timedelta(hours=0), email_address="test@t
|
|||||||
service=service,
|
service=service,
|
||||||
status='pending',
|
status='pending',
|
||||||
created_at=datetime.utcnow() - age,
|
created_at=datetime.utcnow() - age,
|
||||||
permissions='manage_settings'
|
permissions='manage_settings',
|
||||||
|
folder_permissions=[str(uuid.uuid4())]
|
||||||
)
|
)
|
||||||
db.session.add(verify_code)
|
db.session.add(verify_code)
|
||||||
db.session.commit()
|
db.session.commit()
|
||||||
|
|||||||
@@ -739,7 +739,8 @@ def create_invited_user(service=None,
|
|||||||
'service': service,
|
'service': service,
|
||||||
'email_address': to_email_address,
|
'email_address': to_email_address,
|
||||||
'from_user': from_user,
|
'from_user': from_user,
|
||||||
'permissions': 'send_messages,manage_service,manage_api_keys'
|
'permissions': 'send_messages,manage_service,manage_api_keys',
|
||||||
|
'folder_permissions': [str(uuid.uuid4()), str(uuid.uuid4())]
|
||||||
}
|
}
|
||||||
invited_user = InvitedUser(**data)
|
invited_user = InvitedUser(**data)
|
||||||
save_invited_user(invited_user)
|
save_invited_user(invited_user)
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ def test_create_invited_user(
|
|||||||
from_user=str(invite_from.id),
|
from_user=str(invite_from.id),
|
||||||
permissions='send_messages,manage_service,manage_api_keys',
|
permissions='send_messages,manage_service,manage_api_keys',
|
||||||
auth_type=EMAIL_AUTH_TYPE,
|
auth_type=EMAIL_AUTH_TYPE,
|
||||||
|
folder_permissions=['folder_1', 'folder_2', 'folder_3'],
|
||||||
**extra_args
|
**extra_args
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -49,6 +50,7 @@ def test_create_invited_user(
|
|||||||
assert json_resp['data']['permissions'] == 'send_messages,manage_service,manage_api_keys'
|
assert json_resp['data']['permissions'] == 'send_messages,manage_service,manage_api_keys'
|
||||||
assert json_resp['data']['auth_type'] == EMAIL_AUTH_TYPE
|
assert json_resp['data']['auth_type'] == EMAIL_AUTH_TYPE
|
||||||
assert json_resp['data']['id']
|
assert json_resp['data']['id']
|
||||||
|
assert json_resp['data']['folder_permissions'] == ['folder_1', 'folder_2', 'folder_3']
|
||||||
|
|
||||||
notification = Notification.query.first()
|
notification = Notification.query.first()
|
||||||
|
|
||||||
@@ -73,6 +75,7 @@ def test_create_invited_user_without_auth_type(admin_request, sample_service, mo
|
|||||||
'email_address': email_address,
|
'email_address': email_address,
|
||||||
'from_user': str(invite_from.id),
|
'from_user': str(invite_from.id),
|
||||||
'permissions': 'send_messages,manage_service,manage_api_keys',
|
'permissions': 'send_messages,manage_service,manage_api_keys',
|
||||||
|
'folder_permissions': []
|
||||||
}
|
}
|
||||||
|
|
||||||
json_resp = admin_request.post(
|
json_resp = admin_request.post(
|
||||||
@@ -85,7 +88,7 @@ def test_create_invited_user_without_auth_type(admin_request, sample_service, mo
|
|||||||
assert json_resp['data']['auth_type'] == SMS_AUTH_TYPE
|
assert json_resp['data']['auth_type'] == SMS_AUTH_TYPE
|
||||||
|
|
||||||
|
|
||||||
def test_create_invited_user_invalid_email(client, sample_service, mocker):
|
def test_create_invited_user_invalid_email(client, sample_service, mocker, fake_uuid):
|
||||||
mocked = mocker.patch('app.celery.provider_tasks.deliver_email.apply_async')
|
mocked = mocker.patch('app.celery.provider_tasks.deliver_email.apply_async')
|
||||||
email_address = 'notanemail'
|
email_address = 'notanemail'
|
||||||
invite_from = sample_service.users[0]
|
invite_from = sample_service.users[0]
|
||||||
@@ -94,7 +97,8 @@ def test_create_invited_user_invalid_email(client, sample_service, mocker):
|
|||||||
'service': str(sample_service.id),
|
'service': str(sample_service.id),
|
||||||
'email_address': email_address,
|
'email_address': email_address,
|
||||||
'from_user': str(invite_from.id),
|
'from_user': str(invite_from.id),
|
||||||
'permissions': 'send_messages,manage_service,manage_api_keys'
|
'permissions': 'send_messages,manage_service,manage_api_keys',
|
||||||
|
'folder_permissions': [fake_uuid, fake_uuid]
|
||||||
}
|
}
|
||||||
|
|
||||||
data = json.dumps(data)
|
data = json.dumps(data)
|
||||||
|
|||||||
Reference in New Issue
Block a user