Removed the oneOf validation in the get_notification_response schema.

This commit is contained in:
Rebecca Law
2017-01-04 11:00:47 +00:00
parent c8b11ffc8a
commit 7f9111fd90
2 changed files with 26 additions and 26 deletions

View File

@@ -20,32 +20,6 @@ get_notification_response = {
"description": "GET notification response schema",
"type": "object",
"title": "response v2/notification",
"oneOf": [
{"properties": {
"email_address": {"type": "string", "format": "email_address"},
"type": {"enum": ["email"]},
"phone_number": {"type": "null"},
"line_1": {"type": "null"},
"postcode": {"type": "null"}
}},
{"properties": {
"phone_number": {"type": "string", "format": "phone_number"},
"type": {"enum": ["sms"]},
"email_address": {"type": "null"},
"line_1": {"type": "null"},
"postcode": {"type": "null"}
}},
{"properties": {
"line_1": {"type": "string", "minLength": 1},
"postcode": {"type": "string", "minLength": 1},
"type": {"enum": ["letter"]},
"email_address": {"type": "null"},
"phone_number": {"type": "null"}
}}
],
"properties": {
"id": uuid,
"reference": {"type": ["string", "null"]},

View File

@@ -6,6 +6,7 @@ from jsonschema import ValidationError
from app.v2.notifications.notification_schemas import (
get_notifications_request,
get_notification_response,
post_sms_request as post_sms_request_schema,
post_sms_response as post_sms_response_schema,
post_email_request as post_email_request_schema,
@@ -309,3 +310,28 @@ def test_post_sms_response_schema_invalid_template_uri_raises_validation_error(r
assert error['status_code'] == 400
assert error['errors'] == [{'error': 'ValidationError',
'message': "template invalid-uri is not a uri"}]
def test_get_notifications_response_with_email_and_phone_number():
response = {"id": str(uuid.uuid4()),
"reference": "something",
"email_address": None,
"phone_number": "+447115411111",
"line_1": None,
"line_2": None,
"line_3": None,
"line_4": None,
"line_5": None,
"line_6": None,
"postcode": None,
"type": "email",
"status": "delivered",
"template": {"id": str(uuid.uuid4()), "version": 1, "uri": "http://template/id"},
"body": "some body",
"subject": "some subject",
"created_at": "2016-01-01",
"sent_at": "2016-01-01",
"completed_at": "2016-01-01"
}
assert validate(response, get_notification_response) == response