From e6d47ef3c7b1e70b882186391eb7988f62f4a980 Mon Sep 17 00:00:00 2001 From: Karen Etheridge Date: Tue, 2 Jun 2020 20:02:16 -0700 Subject: [PATCH] comprehensive test of keyword independence Keywords that are only in effect with instance data of one type should never interfere with keywords that require a different instance type. In particular, implementations should not attempt to infer the type of the instance data based on the keywords used by the schema. --- tests/draft2019-09/keyword-independence.json | 5807 ++++++++++++++++++ tests/draft4/keyword-independence.json | 4270 +++++++++++++ tests/draft6/keyword-independence.json | 5294 ++++++++++++++++ tests/draft7/keyword-independence.json | 5294 ++++++++++++++++ 4 files changed, 20665 insertions(+) create mode 100644 tests/draft2019-09/keyword-independence.json create mode 100644 tests/draft4/keyword-independence.json create mode 100644 tests/draft6/keyword-independence.json create mode 100644 tests/draft7/keyword-independence.json diff --git a/tests/draft2019-09/keyword-independence.json b/tests/draft2019-09/keyword-independence.json new file mode 100644 index 00000000..12dc1d95 --- /dev/null +++ b/tests/draft2019-09/keyword-independence.json @@ -0,0 +1,5807 @@ +[ + { + "description" : "contains + exclusiveMaximum", + "schema" : { + "contains" : true, + "exclusiveMaximum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + exclusiveMinimum", + "schema" : { + "contains" : true, + "exclusiveMinimum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + maximum", + "schema" : { + "contains" : true, + "maximum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + minimum", + "schema" : { + "contains" : true, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + multipleOf", + "schema" : { + "contains" : true, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "items + exclusiveMaximum", + "schema" : { + "exclusiveMaximum" : 2, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "items + exclusiveMinimum", + "schema" : { + "exclusiveMinimum" : 2, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "items + maximum", + "schema" : { + "items" : false, + "maximum" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "items + minimum", + "schema" : { + "items" : false, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "items + multipleOf", + "schema" : { + "items" : false, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + exclusiveMaximum", + "schema" : { + "exclusiveMaximum" : 2, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + exclusiveMinimum", + "schema" : { + "exclusiveMinimum" : 2, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + maximum", + "schema" : { + "maxItems" : 1, + "maximum" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + minimum", + "schema" : { + "maxItems" : 1, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + multipleOf", + "schema" : { + "maxItems" : 1, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + exclusiveMaximum", + "schema" : { + "exclusiveMaximum" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + exclusiveMinimum", + "schema" : { + "exclusiveMinimum" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + maximum", + "schema" : { + "maximum" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + minimum", + "schema" : { + "minItems" : 2, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + multipleOf", + "schema" : { + "minItems" : 2, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + exclusiveMaximum", + "schema" : { + "exclusiveMaximum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + exclusiveMinimum", + "schema" : { + "exclusiveMinimum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + maximum", + "schema" : { + "maximum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + minimum", + "schema" : { + "minimum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + multipleOf", + "schema" : { + "multipleOf" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "contains + additionalProperties", + "schema" : { + "additionalProperties" : false, + "contains" : true + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + dependentRequired", + "schema" : { + "contains" : true, + "dependentRequired" : { + "x" : [ + "y" + ] + } + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentRequired invalid", + "valid" : false + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, dependentRequired valid", + "valid" : true + } + ] + }, + { + "description" : "contains + dependentSchemas", + "schema" : { + "contains" : true, + "dependentSchemas" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentSchemas invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependentSchemas valid", + "valid" : true + } + ] + }, + { + "description" : "contains + maxProperties", + "schema" : { + "contains" : true, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + minProperties", + "schema" : { + "contains" : true, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + patternProperties", + "schema" : { + "contains" : true, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + properties", + "schema" : { + "contains" : true, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + propertyNames", + "schema" : { + "contains" : true, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "contains + required", + "schema" : { + "contains" : true, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "items + additionalProperties", + "schema" : { + "additionalProperties" : false, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + dependentRequired", + "schema" : { + "dependentRequired" : { + "x" : [ + "y" + ] + }, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentRequired invalid", + "valid" : false + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, dependentRequired valid", + "valid" : true + } + ] + }, + { + "description" : "items + dependentSchemas", + "schema" : { + "dependentSchemas" : { + "x" : false + }, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentSchemas invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependentSchemas valid", + "valid" : true + } + ] + }, + { + "description" : "items + maxProperties", + "schema" : { + "items" : false, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + minProperties", + "schema" : { + "items" : false, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + patternProperties", + "schema" : { + "items" : false, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + properties", + "schema" : { + "items" : false, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "items + propertyNames", + "schema" : { + "items" : false, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "items + required", + "schema" : { + "items" : false, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + additionalProperties", + "schema" : { + "additionalProperties" : false, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + dependentRequired", + "schema" : { + "dependentRequired" : { + "x" : [ + "y" + ] + }, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentRequired invalid", + "valid" : false + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, dependentRequired valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + dependentSchemas", + "schema" : { + "dependentSchemas" : { + "x" : false + }, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentSchemas invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependentSchemas valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + maxProperties", + "schema" : { + "maxItems" : 1, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + minProperties", + "schema" : { + "maxItems" : 1, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + patternProperties", + "schema" : { + "maxItems" : 1, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + properties", + "schema" : { + "maxItems" : 1, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + propertyNames", + "schema" : { + "maxItems" : 1, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + required", + "schema" : { + "maxItems" : 1, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + additionalProperties", + "schema" : { + "additionalProperties" : false, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + dependentRequired", + "schema" : { + "dependentRequired" : { + "x" : [ + "y" + ] + }, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentRequired invalid", + "valid" : false + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, dependentRequired valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + dependentSchemas", + "schema" : { + "dependentSchemas" : { + "x" : false + }, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentSchemas invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependentSchemas valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + maxProperties", + "schema" : { + "maxProperties" : 1, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + minProperties", + "schema" : { + "minItems" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + patternProperties", + "schema" : { + "minItems" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + properties", + "schema" : { + "minItems" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + propertyNames", + "schema" : { + "minItems" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + required", + "schema" : { + "minItems" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + additionalProperties", + "schema" : { + "additionalProperties" : false, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + dependentRequired", + "schema" : { + "dependentRequired" : { + "x" : [ + "y" + ] + }, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentRequired invalid", + "valid" : false + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, dependentRequired valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + dependentSchemas", + "schema" : { + "dependentSchemas" : { + "x" : false + }, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentSchemas invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependentSchemas valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + maxProperties", + "schema" : { + "maxProperties" : 1, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + minProperties", + "schema" : { + "minProperties" : 1, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + patternProperties", + "schema" : { + "patternProperties" : { + "hi" : false + }, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + properties", + "schema" : { + "properties" : { + "x" : false + }, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + propertyNames", + "schema" : { + "propertyNames" : false, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + required", + "schema" : { + "required" : [ + "x" + ], + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "contains + maxLength", + "schema" : { + "contains" : true, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "contains + minLength", + "schema" : { + "contains" : true, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "contains + pattern", + "schema" : { + "contains" : true, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "items + maxLength", + "schema" : { + "items" : false, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "items + minLength", + "schema" : { + "items" : false, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "items + pattern", + "schema" : { + "items" : false, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + maxLength", + "schema" : { + "maxItems" : 1, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + minLength", + "schema" : { + "maxItems" : 1, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + pattern", + "schema" : { + "maxItems" : 1, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + maxLength", + "schema" : { + "maxLength" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + minLength", + "schema" : { + "minItems" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + pattern", + "schema" : { + "minItems" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + maxLength", + "schema" : { + "maxLength" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + minLength", + "schema" : { + "minLength" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + pattern", + "schema" : { + "pattern" : "hi", + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "exclusiveMaximum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + dependentRequired", + "schema" : { + "dependentRequired" : { + "x" : [ + "y" + ] + }, + "exclusiveMaximum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentRequired invalid", + "valid" : false + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, dependentRequired valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + dependentSchemas", + "schema" : { + "dependentSchemas" : { + "x" : false + }, + "exclusiveMaximum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentSchemas invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependentSchemas valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + maxProperties", + "schema" : { + "exclusiveMaximum" : 2, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + minProperties", + "schema" : { + "exclusiveMaximum" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + patternProperties", + "schema" : { + "exclusiveMaximum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + properties", + "schema" : { + "exclusiveMaximum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + propertyNames", + "schema" : { + "exclusiveMaximum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + required", + "schema" : { + "exclusiveMaximum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "exclusiveMinimum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + dependentRequired", + "schema" : { + "dependentRequired" : { + "x" : [ + "y" + ] + }, + "exclusiveMinimum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentRequired invalid", + "valid" : false + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, dependentRequired valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + dependentSchemas", + "schema" : { + "dependentSchemas" : { + "x" : false + }, + "exclusiveMinimum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentSchemas invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependentSchemas valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + maxProperties", + "schema" : { + "exclusiveMinimum" : 2, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + minProperties", + "schema" : { + "exclusiveMinimum" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + patternProperties", + "schema" : { + "exclusiveMinimum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + properties", + "schema" : { + "exclusiveMinimum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + propertyNames", + "schema" : { + "exclusiveMinimum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + required", + "schema" : { + "exclusiveMinimum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + dependentRequired", + "schema" : { + "dependentRequired" : { + "x" : [ + "y" + ] + }, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentRequired invalid", + "valid" : false + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, dependentRequired valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + dependentSchemas", + "schema" : { + "dependentSchemas" : { + "x" : false + }, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentSchemas invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependentSchemas valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + maxProperties", + "schema" : { + "maxProperties" : 1, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + minProperties", + "schema" : { + "maximum" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + patternProperties", + "schema" : { + "maximum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + properties", + "schema" : { + "maximum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + propertyNames", + "schema" : { + "maximum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + required", + "schema" : { + "maximum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + dependentRequired", + "schema" : { + "dependentRequired" : { + "x" : [ + "y" + ] + }, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentRequired invalid", + "valid" : false + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, dependentRequired valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + dependentSchemas", + "schema" : { + "dependentSchemas" : { + "x" : false + }, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentSchemas invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependentSchemas valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + maxProperties", + "schema" : { + "maxProperties" : 1, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + minProperties", + "schema" : { + "minProperties" : 1, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + patternProperties", + "schema" : { + "minimum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + properties", + "schema" : { + "minimum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + propertyNames", + "schema" : { + "minimum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + required", + "schema" : { + "minimum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + additionalProperties", + "schema" : { + "additionalProperties" : false, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + dependentRequired", + "schema" : { + "dependentRequired" : { + "x" : [ + "y" + ] + }, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentRequired invalid", + "valid" : false + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, dependentRequired valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + dependentSchemas", + "schema" : { + "dependentSchemas" : { + "x" : false + }, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentSchemas invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependentSchemas valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + maxProperties", + "schema" : { + "maxProperties" : 1, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + minProperties", + "schema" : { + "minProperties" : 1, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + patternProperties", + "schema" : { + "multipleOf" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + properties", + "schema" : { + "multipleOf" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + propertyNames", + "schema" : { + "multipleOf" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + required", + "schema" : { + "multipleOf" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + maxLength", + "schema" : { + "exclusiveMaximum" : 2, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + minLength", + "schema" : { + "exclusiveMaximum" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + pattern", + "schema" : { + "exclusiveMaximum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + maxLength", + "schema" : { + "exclusiveMinimum" : 2, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + minLength", + "schema" : { + "exclusiveMinimum" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + pattern", + "schema" : { + "exclusiveMinimum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + maxLength", + "schema" : { + "maxLength" : 2, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + minLength", + "schema" : { + "maximum" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + pattern", + "schema" : { + "maximum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + maxLength", + "schema" : { + "maxLength" : 2, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + minLength", + "schema" : { + "minLength" : 2, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + pattern", + "schema" : { + "minimum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + maxLength", + "schema" : { + "maxLength" : 2, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + minLength", + "schema" : { + "minLength" : 2, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + pattern", + "schema" : { + "multipleOf" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "additionalProperties + maxLength", + "schema" : { + "additionalProperties" : false, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "additionalProperties + minLength", + "schema" : { + "additionalProperties" : false, + "minLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "additionalProperties + pattern", + "schema" : { + "additionalProperties" : false, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "dependentRequired + maxLength", + "schema" : { + "dependentRequired" : { + "x" : [ + "y" + ] + }, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentRequired invalid", + "valid" : false + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, dependentRequired valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "dependentRequired + minLength", + "schema" : { + "dependentRequired" : { + "x" : [ + "y" + ] + }, + "minLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentRequired invalid", + "valid" : false + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, dependentRequired valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "dependentRequired + pattern", + "schema" : { + "dependentRequired" : { + "x" : [ + "y" + ] + }, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentRequired invalid", + "valid" : false + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, dependentRequired valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "dependentSchemas + maxLength", + "schema" : { + "dependentSchemas" : { + "x" : false + }, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentSchemas invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependentSchemas valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "dependentSchemas + minLength", + "schema" : { + "dependentSchemas" : { + "x" : false + }, + "minLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentSchemas invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependentSchemas valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "dependentSchemas + pattern", + "schema" : { + "dependentSchemas" : { + "x" : false + }, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependentSchemas invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependentSchemas valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "maxProperties + maxLength", + "schema" : { + "maxLength" : 2, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxProperties + minLength", + "schema" : { + "maxProperties" : 1, + "minLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxProperties + pattern", + "schema" : { + "maxProperties" : 1, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "minProperties + maxLength", + "schema" : { + "maxLength" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "minProperties + minLength", + "schema" : { + "minLength" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "minProperties + pattern", + "schema" : { + "minProperties" : 1, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "patternProperties + maxLength", + "schema" : { + "maxLength" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "patternProperties + minLength", + "schema" : { + "minLength" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "patternProperties + pattern", + "schema" : { + "pattern" : "hi", + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "properties + maxLength", + "schema" : { + "maxLength" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "properties + minLength", + "schema" : { + "minLength" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "properties + pattern", + "schema" : { + "pattern" : "hi", + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "propertyNames + maxLength", + "schema" : { + "maxLength" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "propertyNames + minLength", + "schema" : { + "minLength" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "propertyNames + pattern", + "schema" : { + "pattern" : "hi", + "propertyNames" : false + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "required + maxLength", + "schema" : { + "maxLength" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "required + minLength", + "schema" : { + "minLength" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "required + pattern", + "schema" : { + "pattern" : "hi", + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + } +] diff --git a/tests/draft4/keyword-independence.json b/tests/draft4/keyword-independence.json new file mode 100644 index 00000000..21e53387 --- /dev/null +++ b/tests/draft4/keyword-independence.json @@ -0,0 +1,4270 @@ +[ + { + "description" : "contains + maximum", + "schema" : { + "contains" : true, + "maximum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + minimum", + "schema" : { + "contains" : true, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + multipleOf", + "schema" : { + "contains" : true, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "items + maximum", + "schema" : { + "items" : false, + "maximum" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "items + minimum", + "schema" : { + "items" : false, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "items + multipleOf", + "schema" : { + "items" : false, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + maximum", + "schema" : { + "maxItems" : 1, + "maximum" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + minimum", + "schema" : { + "maxItems" : 1, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + multipleOf", + "schema" : { + "maxItems" : 1, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + maximum", + "schema" : { + "maximum" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + minimum", + "schema" : { + "minItems" : 2, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + multipleOf", + "schema" : { + "minItems" : 2, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + maximum", + "schema" : { + "maximum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + minimum", + "schema" : { + "minimum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + multipleOf", + "schema" : { + "multipleOf" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "contains + additionalProperties", + "schema" : { + "additionalProperties" : false, + "contains" : true + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + dependencies", + "schema" : { + "contains" : true, + "dependencies" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "contains + maxProperties", + "schema" : { + "contains" : true, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + minProperties", + "schema" : { + "contains" : true, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + patternProperties", + "schema" : { + "contains" : true, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + properties", + "schema" : { + "contains" : true, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + propertyNames", + "schema" : { + "contains" : true, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "contains + required", + "schema" : { + "contains" : true, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "items + additionalProperties", + "schema" : { + "additionalProperties" : false, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "items + maxProperties", + "schema" : { + "items" : false, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + minProperties", + "schema" : { + "items" : false, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + patternProperties", + "schema" : { + "items" : false, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + properties", + "schema" : { + "items" : false, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "items + propertyNames", + "schema" : { + "items" : false, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "items + required", + "schema" : { + "items" : false, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + additionalProperties", + "schema" : { + "additionalProperties" : false, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + maxProperties", + "schema" : { + "maxItems" : 1, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + minProperties", + "schema" : { + "maxItems" : 1, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + patternProperties", + "schema" : { + "maxItems" : 1, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + properties", + "schema" : { + "maxItems" : 1, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + propertyNames", + "schema" : { + "maxItems" : 1, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + required", + "schema" : { + "maxItems" : 1, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + additionalProperties", + "schema" : { + "additionalProperties" : false, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + maxProperties", + "schema" : { + "maxProperties" : 1, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + minProperties", + "schema" : { + "minItems" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + patternProperties", + "schema" : { + "minItems" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + properties", + "schema" : { + "minItems" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + propertyNames", + "schema" : { + "minItems" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + required", + "schema" : { + "minItems" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + additionalProperties", + "schema" : { + "additionalProperties" : false, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + maxProperties", + "schema" : { + "maxProperties" : 1, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + minProperties", + "schema" : { + "minProperties" : 1, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + patternProperties", + "schema" : { + "patternProperties" : { + "hi" : false + }, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + properties", + "schema" : { + "properties" : { + "x" : false + }, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + propertyNames", + "schema" : { + "propertyNames" : false, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + required", + "schema" : { + "required" : [ + "x" + ], + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "contains + maxLength", + "schema" : { + "contains" : true, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "contains + minLength", + "schema" : { + "contains" : true, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "contains + pattern", + "schema" : { + "contains" : true, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "items + maxLength", + "schema" : { + "items" : false, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "items + minLength", + "schema" : { + "items" : false, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "items + pattern", + "schema" : { + "items" : false, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + maxLength", + "schema" : { + "maxItems" : 1, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + minLength", + "schema" : { + "maxItems" : 1, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + pattern", + "schema" : { + "maxItems" : 1, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + maxLength", + "schema" : { + "maxLength" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + minLength", + "schema" : { + "minItems" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + pattern", + "schema" : { + "minItems" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + maxLength", + "schema" : { + "maxLength" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + minLength", + "schema" : { + "minLength" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + pattern", + "schema" : { + "pattern" : "hi", + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + maxProperties", + "schema" : { + "maxProperties" : 1, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + minProperties", + "schema" : { + "maximum" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + patternProperties", + "schema" : { + "maximum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + properties", + "schema" : { + "maximum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + propertyNames", + "schema" : { + "maximum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + required", + "schema" : { + "maximum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + maxProperties", + "schema" : { + "maxProperties" : 1, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + minProperties", + "schema" : { + "minProperties" : 1, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + patternProperties", + "schema" : { + "minimum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + properties", + "schema" : { + "minimum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + propertyNames", + "schema" : { + "minimum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + required", + "schema" : { + "minimum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + additionalProperties", + "schema" : { + "additionalProperties" : false, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + maxProperties", + "schema" : { + "maxProperties" : 1, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + minProperties", + "schema" : { + "minProperties" : 1, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + patternProperties", + "schema" : { + "multipleOf" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + properties", + "schema" : { + "multipleOf" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + propertyNames", + "schema" : { + "multipleOf" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + required", + "schema" : { + "multipleOf" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + maxLength", + "schema" : { + "maxLength" : 2, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + minLength", + "schema" : { + "maximum" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + pattern", + "schema" : { + "maximum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + maxLength", + "schema" : { + "maxLength" : 2, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + minLength", + "schema" : { + "minLength" : 2, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + pattern", + "schema" : { + "minimum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + maxLength", + "schema" : { + "maxLength" : 2, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + minLength", + "schema" : { + "minLength" : 2, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + pattern", + "schema" : { + "multipleOf" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "additionalProperties + maxLength", + "schema" : { + "additionalProperties" : false, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "additionalProperties + minLength", + "schema" : { + "additionalProperties" : false, + "minLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "additionalProperties + pattern", + "schema" : { + "additionalProperties" : false, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "dependencies + maxLength", + "schema" : { + "dependencies" : { + "x" : false + }, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "dependencies + minLength", + "schema" : { + "dependencies" : { + "x" : false + }, + "minLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "dependencies + pattern", + "schema" : { + "dependencies" : { + "x" : false + }, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "maxProperties + maxLength", + "schema" : { + "maxLength" : 2, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxProperties + minLength", + "schema" : { + "maxProperties" : 1, + "minLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxProperties + pattern", + "schema" : { + "maxProperties" : 1, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "minProperties + maxLength", + "schema" : { + "maxLength" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "minProperties + minLength", + "schema" : { + "minLength" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "minProperties + pattern", + "schema" : { + "minProperties" : 1, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "patternProperties + maxLength", + "schema" : { + "maxLength" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "patternProperties + minLength", + "schema" : { + "minLength" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "patternProperties + pattern", + "schema" : { + "pattern" : "hi", + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "properties + maxLength", + "schema" : { + "maxLength" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "properties + minLength", + "schema" : { + "minLength" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "properties + pattern", + "schema" : { + "pattern" : "hi", + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "propertyNames + maxLength", + "schema" : { + "maxLength" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "propertyNames + minLength", + "schema" : { + "minLength" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "propertyNames + pattern", + "schema" : { + "pattern" : "hi", + "propertyNames" : false + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "required + maxLength", + "schema" : { + "maxLength" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "required + minLength", + "schema" : { + "minLength" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "required + pattern", + "schema" : { + "pattern" : "hi", + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + } +] diff --git a/tests/draft6/keyword-independence.json b/tests/draft6/keyword-independence.json new file mode 100644 index 00000000..648ee3c8 --- /dev/null +++ b/tests/draft6/keyword-independence.json @@ -0,0 +1,5294 @@ +[ + { + "description" : "contains + exclusiveMaximum", + "schema" : { + "contains" : true, + "exclusiveMaximum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + exclusiveMinimum", + "schema" : { + "contains" : true, + "exclusiveMinimum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + maximum", + "schema" : { + "contains" : true, + "maximum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + minimum", + "schema" : { + "contains" : true, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + multipleOf", + "schema" : { + "contains" : true, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "items + exclusiveMaximum", + "schema" : { + "exclusiveMaximum" : 2, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "items + exclusiveMinimum", + "schema" : { + "exclusiveMinimum" : 2, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "items + maximum", + "schema" : { + "items" : false, + "maximum" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "items + minimum", + "schema" : { + "items" : false, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "items + multipleOf", + "schema" : { + "items" : false, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + exclusiveMaximum", + "schema" : { + "exclusiveMaximum" : 2, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + exclusiveMinimum", + "schema" : { + "exclusiveMinimum" : 2, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + maximum", + "schema" : { + "maxItems" : 1, + "maximum" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + minimum", + "schema" : { + "maxItems" : 1, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + multipleOf", + "schema" : { + "maxItems" : 1, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + exclusiveMaximum", + "schema" : { + "exclusiveMaximum" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + exclusiveMinimum", + "schema" : { + "exclusiveMinimum" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + maximum", + "schema" : { + "maximum" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + minimum", + "schema" : { + "minItems" : 2, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + multipleOf", + "schema" : { + "minItems" : 2, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + exclusiveMaximum", + "schema" : { + "exclusiveMaximum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + exclusiveMinimum", + "schema" : { + "exclusiveMinimum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + maximum", + "schema" : { + "maximum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + minimum", + "schema" : { + "minimum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + multipleOf", + "schema" : { + "multipleOf" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "contains + additionalProperties", + "schema" : { + "additionalProperties" : false, + "contains" : true + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + dependencies", + "schema" : { + "contains" : true, + "dependencies" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "contains + maxProperties", + "schema" : { + "contains" : true, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + minProperties", + "schema" : { + "contains" : true, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + patternProperties", + "schema" : { + "contains" : true, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + properties", + "schema" : { + "contains" : true, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + propertyNames", + "schema" : { + "contains" : true, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "contains + required", + "schema" : { + "contains" : true, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "items + additionalProperties", + "schema" : { + "additionalProperties" : false, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "items + maxProperties", + "schema" : { + "items" : false, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + minProperties", + "schema" : { + "items" : false, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + patternProperties", + "schema" : { + "items" : false, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + properties", + "schema" : { + "items" : false, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "items + propertyNames", + "schema" : { + "items" : false, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "items + required", + "schema" : { + "items" : false, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + additionalProperties", + "schema" : { + "additionalProperties" : false, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + maxProperties", + "schema" : { + "maxItems" : 1, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + minProperties", + "schema" : { + "maxItems" : 1, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + patternProperties", + "schema" : { + "maxItems" : 1, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + properties", + "schema" : { + "maxItems" : 1, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + propertyNames", + "schema" : { + "maxItems" : 1, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + required", + "schema" : { + "maxItems" : 1, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + additionalProperties", + "schema" : { + "additionalProperties" : false, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + maxProperties", + "schema" : { + "maxProperties" : 1, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + minProperties", + "schema" : { + "minItems" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + patternProperties", + "schema" : { + "minItems" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + properties", + "schema" : { + "minItems" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + propertyNames", + "schema" : { + "minItems" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + required", + "schema" : { + "minItems" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + additionalProperties", + "schema" : { + "additionalProperties" : false, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + maxProperties", + "schema" : { + "maxProperties" : 1, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + minProperties", + "schema" : { + "minProperties" : 1, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + patternProperties", + "schema" : { + "patternProperties" : { + "hi" : false + }, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + properties", + "schema" : { + "properties" : { + "x" : false + }, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + propertyNames", + "schema" : { + "propertyNames" : false, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + required", + "schema" : { + "required" : [ + "x" + ], + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "contains + maxLength", + "schema" : { + "contains" : true, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "contains + minLength", + "schema" : { + "contains" : true, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "contains + pattern", + "schema" : { + "contains" : true, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "items + maxLength", + "schema" : { + "items" : false, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "items + minLength", + "schema" : { + "items" : false, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "items + pattern", + "schema" : { + "items" : false, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + maxLength", + "schema" : { + "maxItems" : 1, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + minLength", + "schema" : { + "maxItems" : 1, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + pattern", + "schema" : { + "maxItems" : 1, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + maxLength", + "schema" : { + "maxLength" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + minLength", + "schema" : { + "minItems" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + pattern", + "schema" : { + "minItems" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + maxLength", + "schema" : { + "maxLength" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + minLength", + "schema" : { + "minLength" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + pattern", + "schema" : { + "pattern" : "hi", + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "exclusiveMaximum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "exclusiveMaximum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + maxProperties", + "schema" : { + "exclusiveMaximum" : 2, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + minProperties", + "schema" : { + "exclusiveMaximum" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + patternProperties", + "schema" : { + "exclusiveMaximum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + properties", + "schema" : { + "exclusiveMaximum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + propertyNames", + "schema" : { + "exclusiveMaximum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + required", + "schema" : { + "exclusiveMaximum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "exclusiveMinimum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "exclusiveMinimum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + maxProperties", + "schema" : { + "exclusiveMinimum" : 2, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + minProperties", + "schema" : { + "exclusiveMinimum" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + patternProperties", + "schema" : { + "exclusiveMinimum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + properties", + "schema" : { + "exclusiveMinimum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + propertyNames", + "schema" : { + "exclusiveMinimum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + required", + "schema" : { + "exclusiveMinimum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + maxProperties", + "schema" : { + "maxProperties" : 1, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + minProperties", + "schema" : { + "maximum" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + patternProperties", + "schema" : { + "maximum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + properties", + "schema" : { + "maximum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + propertyNames", + "schema" : { + "maximum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + required", + "schema" : { + "maximum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + maxProperties", + "schema" : { + "maxProperties" : 1, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + minProperties", + "schema" : { + "minProperties" : 1, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + patternProperties", + "schema" : { + "minimum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + properties", + "schema" : { + "minimum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + propertyNames", + "schema" : { + "minimum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + required", + "schema" : { + "minimum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + additionalProperties", + "schema" : { + "additionalProperties" : false, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + maxProperties", + "schema" : { + "maxProperties" : 1, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + minProperties", + "schema" : { + "minProperties" : 1, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + patternProperties", + "schema" : { + "multipleOf" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + properties", + "schema" : { + "multipleOf" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + propertyNames", + "schema" : { + "multipleOf" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + required", + "schema" : { + "multipleOf" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + maxLength", + "schema" : { + "exclusiveMaximum" : 2, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + minLength", + "schema" : { + "exclusiveMaximum" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + pattern", + "schema" : { + "exclusiveMaximum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + maxLength", + "schema" : { + "exclusiveMinimum" : 2, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + minLength", + "schema" : { + "exclusiveMinimum" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + pattern", + "schema" : { + "exclusiveMinimum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + maxLength", + "schema" : { + "maxLength" : 2, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + minLength", + "schema" : { + "maximum" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + pattern", + "schema" : { + "maximum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + maxLength", + "schema" : { + "maxLength" : 2, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + minLength", + "schema" : { + "minLength" : 2, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + pattern", + "schema" : { + "minimum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + maxLength", + "schema" : { + "maxLength" : 2, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + minLength", + "schema" : { + "minLength" : 2, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + pattern", + "schema" : { + "multipleOf" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "additionalProperties + maxLength", + "schema" : { + "additionalProperties" : false, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "additionalProperties + minLength", + "schema" : { + "additionalProperties" : false, + "minLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "additionalProperties + pattern", + "schema" : { + "additionalProperties" : false, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "dependencies + maxLength", + "schema" : { + "dependencies" : { + "x" : false + }, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "dependencies + minLength", + "schema" : { + "dependencies" : { + "x" : false + }, + "minLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "dependencies + pattern", + "schema" : { + "dependencies" : { + "x" : false + }, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "maxProperties + maxLength", + "schema" : { + "maxLength" : 2, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxProperties + minLength", + "schema" : { + "maxProperties" : 1, + "minLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxProperties + pattern", + "schema" : { + "maxProperties" : 1, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "minProperties + maxLength", + "schema" : { + "maxLength" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "minProperties + minLength", + "schema" : { + "minLength" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "minProperties + pattern", + "schema" : { + "minProperties" : 1, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "patternProperties + maxLength", + "schema" : { + "maxLength" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "patternProperties + minLength", + "schema" : { + "minLength" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "patternProperties + pattern", + "schema" : { + "pattern" : "hi", + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "properties + maxLength", + "schema" : { + "maxLength" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "properties + minLength", + "schema" : { + "minLength" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "properties + pattern", + "schema" : { + "pattern" : "hi", + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "propertyNames + maxLength", + "schema" : { + "maxLength" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "propertyNames + minLength", + "schema" : { + "minLength" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "propertyNames + pattern", + "schema" : { + "pattern" : "hi", + "propertyNames" : false + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "required + maxLength", + "schema" : { + "maxLength" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "required + minLength", + "schema" : { + "minLength" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "required + pattern", + "schema" : { + "pattern" : "hi", + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + } +] diff --git a/tests/draft7/keyword-independence.json b/tests/draft7/keyword-independence.json new file mode 100644 index 00000000..648ee3c8 --- /dev/null +++ b/tests/draft7/keyword-independence.json @@ -0,0 +1,5294 @@ +[ + { + "description" : "contains + exclusiveMaximum", + "schema" : { + "contains" : true, + "exclusiveMaximum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + exclusiveMinimum", + "schema" : { + "contains" : true, + "exclusiveMinimum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + maximum", + "schema" : { + "contains" : true, + "maximum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + minimum", + "schema" : { + "contains" : true, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "contains + multipleOf", + "schema" : { + "contains" : true, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "items + exclusiveMaximum", + "schema" : { + "exclusiveMaximum" : 2, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "items + exclusiveMinimum", + "schema" : { + "exclusiveMinimum" : 2, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "items + maximum", + "schema" : { + "items" : false, + "maximum" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "items + minimum", + "schema" : { + "items" : false, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "items + multipleOf", + "schema" : { + "items" : false, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + exclusiveMaximum", + "schema" : { + "exclusiveMaximum" : 2, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + exclusiveMinimum", + "schema" : { + "exclusiveMinimum" : 2, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + maximum", + "schema" : { + "maxItems" : 1, + "maximum" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + minimum", + "schema" : { + "maxItems" : 1, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + multipleOf", + "schema" : { + "maxItems" : 1, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + exclusiveMaximum", + "schema" : { + "exclusiveMaximum" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + exclusiveMinimum", + "schema" : { + "exclusiveMinimum" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + maximum", + "schema" : { + "maximum" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + minimum", + "schema" : { + "minItems" : 2, + "minimum" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + multipleOf", + "schema" : { + "minItems" : 2, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + exclusiveMaximum", + "schema" : { + "exclusiveMaximum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + exclusiveMinimum", + "schema" : { + "exclusiveMinimum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + maximum", + "schema" : { + "maximum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + minimum", + "schema" : { + "minimum" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + multipleOf", + "schema" : { + "multipleOf" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + } + ] + }, + { + "description" : "contains + additionalProperties", + "schema" : { + "additionalProperties" : false, + "contains" : true + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + dependencies", + "schema" : { + "contains" : true, + "dependencies" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "contains + maxProperties", + "schema" : { + "contains" : true, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + minProperties", + "schema" : { + "contains" : true, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + patternProperties", + "schema" : { + "contains" : true, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + properties", + "schema" : { + "contains" : true, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "contains + propertyNames", + "schema" : { + "contains" : true, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "contains + required", + "schema" : { + "contains" : true, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "items + additionalProperties", + "schema" : { + "additionalProperties" : false, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "items" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "items + maxProperties", + "schema" : { + "items" : false, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + minProperties", + "schema" : { + "items" : false, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + patternProperties", + "schema" : { + "items" : false, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "items + properties", + "schema" : { + "items" : false, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "items + propertyNames", + "schema" : { + "items" : false, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "items + required", + "schema" : { + "items" : false, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + additionalProperties", + "schema" : { + "additionalProperties" : false, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "maxItems" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + maxProperties", + "schema" : { + "maxItems" : 1, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + minProperties", + "schema" : { + "maxItems" : 1, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + patternProperties", + "schema" : { + "maxItems" : 1, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + properties", + "schema" : { + "maxItems" : 1, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + propertyNames", + "schema" : { + "maxItems" : 1, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + required", + "schema" : { + "maxItems" : 1, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + additionalProperties", + "schema" : { + "additionalProperties" : false, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + maxProperties", + "schema" : { + "maxProperties" : 1, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + minProperties", + "schema" : { + "minItems" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + patternProperties", + "schema" : { + "minItems" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + properties", + "schema" : { + "minItems" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + propertyNames", + "schema" : { + "minItems" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + required", + "schema" : { + "minItems" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + additionalProperties", + "schema" : { + "additionalProperties" : false, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + maxProperties", + "schema" : { + "maxProperties" : 1, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + minProperties", + "schema" : { + "minProperties" : 1, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + patternProperties", + "schema" : { + "patternProperties" : { + "hi" : false + }, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + properties", + "schema" : { + "properties" : { + "x" : false + }, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + propertyNames", + "schema" : { + "propertyNames" : false, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + required", + "schema" : { + "required" : [ + "x" + ], + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "contains + maxLength", + "schema" : { + "contains" : true, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "contains + minLength", + "schema" : { + "contains" : true, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "contains + pattern", + "schema" : { + "contains" : true, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [], + "description" : "array, contains invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, contains valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "items + maxLength", + "schema" : { + "items" : false, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "items + minLength", + "schema" : { + "items" : false, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "items + pattern", + "schema" : { + "items" : false, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, items invalid", + "valid" : false + }, + { + "data" : [], + "description" : "array, items valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + maxLength", + "schema" : { + "maxItems" : 1, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + minLength", + "schema" : { + "maxItems" : 1, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxItems + pattern", + "schema" : { + "maxItems" : 1, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [ + 1, + 2 + ], + "description" : "array, maxItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, maxItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + maxLength", + "schema" : { + "maxLength" : 2, + "minItems" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + minLength", + "schema" : { + "minItems" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "minItems + pattern", + "schema" : { + "minItems" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : [ + 1 + ], + "description" : "array, minItems invalid", + "valid" : false + }, + { + "data" : [ + 1, + 2 + ], + "description" : "array, minItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + maxLength", + "schema" : { + "maxLength" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + minLength", + "schema" : { + "minLength" : 2, + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "uniqueItems + pattern", + "schema" : { + "pattern" : "hi", + "uniqueItems" : true + }, + "tests" : [ + { + "data" : [ + 1, + 1 + ], + "description" : "array, uniqueItems invalid", + "valid" : false + }, + { + "data" : [ + 1 + ], + "description" : "array, uniqueItems valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "exclusiveMaximum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "exclusiveMaximum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + maxProperties", + "schema" : { + "exclusiveMaximum" : 2, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + minProperties", + "schema" : { + "exclusiveMaximum" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + patternProperties", + "schema" : { + "exclusiveMaximum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + properties", + "schema" : { + "exclusiveMaximum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + propertyNames", + "schema" : { + "exclusiveMaximum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + required", + "schema" : { + "exclusiveMaximum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "exclusiveMinimum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "exclusiveMinimum" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + maxProperties", + "schema" : { + "exclusiveMinimum" : 2, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + minProperties", + "schema" : { + "exclusiveMinimum" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + patternProperties", + "schema" : { + "exclusiveMinimum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + properties", + "schema" : { + "exclusiveMinimum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + propertyNames", + "schema" : { + "exclusiveMinimum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + required", + "schema" : { + "exclusiveMinimum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + maxProperties", + "schema" : { + "maxProperties" : 1, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + minProperties", + "schema" : { + "maximum" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + patternProperties", + "schema" : { + "maximum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + properties", + "schema" : { + "maximum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + propertyNames", + "schema" : { + "maximum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + required", + "schema" : { + "maximum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + additionalProperties", + "schema" : { + "additionalProperties" : false, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + maxProperties", + "schema" : { + "maxProperties" : 1, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + minProperties", + "schema" : { + "minProperties" : 1, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + patternProperties", + "schema" : { + "minimum" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + properties", + "schema" : { + "minimum" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + propertyNames", + "schema" : { + "minimum" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + required", + "schema" : { + "minimum" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + additionalProperties", + "schema" : { + "additionalProperties" : false, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + dependencies", + "schema" : { + "dependencies" : { + "x" : false + }, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + maxProperties", + "schema" : { + "maxProperties" : 1, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + minProperties", + "schema" : { + "minProperties" : 1, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + patternProperties", + "schema" : { + "multipleOf" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + properties", + "schema" : { + "multipleOf" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + propertyNames", + "schema" : { + "multipleOf" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + required", + "schema" : { + "multipleOf" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + maxLength", + "schema" : { + "exclusiveMaximum" : 2, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + minLength", + "schema" : { + "exclusiveMaximum" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMaximum + pattern", + "schema" : { + "exclusiveMaximum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMaximum invalid", + "valid" : false + }, + { + "data" : 1, + "description" : "number, exclusiveMaximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + maxLength", + "schema" : { + "exclusiveMinimum" : 2, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + minLength", + "schema" : { + "exclusiveMinimum" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "exclusiveMinimum + pattern", + "schema" : { + "exclusiveMinimum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 2, + "description" : "number, exclusiveMinimum invalid", + "valid" : false + }, + { + "data" : 3, + "description" : "number, exclusiveMinimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + maxLength", + "schema" : { + "maxLength" : 2, + "maximum" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + minLength", + "schema" : { + "maximum" : 2, + "minLength" : 2 + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "maximum + pattern", + "schema" : { + "maximum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 3, + "description" : "number, maximum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, maximum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + maxLength", + "schema" : { + "maxLength" : 2, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + minLength", + "schema" : { + "minLength" : 2, + "minimum" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "minimum + pattern", + "schema" : { + "minimum" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 1, + "description" : "number, minimum invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, minimum valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + maxLength", + "schema" : { + "maxLength" : 2, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + minLength", + "schema" : { + "minLength" : 2, + "multipleOf" : 2 + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "multipleOf + pattern", + "schema" : { + "multipleOf" : 2, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : 1, + "description" : "number, multipleOf invalid", + "valid" : false + }, + { + "data" : 2, + "description" : "number, multipleOf valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "additionalProperties + maxLength", + "schema" : { + "additionalProperties" : false, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "additionalProperties + minLength", + "schema" : { + "additionalProperties" : false, + "minLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "additionalProperties + pattern", + "schema" : { + "additionalProperties" : false, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, additionalProperties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, additionalProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "dependencies + maxLength", + "schema" : { + "dependencies" : { + "x" : false + }, + "maxLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "dependencies + minLength", + "schema" : { + "dependencies" : { + "x" : false + }, + "minLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "dependencies + pattern", + "schema" : { + "dependencies" : { + "x" : false + }, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, dependencies invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, dependencies valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "maxProperties + maxLength", + "schema" : { + "maxLength" : 2, + "maxProperties" : 1 + }, + "tests" : [ + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxProperties + minLength", + "schema" : { + "maxProperties" : 1, + "minLength" : 2 + }, + "tests" : [ + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "maxProperties + pattern", + "schema" : { + "maxProperties" : 1, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : { + "x" : 1, + "y" : 2 + }, + "description" : "object, maxProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, maxProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "minProperties + maxLength", + "schema" : { + "maxLength" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "minProperties + minLength", + "schema" : { + "minLength" : 2, + "minProperties" : 1 + }, + "tests" : [ + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "minProperties + pattern", + "schema" : { + "minProperties" : 1, + "pattern" : "hi" + }, + "tests" : [ + { + "data" : {}, + "description" : "object, minProperties invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, minProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "patternProperties + maxLength", + "schema" : { + "maxLength" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "patternProperties + minLength", + "schema" : { + "minLength" : 2, + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "patternProperties + pattern", + "schema" : { + "pattern" : "hi", + "patternProperties" : { + "hi" : false + } + }, + "tests" : [ + { + "data" : { + "hihi" : 1 + }, + "description" : "object, patternProperties invalid", + "valid" : false + }, + { + "data" : { + "hello" : 1 + }, + "description" : "object, patternProperties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "properties + maxLength", + "schema" : { + "maxLength" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "properties + minLength", + "schema" : { + "minLength" : 2, + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "properties + pattern", + "schema" : { + "pattern" : "hi", + "properties" : { + "x" : false + } + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, properties invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, properties valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "propertyNames + maxLength", + "schema" : { + "maxLength" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "propertyNames + minLength", + "schema" : { + "minLength" : 2, + "propertyNames" : false + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "propertyNames + pattern", + "schema" : { + "pattern" : "hi", + "propertyNames" : false + }, + "tests" : [ + { + "data" : { + "x" : 1 + }, + "description" : "object, propertyNames invalid", + "valid" : false + }, + { + "data" : {}, + "description" : "object, propertyNames valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + }, + { + "description" : "required + maxLength", + "schema" : { + "maxLength" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, maxLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, maxLength valid", + "valid" : true + } + ] + }, + { + "description" : "required + minLength", + "schema" : { + "minLength" : 2, + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + }, + { + "data" : "x", + "description" : "string, minLength invalid", + "valid" : false + }, + { + "data" : "hi", + "description" : "string, minLength valid", + "valid" : true + } + ] + }, + { + "description" : "required + pattern", + "schema" : { + "pattern" : "hi", + "required" : [ + "x" + ] + }, + "tests" : [ + { + "data" : {}, + "description" : "object, required invalid", + "valid" : false + }, + { + "data" : { + "x" : 1 + }, + "description" : "object, required valid", + "valid" : true + }, + { + "data" : "hello", + "description" : "string, pattern invalid", + "valid" : false + }, + { + "data" : "hihi", + "description" : "string, pattern valid", + "valid" : true + } + ] + } +]