_SchemaValidator.validate(): use "element" prefix for array elements
authorPhilippe Proulx <eeppeliteloop@gmail.com>
Thu, 28 May 2020 18:16:47 +0000 (14:16 -0400)
committerPhilippe Proulx <eeppeliteloop@gmail.com>
Fri, 29 May 2020 19:23:10 +0000 (15:23 -0400)
Otherwise the context's object name would be:

    `2` property

instead of

    Element 2

for example.

Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
barectf/config_parse.py

index 4c91533df3005288e4e6f1a5ef5b0e9425fbb877..dc1ae955e2dce39adafb7cc214db68919dba7430 100644 (file)
@@ -407,7 +407,15 @@ class _SchemaValidator:
         except jsonschema.ValidationError as exc:
             # convert to barectf `ConfigParseError` exception
             contexts = ['Configuration object']
-            contexts += ['`{}` property'.format(p) for p in exc.absolute_path]
+
+            for elem in exc.absolute_path:
+                if type(elem) is int:
+                    ctx = 'Element {}'.format(elem)
+                else:
+                    ctx = '`{}` property'.format(elem)
+
+                contexts.append(ctx)
+
             schema_ctx = ''
 
             if len(exc.context) > 0:
This page took 0.026778 seconds and 4 git commands to generate.