def test_create_service_by_id_adding_and_removing_letter_returns_service_without_letter( service_factory, ): service = service_factory.get("testing", email_from="testing") dao_remove_service_permission(service_id=service.id, permission=LETTER_TYPE) dao_add_service_permission(service_id=service.id, permission=LETTER_TYPE) service = dao_fetch_service_by_id(service.id) _assert_service_permissions( service.permissions, (SMS_TYPE, EMAIL_TYPE, INTERNATIONAL_SMS_TYPE, LETTER_TYPE)) dao_remove_service_permission(service_id=service.id, permission=LETTER_TYPE) service = dao_fetch_service_by_id(service.id) _assert_service_permissions( service.permissions, ( SMS_TYPE, EMAIL_TYPE, INTERNATIONAL_SMS_TYPE, ), )
def test_remove_permission_from_service_by_id_returns_service_with_correct_permissions( notify_db_session, permission_to_remove, permissions_remaining ): service = create_service(service_permissions=None) dao_remove_service_permission(service_id=service.id, permission=permission_to_remove) service = dao_fetch_service_by_id(service.id) _assert_service_permissions(service.permissions, permissions_remaining)
def test_remove_service_permission(service_without_permissions): create_service_permission(service_id=service_without_permissions.id, permission=EMAIL_TYPE) create_service_permission(service_id=service_without_permissions.id, permission=INBOUND_SMS_TYPE) dao_remove_service_permission(service_without_permissions.id, EMAIL_TYPE) permissions = dao_fetch_service_permissions(service_without_permissions.id) assert len(permissions) == 1 assert permissions[0].permission == INBOUND_SMS_TYPE assert permissions[0].service_id == service_without_permissions.id
def test_removing_all_permission_returns_service_with_no_permissions(notify_db_session): service = create_service() dao_remove_service_permission(service_id=service.id, permission=SMS_TYPE) dao_remove_service_permission(service_id=service.id, permission=EMAIL_TYPE) dao_remove_service_permission(service_id=service.id, permission=LETTER_TYPE) dao_remove_service_permission(service_id=service.id, permission=INTERNATIONAL_SMS_TYPE) service = dao_fetch_service_by_id(service.id) assert len(service.permissions) == 0