From 5740893607d76ed3afb5036ae4ee89460fe3cd66 Mon Sep 17 00:00:00 2001 From: Athanasius Date: Mon, 8 Nov 2021 13:30:41 +0000 Subject: [PATCH] Script to check that schema files are valid JSON --- scripts/check-schemas-load.py | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 scripts/check-schemas-load.py diff --git a/scripts/check-schemas-load.py b/scripts/check-schemas-load.py new file mode 100644 index 0000000..2d95559 --- /dev/null +++ b/scripts/check-schemas-load.py @@ -0,0 +1,26 @@ +"""Verify that all the current schema files actually load.""" + +import pathlib +import sys + +import simplejson + +# From parent of where this script is +script_path = pathlib.Path(sys.argv[0]) +root_dir = script_path.parent.parent + +# Take every file in the schemas directory +schemas_dir = root_dir / 'schemas' +failures = 0 +for schema_file in schemas_dir.glob('*-v*.*.json'): + # print(f'Schema: {schema_file}') + with open(schema_file, 'r') as sf: + try: + json = simplejson.load(sf) + + except simplejson.JSONDecodeError as e: + print(f'Failed to load {schema_file}:\n{e!r}') + failures += 1 + +if failures > 0: + exit(-1)