89 lines
2.7 KiB
JSON
89 lines
2.7 KiB
JSON
|
[
|
||
|
{
|
||
|
"description":
|
||
|
"additionalProperties being false does not allow other properties",
|
||
|
"schema": {
|
||
|
"properties": {"foo": {}, "bar": {}},
|
||
|
"patternProperties": { "^v": {} },
|
||
|
"additionalProperties": false
|
||
|
},
|
||
|
"tests": [
|
||
|
{
|
||
|
"description": "no additional properties is valid",
|
||
|
"data": {"foo": 1},
|
||
|
"valid": true
|
||
|
},
|
||
|
{
|
||
|
"description": "an additional property is invalid",
|
||
|
"data": {"foo" : 1, "bar" : 2, "quux" : "boom"},
|
||
|
"valid": false
|
||
|
},
|
||
|
{
|
||
|
"description": "ignores non-objects",
|
||
|
"data": [1, 2, 3],
|
||
|
"valid": true
|
||
|
},
|
||
|
{
|
||
|
"description": "patternProperties are not additional properties",
|
||
|
"data": {"foo":1, "vroom": 2},
|
||
|
"valid": true
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"description":
|
||
|
"additionalProperties allows a schema which should validate",
|
||
|
"schema": {
|
||
|
"properties": {"foo": {}, "bar": {}},
|
||
|
"additionalProperties": {"type": "boolean"}
|
||
|
},
|
||
|
"tests": [
|
||
|
{
|
||
|
"description": "no additional properties is valid",
|
||
|
"data": {"foo": 1},
|
||
|
"valid": true
|
||
|
},
|
||
|
{
|
||
|
"description": "an additional valid property is valid",
|
||
|
"data": {"foo" : 1, "bar" : 2, "quux" : true},
|
||
|
"valid": true
|
||
|
},
|
||
|
{
|
||
|
"description": "an additional invalid property is invalid",
|
||
|
"data": {"foo" : 1, "bar" : 2, "quux" : 12},
|
||
|
"valid": false
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"description":
|
||
|
"additionalProperties can exist by itself",
|
||
|
"schema": {
|
||
|
"additionalProperties": {"type": "boolean"}
|
||
|
},
|
||
|
"tests": [
|
||
|
{
|
||
|
"description": "an additional valid property is valid",
|
||
|
"data": {"foo" : true},
|
||
|
"valid": true
|
||
|
},
|
||
|
{
|
||
|
"description": "an additional invalid property is invalid",
|
||
|
"data": {"foo" : 1},
|
||
|
"valid": false
|
||
|
}
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"description": "additionalProperties are allowed by default",
|
||
|
"schema": {"properties": {"foo": {}, "bar": {}}},
|
||
|
"tests": [
|
||
|
{
|
||
|
"description": "additional properties are allowed",
|
||
|
"data": {"foo": 1, "bar": 2, "quux": true},
|
||
|
"valid": true
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
]
|