Update invited user tests to take folder_permissions into account

This commit is contained in:
Katie Smith
2019-03-11 14:33:51 +00:00
parent 3e70407981
commit 31ddd36e2c
5 changed files with 38 additions and 6 deletions

View File

@@ -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']['status'] == sample_invited_user.status
assert json_resp['data']['permissions'] == sample_invited_user.permissions
assert json_resp['data']['folder_permissions'] == sample_invited_user.folder_permissions
if invitation_type == 'organisation':
assert json_resp['data'] == sample_invited_org_user.serialize()

View File

@@ -752,7 +752,8 @@ def sample_invited_user(notify_db,
'service': service,
'email_address': to_email_address,
'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)
save_invited_user(invited_user)

View File

@@ -26,7 +26,8 @@ def test_create_invited_user(notify_db, notify_db_session, sample_service):
'service': sample_service,
'email_address': email_address,
'from_user': invite_from,
'permissions': 'send_messages,manage_service'
'permissions': 'send_messages,manage_service',
'folder_permissions': []
}
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 'send_messages' 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):
@@ -124,7 +148,8 @@ def make_invitation(user, service, age=timedelta(hours=0), email_address="test@t
service=service,
status='pending',
created_at=datetime.utcnow() - age,
permissions='manage_settings'
permissions='manage_settings',
folder_permissions=[str(uuid.uuid4())]
)
db.session.add(verify_code)
db.session.commit()

View File

@@ -739,7 +739,8 @@ def create_invited_user(service=None,
'service': service,
'email_address': to_email_address,
'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)
save_invited_user(invited_user)

View File

@@ -33,6 +33,7 @@ def test_create_invited_user(
from_user=str(invite_from.id),
permissions='send_messages,manage_service,manage_api_keys',
auth_type=EMAIL_AUTH_TYPE,
folder_permissions=['folder_1', 'folder_2', 'folder_3'],
**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']['auth_type'] == EMAIL_AUTH_TYPE
assert json_resp['data']['id']
assert json_resp['data']['folder_permissions'] == ['folder_1', 'folder_2', 'folder_3']
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,
'from_user': str(invite_from.id),
'permissions': 'send_messages,manage_service,manage_api_keys',
'folder_permissions': []
}
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
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')
email_address = 'notanemail'
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),
'email_address': email_address,
'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)