Path: blob/main/external/libucl/tests/schema/properties.json
2066 views
[1{2"description": "object properties validation",3"schema": {4"properties": {5"foo": {"type": "integer"},6"bar": {"type": "string"}7}8},9"tests": [10{11"description": "both properties present and valid is valid",12"data": {"foo": 1, "bar": "baz"},13"valid": true14},15{16"description": "one property invalid is invalid",17"data": {"foo": 1, "bar": {}},18"valid": false19},20{21"description": "both properties invalid is invalid",22"data": {"foo": [], "bar": {}},23"valid": false24},25{26"description": "doesn't invalidate other properties",27"data": {"quux": []},28"valid": true29},30{31"description": "ignores non-objects",32"data": [],33"valid": true34}35]36},37{38"description":39"properties, patternProperties, additionalProperties interaction",40"schema": {41"properties": {42"foo": {"type": "array", "maxItems": 3},43"bar": {"type": "array"}44},45"patternProperties": {"f.o": {"minItems": 2}},46"additionalProperties": {"type": "integer"}47},48"tests": [49{50"description": "property validates property",51"data": {"foo": [1, 2]},52"valid": true53},54{55"description": "property invalidates property",56"data": {"foo": [1, 2, 3, 4]},57"valid": false58},59{60"description": "patternProperty invalidates property",61"data": {"foo": []},62"valid": false63},64{65"description": "patternProperty validates nonproperty",66"data": {"fxo": [1, 2]},67"valid": true68},69{70"description": "patternProperty invalidates nonproperty",71"data": {"fxo": []},72"valid": false73},74{75"description": "additionalProperty ignores property",76"data": {"bar": []},77"valid": true78},79{80"description": "additionalProperty validates others",81"data": {"quux": 3},82"valid": true83},84{85"description": "additionalProperty invalidates others",86"data": {"quux": "foo"},87"valid": false88}89]90}91]929394