def test_delete_service_and_associated_objects(notify_db_session): user = create_user() organisation = create_organisation() service = create_service(user=user, service_permissions=None, organisation=organisation) create_user_code(user=user, code='somecode', code_type='email') create_user_code(user=user, code='somecode', code_type='sms') template = create_template(service=service) api_key = create_api_key(service=service) create_notification(template=template, api_key=api_key) create_invited_user(service=service) user.organisations = [organisation] assert ServicePermission.query.count() == len(( SMS_TYPE, EMAIL_TYPE, LETTER_TYPE, INTERNATIONAL_SMS_TYPE, UPLOAD_LETTERS, )) delete_service_and_all_associated_db_objects(service) assert VerifyCode.query.count() == 0 assert ApiKey.query.count() == 0 assert ApiKey.get_history_model().query.count() == 0 assert Template.query.count() == 0 assert TemplateHistory.query.count() == 0 assert Job.query.count() == 0 assert Notification.query.count() == 0 assert Permission.query.count() == 0 assert User.query.count() == 0 assert InvitedUser.query.count() == 0 assert Service.query.count() == 0 assert Service.get_history_model().query.count() == 0 assert ServicePermission.query.count() == 0 # the organisation hasn't been deleted assert Organisation.query.count() == 1
def test_delete_service_and_associated_objects(notify_db_session): user = create_user() service = create_service(user=user, service_permissions=None) create_user_code(user=user, code="somecode", code_type="email") create_user_code(user=user, code="somecode", code_type="sms") template = create_template(service=service) api_key = create_api_key(service=service) create_notification(template=template, api_key=api_key) create_invited_user(service=service) assert ServicePermission.query.count() == len(( SMS_TYPE, EMAIL_TYPE, INTERNATIONAL_SMS_TYPE, )) delete_service_and_all_associated_db_objects(service) assert VerifyCode.query.count() == 0 assert ApiKey.query.count() == 0 assert ApiKey.get_history_model().query.count() == 0 assert Template.query.count() == 0 assert TemplateHistory.query.count() == 0 assert Job.query.count() == 0 assert Notification.query.count() == 0 assert Permission.query.count() == 0 assert User.query.count() == 0 assert InvitedUser.query.count() == 0 assert Service.query.count() == 0 assert Service.get_history_model().query.count() == 0 assert ServicePermission.query.count() == 0
def test_get_all_invited_users_by_service(client, notify_db, notify_db_session, sample_service): invites = [] for i in range(0, 5): email = 'invited_user_{}@service.gov.uk'.format(i) invited_user = create_invited_user(sample_service, to_email_address=email) invites.append(invited_user) url = '/service/{}/invite'.format(sample_service.id) auth_header = create_authorization_header() response = client.get(url, headers=[('Content-Type', 'application/json'), auth_header]) assert response.status_code == 200 json_resp = json.loads(response.get_data(as_text=True)) invite_from = sample_service.users[0] for invite in json_resp['data']: assert invite['service'] == str(sample_service.id) assert invite['from_user'] == str(invite_from.id) assert invite['auth_type'] == SMS_AUTH_TYPE assert invite['id']
def test_get_invited_users_for_service(notify_db, notify_db_session, sample_service): invites = [] for i in range(0, 5): email = 'invited_user_{}@service.gov.uk'.format(i) invited_user = create_invited_user(sample_service, to_email_address=email) invites.append(invited_user) all_from_db = get_invited_users_for_service(sample_service.id) assert len(all_from_db) == 5 for invite in invites: assert invite in all_from_db