cuelang.org/go@v0.13.0/encoding/jsonschema/testdata/external/tests/draft4/dependencies.json (about) 1 [ 2 { 3 "description": "dependencies", 4 "schema": { 5 "dependencies": { 6 "bar": [ 7 "foo" 8 ] 9 } 10 }, 11 "tests": [ 12 { 13 "description": "neither", 14 "data": {}, 15 "valid": true 16 }, 17 { 18 "description": "nondependant", 19 "data": { 20 "foo": 1 21 }, 22 "valid": true 23 }, 24 { 25 "description": "with dependency", 26 "data": { 27 "foo": 1, 28 "bar": 2 29 }, 30 "valid": true 31 }, 32 { 33 "description": "missing dependency", 34 "data": { 35 "bar": 2 36 }, 37 "valid": false, 38 "skip": { 39 "v2": "unexpected success", 40 "v3": "unexpected success" 41 } 42 }, 43 { 44 "description": "ignores arrays", 45 "data": [ 46 "bar" 47 ], 48 "valid": true 49 }, 50 { 51 "description": "ignores strings", 52 "data": "foobar", 53 "valid": true 54 }, 55 { 56 "description": "ignores other non-objects", 57 "data": 12, 58 "valid": true 59 } 60 ] 61 }, 62 { 63 "description": "multiple dependencies", 64 "schema": { 65 "dependencies": { 66 "quux": [ 67 "foo", 68 "bar" 69 ] 70 } 71 }, 72 "tests": [ 73 { 74 "description": "neither", 75 "data": {}, 76 "valid": true 77 }, 78 { 79 "description": "nondependants", 80 "data": { 81 "foo": 1, 82 "bar": 2 83 }, 84 "valid": true 85 }, 86 { 87 "description": "with dependencies", 88 "data": { 89 "foo": 1, 90 "bar": 2, 91 "quux": 3 92 }, 93 "valid": true 94 }, 95 { 96 "description": "missing dependency", 97 "data": { 98 "foo": 1, 99 "quux": 2 100 }, 101 "valid": false, 102 "skip": { 103 "v2": "unexpected success", 104 "v3": "unexpected success" 105 } 106 }, 107 { 108 "description": "missing other dependency", 109 "data": { 110 "bar": 1, 111 "quux": 2 112 }, 113 "valid": false, 114 "skip": { 115 "v2": "unexpected success", 116 "v3": "unexpected success" 117 } 118 }, 119 { 120 "description": "missing both dependencies", 121 "data": { 122 "quux": 1 123 }, 124 "valid": false, 125 "skip": { 126 "v2": "unexpected success", 127 "v3": "unexpected success" 128 } 129 } 130 ] 131 }, 132 { 133 "description": "multiple dependencies subschema", 134 "schema": { 135 "dependencies": { 136 "bar": { 137 "properties": { 138 "foo": { 139 "type": "integer" 140 }, 141 "bar": { 142 "type": "integer" 143 } 144 } 145 } 146 } 147 }, 148 "tests": [ 149 { 150 "description": "valid", 151 "data": { 152 "foo": 1, 153 "bar": 2 154 }, 155 "valid": true 156 }, 157 { 158 "description": "no dependency", 159 "data": { 160 "foo": "quux" 161 }, 162 "valid": true 163 }, 164 { 165 "description": "wrong type", 166 "data": { 167 "foo": "quux", 168 "bar": 2 169 }, 170 "valid": false, 171 "skip": { 172 "v2": "unexpected success", 173 "v3": "unexpected success" 174 } 175 }, 176 { 177 "description": "wrong type other", 178 "data": { 179 "foo": 2, 180 "bar": "quux" 181 }, 182 "valid": false, 183 "skip": { 184 "v2": "unexpected success", 185 "v3": "unexpected success" 186 } 187 }, 188 { 189 "description": "wrong type both", 190 "data": { 191 "foo": "quux", 192 "bar": "quux" 193 }, 194 "valid": false, 195 "skip": { 196 "v2": "unexpected success", 197 "v3": "unexpected success" 198 } 199 } 200 ] 201 }, 202 { 203 "description": "dependencies with escaped characters", 204 "schema": { 205 "dependencies": { 206 "foo\nbar": [ 207 "foo\rbar" 208 ], 209 "foo\tbar": { 210 "minProperties": 4 211 }, 212 "foo'bar": { 213 "required": [ 214 "foo\"bar" 215 ] 216 }, 217 "foo\"bar": [ 218 "foo'bar" 219 ] 220 } 221 }, 222 "tests": [ 223 { 224 "description": "valid object 1", 225 "data": { 226 "foo\nbar": 1, 227 "foo\rbar": 2 228 }, 229 "valid": true 230 }, 231 { 232 "description": "valid object 2", 233 "data": { 234 "foo\tbar": 1, 235 "a": 2, 236 "b": 3, 237 "c": 4 238 }, 239 "valid": true 240 }, 241 { 242 "description": "valid object 3", 243 "data": { 244 "foo'bar": 1, 245 "foo\"bar": 2 246 }, 247 "valid": true 248 }, 249 { 250 "description": "invalid object 1", 251 "data": { 252 "foo\nbar": 1, 253 "foo": 2 254 }, 255 "valid": false, 256 "skip": { 257 "v2": "unexpected success", 258 "v3": "unexpected success" 259 } 260 }, 261 { 262 "description": "invalid object 2", 263 "data": { 264 "foo\tbar": 1, 265 "a": 2 266 }, 267 "valid": false, 268 "skip": { 269 "v2": "unexpected success", 270 "v3": "unexpected success" 271 } 272 }, 273 { 274 "description": "invalid object 3", 275 "data": { 276 "foo'bar": 1 277 }, 278 "valid": false, 279 "skip": { 280 "v2": "unexpected success", 281 "v3": "unexpected success" 282 } 283 }, 284 { 285 "description": "invalid object 4", 286 "data": { 287 "foo\"bar": 2 288 }, 289 "valid": false, 290 "skip": { 291 "v2": "unexpected success", 292 "v3": "unexpected success" 293 } 294 } 295 ] 296 }, 297 { 298 "description": "dependent subschema incompatible with root", 299 "schema": { 300 "properties": { 301 "foo": {} 302 }, 303 "dependencies": { 304 "foo": { 305 "properties": { 306 "bar": {} 307 }, 308 "additionalProperties": false 309 } 310 } 311 }, 312 "tests": [ 313 { 314 "description": "matches root", 315 "data": { 316 "foo": 1 317 }, 318 "valid": false, 319 "skip": { 320 "v2": "unexpected success", 321 "v3": "unexpected success" 322 } 323 }, 324 { 325 "description": "matches dependency", 326 "data": { 327 "bar": 1 328 }, 329 "valid": true 330 }, 331 { 332 "description": "matches both", 333 "data": { 334 "foo": 1, 335 "bar": 2 336 }, 337 "valid": false, 338 "skip": { 339 "v2": "unexpected success", 340 "v3": "unexpected success" 341 } 342 }, 343 { 344 "description": "no dependency", 345 "data": { 346 "baz": 1 347 }, 348 "valid": true 349 } 350 ] 351 } 352 ]