mirror of
https://github.com/GSA/notifications-api.git
synced 2026-02-02 09:15:19 -05:00
Refactor schema and improve tests
This commit is contained in:
@@ -186,18 +186,6 @@ class ServiceSchema(BaseSchema):
|
||||
def service_permissions(self, service):
|
||||
permissions = [p.permission for p in service.permissions]
|
||||
|
||||
def deprecate_convert_flags_to_permissions():
|
||||
def convert_flags(flag, permission):
|
||||
if flag and permission not in permissions:
|
||||
permissions.append(permission)
|
||||
elif flag is False and permission in permissions:
|
||||
permissions.remove(permission)
|
||||
|
||||
convert_flags(service.can_send_international_sms, INTERNATIONAL_SMS_TYPE)
|
||||
convert_flags(service.can_send_letters, LETTER_TYPE)
|
||||
|
||||
deprecate_convert_flags_to_permissions()
|
||||
|
||||
return permissions
|
||||
|
||||
class Meta:
|
||||
|
||||
@@ -519,7 +519,9 @@ def test_update_service_flags_will_remove_service_permissions(client, notify_db,
|
||||
|
||||
assert resp.status_code == 200
|
||||
assert result['data']['can_send_international_sms'] is False
|
||||
assert set(result['data']['permissions']) == set([SMS_TYPE, EMAIL_TYPE])
|
||||
|
||||
permissions = ServicePermission.query.filter_by(service_id=service.id).all()
|
||||
assert set([p.permission for p in permissions]) == set([SMS_TYPE, EMAIL_TYPE])
|
||||
|
||||
|
||||
def test_update_permissions_will_override_permission_flags(client, service_with_no_permissions):
|
||||
@@ -583,14 +585,10 @@ def test_add_service_permission_will_add_permission(client, service_with_no_perm
|
||||
headers=[('Content-Type', 'application/json'), auth_header]
|
||||
)
|
||||
|
||||
resp = client.get(
|
||||
'/service/{}'.format(service_with_no_permissions.id),
|
||||
headers=[auth_header]
|
||||
)
|
||||
result = json.loads(resp.get_data(as_text=True))
|
||||
permissions = ServicePermission.query.filter_by(service_id=service_with_no_permissions.id).all()
|
||||
|
||||
assert resp.status_code == 200
|
||||
assert result['data']['permissions'] == [permission_to_add]
|
||||
assert [p.permission for p in permissions] == [permission_to_add]
|
||||
|
||||
|
||||
def test_update_permissions_with_an_invalid_permission_will_raise_error(client, sample_service):
|
||||
|
||||
Reference in New Issue
Block a user