separate definitions into separate files to allow reuse

see https://github.com/Julian/jsonschema/issues/98

took boring generic things (eg uuid) into definitions.json, and also
separated email and sms notification objects into respective files
This commit is contained in:
Leo Hemsted
2016-08-30 18:45:54 +01:00
parent aebaea1072
commit 1b7b4a2ccb
6 changed files with 243 additions and 243 deletions

View File

@@ -5,26 +5,25 @@ import jsonschema
from tests import create_authorization_header
def validate(json_string, schema_filename):
resolver = jsonschema.RefResolver('file://' + os.path.dirname(__file__) + '/', None)
with open(os.path.join(os.path.dirname(__file__), schema_filename)) as schema:
jsonschema.validate(
json.loads(json_string),
json.load(schema),
format_checker=jsonschema.FormatChecker(),
resolver=resolver
)
def test_get_sms_contract(client, sample_notification):
auth_header = create_authorization_header(service_id=sample_notification.service_id)
response = client.get('/notifications/{}'.format(sample_notification.id), headers=[auth_header])
with open(os.path.join(os.path.dirname(__file__), './GET_notification_return_sms.json')) as schema:
jsonschema.validate(
json.loads(response.get_data(as_text=True)),
json.load(schema),
format_checker=jsonschema.FormatChecker()
)
validate(response.get_data(as_text=True), './GET_notification_return_sms.json')
def test_get_email_contract(client, sample_email_notification):
auth_header = create_authorization_header(service_id=sample_email_notification.service_id)
response = client.get('/notifications/{}'.format(sample_email_notification.id), headers=[auth_header])
with open(os.path.join(os.path.dirname(__file__), './GET_notification_return_email.json')) as schema:
jsonschema.validate(
json.loads(response.get_data(as_text=True)),
json.load(schema),
format_checker=jsonschema.FormatChecker()
)
validate(response.get_data(as_text=True), './GET_notification_return_email.json')