xref: /aosp_15_r20/external/json-schema-validator/src/test/suite/tests/draft6/default.json (revision 78c4dd6aa35290980cdcd1623a7e337e8d021c7c)
1[
2    {
3        "description": "invalid type for default",
4        "schema": {
5            "properties": {
6                "foo": {
7                    "type": "integer",
8                    "default": []
9                }
10            }
11        },
12        "tests": [
13            {
14                "description": "valid when property is specified",
15                "data": {"foo": 13},
16                "valid": true
17            },
18            {
19                "description": "still valid when the invalid default is used",
20                "data": {},
21                "valid": true
22            }
23        ]
24    },
25    {
26        "description": "invalid string value for default",
27        "schema": {
28            "properties": {
29                "bar": {
30                    "type": "string",
31                    "minLength": 4,
32                    "default": "bad"
33                }
34            }
35        },
36        "tests": [
37            {
38                "description": "valid when property is specified",
39                "data": {"bar": "good"},
40                "valid": true
41            },
42            {
43                "description": "still valid when the invalid default is used",
44                "data": {},
45                "valid": true
46            }
47        ]
48    },
49    {
50        "description": "the default keyword does not do anything if the property is missing",
51        "schema": {
52            "type": "object",
53            "properties": {
54                "alpha": {
55                    "type": "number",
56                    "maximum": 3,
57                    "default": 5
58                }
59            }
60        },
61        "tests": [
62            {
63                "description": "an explicit property value is checked against maximum (passing)",
64                "data": { "alpha": 1 },
65                "valid": true
66            },
67            {
68                "description": "an explicit property value is checked against maximum (failing)",
69                "data": { "alpha": 5 },
70                "valid": false
71            },
72            {
73                "description": "missing properties are not filled in with the default",
74                "data": {},
75                "valid": true
76            }
77        ]
78    }
79]
80