|
3 | 3 | "description": "unevaluatedProperties true", |
4 | 4 | "schema": { |
5 | 5 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
6 | | - "type": "object", |
7 | 6 | "unevaluatedProperties": true |
8 | 7 | }, |
9 | 8 | "tests": [ |
|
25 | 24 | "description": "unevaluatedProperties schema", |
26 | 25 | "schema": { |
27 | 26 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
28 | | - "type": "object", |
29 | 27 | "unevaluatedProperties": { |
30 | 28 | "type": "string", |
31 | 29 | "minLength": 3 |
|
57 | 55 | "description": "unevaluatedProperties false", |
58 | 56 | "schema": { |
59 | 57 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
60 | | - "type": "object", |
61 | 58 | "unevaluatedProperties": false |
62 | 59 | }, |
63 | 60 | "tests": [ |
|
79 | 76 | "description": "unevaluatedProperties with adjacent properties", |
80 | 77 | "schema": { |
81 | 78 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
82 | | - "type": "object", |
83 | 79 | "properties": { |
84 | 80 | "foo": { "type": "string" } |
85 | 81 | }, |
|
107 | 103 | "description": "unevaluatedProperties with adjacent patternProperties", |
108 | 104 | "schema": { |
109 | 105 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
110 | | - "type": "object", |
111 | 106 | "patternProperties": { |
112 | 107 | "^foo": { "type": "string" } |
113 | 108 | }, |
|
135 | 130 | "description": "unevaluatedProperties with adjacent additionalProperties", |
136 | 131 | "schema": { |
137 | 132 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
138 | | - "type": "object", |
139 | 133 | "properties": { |
140 | 134 | "foo": { "type": "string" } |
141 | 135 | }, |
|
189 | 183 | "description": "unevaluatedProperties with nested properties", |
190 | 184 | "schema": { |
191 | 185 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
192 | | - "type": "object", |
193 | 186 | "properties": { |
194 | 187 | "foo": { "type": "string" } |
195 | 188 | }, |
|
226 | 219 | "description": "unevaluatedProperties with nested patternProperties", |
227 | 220 | "schema": { |
228 | 221 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
229 | | - "type": "object", |
230 | 222 | "properties": { |
231 | 223 | "foo": { "type": "string" } |
232 | 224 | }, |
|
263 | 255 | "description": "unevaluatedProperties with nested additionalProperties", |
264 | 256 | "schema": { |
265 | 257 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
266 | | - "type": "object", |
267 | 258 | "properties": { |
268 | 259 | "foo": { "type": "string" } |
269 | 260 | }, |
|
296 | 287 | "description": "unevaluatedProperties with nested unevaluatedProperties", |
297 | 288 | "schema": { |
298 | 289 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
299 | | - "type": "object", |
300 | 290 | "properties": { |
301 | 291 | "foo": { "type": "string" } |
302 | 292 | }, |
|
332 | 322 | "description": "unevaluatedProperties with anyOf", |
333 | 323 | "schema": { |
334 | 324 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
335 | | - "type": "object", |
336 | 325 | "properties": { |
337 | 326 | "foo": { "type": "string" } |
338 | 327 | }, |
|
401 | 390 | "description": "unevaluatedProperties with oneOf", |
402 | 391 | "schema": { |
403 | 392 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
404 | | - "type": "object", |
405 | 393 | "properties": { |
406 | 394 | "foo": { "type": "string" } |
407 | 395 | }, |
|
445 | 433 | "description": "unevaluatedProperties with not", |
446 | 434 | "schema": { |
447 | 435 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
448 | | - "type": "object", |
449 | 436 | "properties": { |
450 | 437 | "foo": { "type": "string" } |
451 | 438 | }, |
|
474 | 461 | "description": "unevaluatedProperties with if/then/else", |
475 | 462 | "schema": { |
476 | 463 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
477 | | - "type": "object", |
478 | 464 | "if": { |
479 | 465 | "properties": { |
480 | 466 | "foo": { "const": "then" } |
|
534 | 520 | "description": "unevaluatedProperties with if/then/else, then not defined", |
535 | 521 | "schema": { |
536 | 522 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
537 | | - "type": "object", |
538 | 523 | "if": { |
539 | 524 | "properties": { |
540 | 525 | "foo": { "const": "then" } |
|
588 | 573 | "description": "unevaluatedProperties with if/then/else, else not defined", |
589 | 574 | "schema": { |
590 | 575 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
591 | | - "type": "object", |
592 | 576 | "if": { |
593 | 577 | "properties": { |
594 | 578 | "foo": { "const": "then" } |
|
642 | 626 | "description": "unevaluatedProperties with dependentSchemas", |
643 | 627 | "schema": { |
644 | 628 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
645 | | - "type": "object", |
646 | 629 | "properties": { |
647 | 630 | "foo": { "type": "string" } |
648 | 631 | }, |
|
678 | 661 | "description": "unevaluatedProperties with boolean schemas", |
679 | 662 | "schema": { |
680 | 663 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
681 | | - "type": "object", |
682 | 664 | "properties": { |
683 | 665 | "foo": { "type": "string" } |
684 | 666 | }, |
|
706 | 688 | "description": "unevaluatedProperties with $ref", |
707 | 689 | "schema": { |
708 | 690 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
709 | | - "type": "object", |
710 | 691 | "$ref": "#/$defs/bar", |
711 | 692 | "properties": { |
712 | 693 | "foo": { "type": "string" } |
|
744 | 725 | "description": "unevaluatedProperties before $ref", |
745 | 726 | "schema": { |
746 | 727 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
747 | | - "type": "object", |
748 | 728 | "unevaluatedProperties": false, |
749 | 729 | "properties": { |
750 | 730 | "foo": { "type": "string" } |
|
798 | 778 |
|
799 | 779 | "$comment": "unevaluatedProperties comes first so it's more likely to catch bugs with implementations that are sensitive to keyword ordering", |
800 | 780 | "unevaluatedProperties": false, |
801 | | - "type": "object", |
802 | 781 | "properties": { |
803 | 782 | "foo": { "type": "string" } |
804 | 783 | }, |
|
887 | 866 | "description": "nested unevaluatedProperties, outer false, inner true, properties outside", |
888 | 867 | "schema": { |
889 | 868 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
890 | | - "type": "object", |
891 | 869 | "properties": { |
892 | 870 | "foo": { "type": "string" } |
893 | 871 | }, |
|
920 | 898 | "description": "nested unevaluatedProperties, outer false, inner true, properties inside", |
921 | 899 | "schema": { |
922 | 900 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
923 | | - "type": "object", |
924 | 901 | "allOf": [ |
925 | 902 | { |
926 | 903 | "properties": { |
|
953 | 930 | "description": "nested unevaluatedProperties, outer true, inner false, properties outside", |
954 | 931 | "schema": { |
955 | 932 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
956 | | - "type": "object", |
957 | 933 | "properties": { |
958 | 934 | "foo": { "type": "string" } |
959 | 935 | }, |
|
986 | 962 | "description": "nested unevaluatedProperties, outer true, inner false, properties inside", |
987 | 963 | "schema": { |
988 | 964 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
989 | | - "type": "object", |
990 | 965 | "allOf": [ |
991 | 966 | { |
992 | 967 | "properties": { |
|
1019 | 994 | "description": "cousin unevaluatedProperties, true and false, true with properties", |
1020 | 995 | "schema": { |
1021 | 996 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
1022 | | - "type": "object", |
1023 | 997 | "allOf": [ |
1024 | 998 | { |
1025 | 999 | "properties": { |
|
1054 | 1028 | "description": "cousin unevaluatedProperties, true and false, false with properties", |
1055 | 1029 | "schema": { |
1056 | 1030 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
1057 | | - "type": "object", |
1058 | 1031 | "allOf": [ |
1059 | 1032 | { |
1060 | 1033 | "unevaluatedProperties": true |
|
1090 | 1063 | "comment": "see https://stackoverflow.com/questions/66936884/deeply-nested-unevaluatedproperties-and-their-expectations", |
1091 | 1064 | "schema": { |
1092 | 1065 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
1093 | | - "type": "object", |
1094 | 1066 | "properties": { |
1095 | 1067 | "foo": { |
1096 | | - "type": "object", |
1097 | 1068 | "properties": { |
1098 | 1069 | "bar": { |
1099 | 1070 | "type": "string" |
|
1142 | 1113 | "description": "in-place applicator siblings, allOf has unevaluated", |
1143 | 1114 | "schema": { |
1144 | 1115 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
1145 | | - "type": "object", |
1146 | 1116 | "allOf": [ |
1147 | 1117 | { |
1148 | 1118 | "properties": { |
|
1188 | 1158 | "description": "in-place applicator siblings, anyOf has unevaluated", |
1189 | 1159 | "schema": { |
1190 | 1160 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
1191 | | - "type": "object", |
1192 | 1161 | "allOf": [ |
1193 | 1162 | { |
1194 | 1163 | "properties": { |
|
1234 | 1203 | "description": "unevaluatedProperties + single cyclic ref", |
1235 | 1204 | "schema": { |
1236 | 1205 | "$schema": "https://json-schema.org/draft/2020-12/schema", |
1237 | | - "type": "object", |
1238 | 1206 | "properties": { |
1239 | 1207 | "x": { "$ref": "#" } |
1240 | 1208 | }, |
|
0 commit comments