[
    {
        "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" : {
                "no" : false,
                "yes" : true
            }
        },
        "tests" : [
            {
                "data" : [],
                "description" : "array, contains invalid",
                "valid" : false
            },
            {
                "data" : [
                    1
                ],
                "description" : "array, contains valid",
                "valid" : true
            },
            {
                "data" : {
                    "no" : 1
                },
                "description" : "object, patternProperties invalid",
                "valid" : false
            },
            {
                "data" : {
                    "yes" : 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" : {
                "no" : false,
                "yes" : true
            }
        },
        "tests" : [
            {
                "data" : [
                    1
                ],
                "description" : "array, items invalid",
                "valid" : false
            },
            {
                "data" : [],
                "description" : "array, items valid",
                "valid" : true
            },
            {
                "data" : {
                    "no" : 1
                },
                "description" : "object, patternProperties invalid",
                "valid" : false
            },
            {
                "data" : {
                    "yes" : 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" : {
                "no" : false,
                "yes" : true
            }
        },
        "tests" : [
            {
                "data" : [
                    1,
                    2
                ],
                "description" : "array, maxItems invalid",
                "valid" : false
            },
            {
                "data" : [
                    1
                ],
                "description" : "array, maxItems valid",
                "valid" : true
            },
            {
                "data" : {
                    "no" : 1
                },
                "description" : "object, patternProperties invalid",
                "valid" : false
            },
            {
                "data" : {
                    "yes" : 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" : {
                "no" : false,
                "yes" : true
            }
        },
        "tests" : [
            {
                "data" : [
                    1
                ],
                "description" : "array, minItems invalid",
                "valid" : false
            },
            {
                "data" : [
                    1,
                    2
                ],
                "description" : "array, minItems valid",
                "valid" : true
            },
            {
                "data" : {
                    "no" : 1
                },
                "description" : "object, patternProperties invalid",
                "valid" : false
            },
            {
                "data" : {
                    "yes" : 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" : {
                "no" : false,
                "yes" : true
            },
            "uniqueItems" : true
        },
        "tests" : [
            {
                "data" : [
                    1,
                    1
                ],
                "description" : "array, uniqueItems invalid",
                "valid" : false
            },
            {
                "data" : [
                    1
                ],
                "description" : "array, uniqueItems valid",
                "valid" : true
            },
            {
                "data" : {
                    "no" : 1
                },
                "description" : "object, patternProperties invalid",
                "valid" : false
            },
            {
                "data" : {
                    "yes" : 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" : {
                "no" : false,
                "yes" : true
            }
        },
        "tests" : [
            {
                "data" : 2,
                "description" : "number, exclusiveMaximum invalid",
                "valid" : false
            },
            {
                "data" : 1,
                "description" : "number, exclusiveMaximum valid",
                "valid" : true
            },
            {
                "data" : {
                    "no" : 1
                },
                "description" : "object, patternProperties invalid",
                "valid" : false
            },
            {
                "data" : {
                    "yes" : 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" : {
                "no" : false,
                "yes" : true
            }
        },
        "tests" : [
            {
                "data" : 2,
                "description" : "number, exclusiveMinimum invalid",
                "valid" : false
            },
            {
                "data" : 3,
                "description" : "number, exclusiveMinimum valid",
                "valid" : true
            },
            {
                "data" : {
                    "no" : 1
                },
                "description" : "object, patternProperties invalid",
                "valid" : false
            },
            {
                "data" : {
                    "yes" : 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" : {
                "no" : false,
                "yes" : true
            }
        },
        "tests" : [
            {
                "data" : 3,
                "description" : "number, maximum invalid",
                "valid" : false
            },
            {
                "data" : 2,
                "description" : "number, maximum valid",
                "valid" : true
            },
            {
                "data" : {
                    "no" : 1
                },
                "description" : "object, patternProperties invalid",
                "valid" : false
            },
            {
                "data" : {
                    "yes" : 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" : {
                "no" : false,
                "yes" : true
            }
        },
        "tests" : [
            {
                "data" : 1,
                "description" : "number, minimum invalid",
                "valid" : false
            },
            {
                "data" : 2,
                "description" : "number, minimum valid",
                "valid" : true
            },
            {
                "data" : {
                    "no" : 1
                },
                "description" : "object, patternProperties invalid",
                "valid" : false
            },
            {
                "data" : {
                    "yes" : 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" : {
                "no" : false,
                "yes" : true
            }
        },
        "tests" : [
            {
                "data" : 1,
                "description" : "number, multipleOf invalid",
                "valid" : false
            },
            {
                "data" : 2,
                "description" : "number, multipleOf valid",
                "valid" : true
            },
            {
                "data" : {
                    "no" : 1
                },
                "description" : "object, patternProperties invalid",
                "valid" : false
            },
            {
                "data" : {
                    "yes" : 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" : {
                "no" : false,
                "yes" : true
            }
        },
        "tests" : [
            {
                "data" : {
                    "no" : 1
                },
                "description" : "object, patternProperties invalid",
                "valid" : false
            },
            {
                "data" : {
                    "yes" : 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" : {
                "no" : false,
                "yes" : true
            }
        },
        "tests" : [
            {
                "data" : {
                    "no" : 1
                },
                "description" : "object, patternProperties invalid",
                "valid" : false
            },
            {
                "data" : {
                    "yes" : 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" : {
                "no" : false,
                "yes" : true
            }
        },
        "tests" : [
            {
                "data" : {
                    "no" : 1
                },
                "description" : "object, patternProperties invalid",
                "valid" : false
            },
            {
                "data" : {
                    "yes" : 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
            }
        ]
    }
]