Blame tools/extra/packager/jsonschema-2.3.0/json/tests/draft3/patternProperties.json

Packit 534379
[
Packit 534379
    {
Packit 534379
        "description":
Packit 534379
            "patternProperties validates properties matching a regex",
Packit 534379
        "schema": {
Packit 534379
            "patternProperties": {
Packit 534379
                "f.*o": {"type": "integer"}
Packit 534379
            }
Packit 534379
        },
Packit 534379
        "tests": [
Packit 534379
            {
Packit 534379
                "description": "a single valid match is valid",
Packit 534379
                "data": {"foo": 1},
Packit 534379
                "valid": true
Packit 534379
            },
Packit 534379
            {
Packit 534379
                "description": "multiple valid matches is valid",
Packit 534379
                "data": {"foo": 1, "foooooo" : 2},
Packit 534379
                "valid": true
Packit 534379
            },
Packit 534379
            {
Packit 534379
                "description": "a single invalid match is invalid",
Packit 534379
                "data": {"foo": "bar", "fooooo": 2},
Packit 534379
                "valid": false
Packit 534379
            },
Packit 534379
            {
Packit 534379
                "description": "multiple invalid matches is invalid",
Packit 534379
                "data": {"foo": "bar", "foooooo" : "baz"},
Packit 534379
                "valid": false
Packit 534379
            },
Packit 534379
            {
Packit 534379
                "description": "ignores non-objects",
Packit 534379
                "data": 12,
Packit 534379
                "valid": true
Packit 534379
            }
Packit 534379
        ]
Packit 534379
    },
Packit 534379
    {
Packit 534379
        "description": "multiple simultaneous patternProperties are validated",
Packit 534379
        "schema": {
Packit 534379
            "patternProperties": {
Packit 534379
                "a*": {"type": "integer"},
Packit 534379
                "aaa*": {"maximum": 20}
Packit 534379
            }
Packit 534379
        },
Packit 534379
        "tests": [
Packit 534379
            {
Packit 534379
                "description": "a single valid match is valid",
Packit 534379
                "data": {"a": 21},
Packit 534379
                "valid": true
Packit 534379
            },
Packit 534379
            {
Packit 534379
                "description": "a simultaneous match is valid",
Packit 534379
                "data": {"aaaa": 18},
Packit 534379
                "valid": true
Packit 534379
            },
Packit 534379
            {
Packit 534379
                "description": "multiple matches is valid",
Packit 534379
                "data": {"a": 21, "aaaa": 18},
Packit 534379
                "valid": true
Packit 534379
            },
Packit 534379
            {
Packit 534379
                "description": "an invalid due to one is invalid",
Packit 534379
                "data": {"a": "bar"},
Packit 534379
                "valid": false
Packit 534379
            },
Packit 534379
            {
Packit 534379
                "description": "an invalid due to the other is invalid",
Packit 534379
                "data": {"aaaa": 31},
Packit 534379
                "valid": false
Packit 534379
            },
Packit 534379
            {
Packit 534379
                "description": "an invalid due to both is invalid",
Packit 534379
                "data": {"aaa": "foo", "aaaa": 31},
Packit 534379
                "valid": false
Packit 534379
            }
Packit 534379
        ]
Packit 534379
    },
Packit 534379
    {
Packit 534379
        "description": "regexes are not anchored by default and are case sensitive",
Packit 534379
        "schema": {
Packit 534379
            "patternProperties": {
Packit 534379
                "[0-9]{2,}": { "type": "boolean" },
Packit 534379
                "X_": { "type": "string" }
Packit 534379
            }
Packit 534379
        },
Packit 534379
        "tests": [
Packit 534379
            {
Packit 534379
                "description": "non recognized members are ignored",
Packit 534379
                "data": { "answer 1": "42" },
Packit 534379
                "valid": true
Packit 534379
            },
Packit 534379
            {
Packit 534379
                "description": "recognized members are accounted for",
Packit 534379
                "data": { "a31b": null },
Packit 534379
                "valid": false
Packit 534379
            },
Packit 534379
            {
Packit 534379
                "description": "regexes are case sensitive",
Packit 534379
                "data": { "a_x_3": 3 },
Packit 534379
                "valid": true
Packit 534379
            },
Packit 534379
            {
Packit 534379
                "description": "regexes are case sensitive, 2",
Packit 534379
                "data": { "a_X_3": 3 },
Packit 534379
                "valid": false
Packit 534379
            }
Packit 534379
        ]
Packit 534379
    }
Packit 534379
]