ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/src/vendor/libucl/dist/tests/schema/patternProperties.json
Revision: 11074
Committed: Tue Jun 19 13:29:00 2018 UTC (5 years, 10 months ago) by laffer1
Content type: application/json
File size: 3365 byte(s)
Log Message:
add libucl

File Contents

# Content
1 [
2 {
3 "description":
4 "patternProperties validates properties matching a regex",
5 "schema": {
6 "patternProperties": {
7 "f.*o": {"type": "integer"}
8 }
9 },
10 "tests": [
11 {
12 "description": "a single valid match is valid",
13 "data": {"foo": 1},
14 "valid": true
15 },
16 {
17 "description": "multiple valid matches is valid",
18 "data": {"foo": 1, "foooooo" : 2},
19 "valid": true
20 },
21 {
22 "description": "a single invalid match is invalid",
23 "data": {"foo": "bar", "fooooo": 2},
24 "valid": false
25 },
26 {
27 "description": "multiple invalid matches is invalid",
28 "data": {"foo": "bar", "foooooo" : "baz"},
29 "valid": false
30 },
31 {
32 "description": "ignores non-objects",
33 "data": 12,
34 "valid": true
35 }
36 ]
37 },
38 {
39 "description": "multiple simultaneous patternProperties are validated",
40 "schema": {
41 "patternProperties": {
42 "a*": {"type": "integer"},
43 "aaa*": {"maximum": 20}
44 }
45 },
46 "tests": [
47 {
48 "description": "a single valid match is valid",
49 "data": {"a": 21},
50 "valid": true
51 },
52 {
53 "description": "a simultaneous match is valid",
54 "data": {"aaaa": 18},
55 "valid": true
56 },
57 {
58 "description": "multiple matches is valid",
59 "data": {"a": 21, "aaaa": 18},
60 "valid": true
61 },
62 {
63 "description": "an invalid due to one is invalid",
64 "data": {"a": "bar"},
65 "valid": false
66 },
67 {
68 "description": "an invalid due to the other is invalid",
69 "data": {"aaaa": 31},
70 "valid": false
71 },
72 {
73 "description": "an invalid due to both is invalid",
74 "data": {"aaa": "foo", "aaaa": 31},
75 "valid": false
76 }
77 ]
78 },
79 {
80 "description": "regexes are not anchored by default and are case sensitive",
81 "schema": {
82 "patternProperties": {
83 "[0-9]{2,}": { "type": "boolean" },
84 "X_": { "type": "string" }
85 }
86 },
87 "tests": [
88 {
89 "description": "non recognized members are ignored",
90 "data": { "answer 1": "42" },
91 "valid": true
92 },
93 {
94 "description": "recognized members are accounted for",
95 "data": { "a31b": null },
96 "valid": false
97 },
98 {
99 "description": "regexes are case sensitive",
100 "data": { "a_x_3": 3 },
101 "valid": true
102 },
103 {
104 "description": "regexes are case sensitive, 2",
105 "data": { "a_X_3": 3 },
106 "valid": false
107 }
108 ]
109 }
110 ]