Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/pkg
Path: blob/main/external/libucl/tests/schema/allOf.json
2066 views
1
[
2
{
3
"description": "allOf",
4
"schema": {
5
"allOf": [
6
{
7
"properties": {
8
"bar": {"type": "integer"}
9
},
10
"required": ["bar"]
11
},
12
{
13
"properties": {
14
"foo": {"type": "string"}
15
},
16
"required": ["foo"]
17
}
18
]
19
},
20
"tests": [
21
{
22
"description": "allOf",
23
"data": {"foo": "baz", "bar": 2},
24
"valid": true
25
},
26
{
27
"description": "mismatch second",
28
"data": {"foo": "baz"},
29
"valid": false
30
},
31
{
32
"description": "mismatch first",
33
"data": {"bar": 2},
34
"valid": false
35
},
36
{
37
"description": "wrong type",
38
"data": {"foo": "baz", "bar": "quux"},
39
"valid": false
40
}
41
]
42
},
43
{
44
"description": "allOf with base schema",
45
"schema": {
46
"properties": {"bar": {"type": "integer"}},
47
"required": ["bar"],
48
"allOf" : [
49
{
50
"properties": {
51
"foo": {"type": "string"}
52
},
53
"required": ["foo"]
54
},
55
{
56
"properties": {
57
"baz": {"type": "null"}
58
},
59
"required": ["baz"]
60
}
61
]
62
},
63
"tests": [
64
{
65
"description": "valid",
66
"data": {"foo": "quux", "bar": 2, "baz": null},
67
"valid": true
68
},
69
{
70
"description": "mismatch base schema",
71
"data": {"foo": "quux", "baz": null},
72
"valid": false
73
},
74
{
75
"description": "mismatch first allOf",
76
"data": {"bar": 2, "baz": null},
77
"valid": false
78
},
79
{
80
"description": "mismatch second allOf",
81
"data": {"foo": "quux", "bar": 2},
82
"valid": false
83
},
84
{
85
"description": "mismatch both",
86
"data": {"bar": 2},
87
"valid": false
88
}
89
]
90
},
91
{
92
"description": "allOf simple types",
93
"schema": {
94
"allOf": [
95
{"maximum": 30},
96
{"minimum": 20}
97
]
98
},
99
"tests": [
100
{
101
"description": "valid",
102
"data": 25,
103
"valid": true
104
},
105
{
106
"description": "mismatch one",
107
"data": 35,
108
"valid": false
109
}
110
]
111
}
112
]
113
114