3 "description": "extends",
5 "properties": {"bar": {"type": "integer", "required": true}},
8 "foo": {"type": "string", "required": true}
14 "description": "extends",
15 "data": {"foo": "baz", "bar": 2},
19 "description": "mismatch extends",
20 "data": {"foo": "baz"},
24 "description": "mismatch extended",
29 "description": "wrong type",
30 "data": {"foo": "baz", "bar": "quux"},
36 "description": "multiple extends",
38 "properties": {"bar": {"type": "integer", "required": true}},
42 "foo": {"type": "string", "required": true}
47 "baz": {"type": "null", "required": true}
54 "description": "valid",
55 "data": {"foo": "quux", "bar": 2, "baz": null},
59 "description": "mismatch first extends",
60 "data": {"bar": 2, "baz": null},
64 "description": "mismatch second extends",
65 "data": {"foo": "quux", "bar": 2},
69 "description": "mismatch both",
76 "description": "extends simple types",
79 "extends": {"maximum": 30}
83 "description": "valid",
88 "description": "mismatch extends",