UNPKG

node-blaze

Version:

Bindings to blaze, high-performance C++ JSON Schema validator

410 lines (409 loc) 8.41 kB
{ "$schema": "../test-suite.schema.json", "description": "The applicator vocabulary", "suite": [ { "description": "`properties`, `patternProperties`, and `additionalProperties`", "compatibility": "3", "schema": { "properties": { "foo": { "title": "Foo" } }, "patternProperties": { "^a": { "title": "Bar" } }, "additionalProperties": { "title": "Baz" } }, "tests": [ { "instance": {}, "assertions": [ { "location": "/foo", "keyword": "title", "expected": {} }, { "location": "/apple", "keyword": "title", "expected": {} }, { "location": "/bar", "keyword": "title", "expected": {} } ] }, { "instance": { "foo": {}, "apple": {}, "baz": {} }, "assertions": [ { "location": "/foo", "keyword": "title", "expected": { "#/properties/foo": "Foo" } }, { "location": "/apple", "keyword": "title", "expected": { "#/patternProperties/%5Ea": "Bar" } }, { "location": "/baz", "keyword": "title", "expected": { "#/additionalProperties": "Baz" } } ] } ] }, { "description": "`propertyNames` doesn't annotate property values", "compatibility": "6", "schema": { "propertyNames": { "const": "foo", "title": "Foo" } }, "tests": [ { "instance": { "foo": 42 }, "assertions": [ { "location": "/foo", "keyword": "title", "expected": {} } ] } ] }, { "description": "`prefixItems` and `items`", "compatibility": "2020", "schema": { "prefixItems": [ { "title": "Foo" } ], "items": { "title": "Bar" } }, "tests": [ { "instance": [ "foo", "bar" ], "assertions": [ { "location": "/0", "keyword": "title", "expected": { "#/prefixItems/0": "Foo" } }, { "location": "/1", "keyword": "title", "expected": { "#/items": "Bar" } }, { "location": "/2", "keyword": "title", "expected": {} } ] } ] }, { "description": "`contains`", "compatibility": "6", "schema": { "contains": { "type": "number", "title": "Foo" } }, "tests": [ { "instance": [ "foo", 42, true ], "assertions": [ { "location": "/0", "keyword": "title", "expected": {} }, { "location": "/1", "keyword": "title", "expected": { "#/contains": "Foo" } }, { "location": "/2", "keyword": "title", "expected": {} }, { "location": "/3", "keyword": "title", "expected": {} } ] } ] }, { "description": "`allOf`", "compatibility": "4", "schema": { "allOf": [ { "title": "Foo" }, { "title": "Bar" } ] }, "tests": [ { "instance": "foo", "assertions": [ { "location": "", "keyword": "title", "expected": { "#/allOf/1": "Bar", "#/allOf/0": "Foo" } } ] } ] }, { "description": "`anyOf`", "compatibility": "4", "schema": { "anyOf": [ { "type": "integer", "title": "Foo" }, { "type": "number", "title": "Bar" } ] }, "tests": [ { "instance": 42, "assertions": [ { "location": "", "keyword": "title", "expected": { "#/anyOf/1": "Bar", "#/anyOf/0": "Foo" } } ] }, { "instance": 4.2, "assertions": [ { "location": "", "keyword": "title", "expected": { "#/anyOf/1": "Bar" } } ] } ] }, { "description": "`oneOf`", "compatibility": "4", "schema": { "oneOf": [ { "type": "string", "title": "Foo" }, { "type": "number", "title": "Bar" } ] }, "tests": [ { "instance": "foo", "assertions": [ { "location": "", "keyword": "title", "expected": { "#/oneOf/0": "Foo" } } ] }, { "instance": 42, "assertions": [ { "location": "", "keyword": "title", "expected": { "#/oneOf/1": "Bar" } } ] } ] }, { "description": "`not`", "compatibility": "4", "schema": { "title": "Foo", "not": { "not": { "title": "Bar" } } }, "tests": [ { "instance": {}, "assertions": [ { "location": "", "keyword": "title", "expected": { "#": "Foo" } } ] } ] }, { "description": "`dependentSchemas`", "compatibility": "2019", "schema": { "dependentSchemas": { "foo": { "title": "Foo" } } }, "tests": [ { "instance": { "foo": 42 }, "assertions": [ { "location": "", "keyword": "title", "expected": { "#/dependentSchemas/foo": "Foo" } } ] }, { "instance": { "foo": 42 }, "assertions": [ { "location": "/foo", "keyword": "title", "expected": {} } ] } ] }, { "description": "`if`, `then`, and `else`", "compatibility": "7", "schema": { "if": { "title": "If", "type": "string" }, "then": { "title": "Then" }, "else": { "title": "Else" } }, "tests": [ { "instance": "foo", "assertions": [ { "location": "", "keyword": "title", "expected": { "#/then": "Then", "#/if": "If" } } ] }, { "instance": 42, "assertions": [ { "location": "", "keyword": "title", "expected": { "#/else": "Else" } } ] } ] } ] }