diff options
author | Julian Berman <Julian@GrayVines.com> | 2020-03-04 15:40:25 -0500 |
---|---|---|
committer | Julian Berman <Julian@GrayVines.com> | 2020-03-04 15:40:25 -0500 |
commit | 2ab84f8410a7dc9c8c266646cb2784b1d378165f (patch) | |
tree | 76827e08ca71db651ab5024429c17818b39564cd /json/tests/draft2019-09/dependentRequired.json | |
parent | 5f908e41b3f423bd4b38300dfc3bb7d9a15be21d (diff) | |
parent | 11df97257859996434f37e33ad3d8cf2bd3606da (diff) | |
download | jsonschema-2ab84f8410a7dc9c8c266646cb2784b1d378165f.tar.gz |
Merge commit '11df97257859996434f37e33ad3d8cf2bd3606da'
* commit '11df97257859996434f37e33ad3d8cf2bd3606da':
Squashed 'json/' changes from d52866b3..b70c5626
Diffstat (limited to 'json/tests/draft2019-09/dependentRequired.json')
-rw-r--r-- | json/tests/draft2019-09/dependentRequired.json | 142 |
1 files changed, 142 insertions, 0 deletions
diff --git a/json/tests/draft2019-09/dependentRequired.json b/json/tests/draft2019-09/dependentRequired.json new file mode 100644 index 0000000..c817120 --- /dev/null +++ b/json/tests/draft2019-09/dependentRequired.json @@ -0,0 +1,142 @@ +[ + { + "description": "single dependency", + "schema": {"dependentRequired": {"bar": ["foo"]}}, + "tests": [ + { + "description": "neither", + "data": {}, + "valid": true + }, + { + "description": "nondependant", + "data": {"foo": 1}, + "valid": true + }, + { + "description": "with dependency", + "data": {"foo": 1, "bar": 2}, + "valid": true + }, + { + "description": "missing dependency", + "data": {"bar": 2}, + "valid": false + }, + { + "description": "ignores arrays", + "data": ["bar"], + "valid": true + }, + { + "description": "ignores strings", + "data": "foobar", + "valid": true + }, + { + "description": "ignores other non-objects", + "data": 12, + "valid": true + } + ] + }, + { + "description": "empty dependents", + "schema": {"dependentRequired": {"bar": []}}, + "tests": [ + { + "description": "empty object", + "data": {}, + "valid": true + }, + { + "description": "object with one property", + "data": {"bar": 2}, + "valid": true + }, + { + "description": "non-object is valid", + "data": 1, + "valid": true + } + ] + }, + { + "description": "multiple dependents required", + "schema": {"dependentRequired": {"quux": ["foo", "bar"]}}, + "tests": [ + { + "description": "neither", + "data": {}, + "valid": true + }, + { + "description": "nondependants", + "data": {"foo": 1, "bar": 2}, + "valid": true + }, + { + "description": "with dependencies", + "data": {"foo": 1, "bar": 2, "quux": 3}, + "valid": true + }, + { + "description": "missing dependency", + "data": {"foo": 1, "quux": 2}, + "valid": false + }, + { + "description": "missing other dependency", + "data": {"bar": 1, "quux": 2}, + "valid": false + }, + { + "description": "missing both dependencies", + "data": {"quux": 1}, + "valid": false + } + ] + }, + { + "description": "dependencies with escaped characters", + "schema": { + "dependentRequired": { + "foo\nbar": ["foo\rbar"], + "foo\"bar": ["foo'bar"] + } + }, + "tests": [ + { + "description": "CRLF", + "data": { + "foo\nbar": 1, + "foo\rbar": 2 + }, + "valid": true + }, + { + "description": "quoted quotes", + "data": { + "foo'bar": 1, + "foo\"bar": 2 + }, + "valid": true + }, + { + "description": "CRLF missing dependent", + "data": { + "foo\nbar": 1, + "foo": 2 + }, + "valid": false + }, + { + "description": "quoted quotes missing dependent", + "data": { + "foo\"bar": 2 + }, + "valid": false + } + ] + } +] |