Fix a type mismatch on Windows caused by r201738.
[chromium-blink-merge.git] / tools / json_schema_compiler / test / choices.json
blob24683c4c379a36bfb224b1dee9bb1d4129016a89
2   {
3     "namespace": "choices",
4     "types": [
5       {
6         "id": "ChoiceType",
7         "type": "object",
8         "properties": {
9           "integers": {
10             "choices": [
11                {"type": "array", "items": {"type": "integer", "minimum": 0}},
12                {"type": "integer"}
13             ]
14           },
15           "strings": {
16             "choices": [
17                {"type": "array", "items": {"type": "string", "minimum": 0}},
18                {"type": "string"}
19             ],
20             "optional": true
21           }
22         }
23       }
24     ],
25     "functions": [
26       {
27         "name": "takesIntegers",
28         "type": "function",
29         "description": "Takes one or more integers.",
30         "parameters": [
31           {
32             "name": "nums",
33             "choices": [
34                {"type": "array", "items": {"type": "integer", "minimum": 0}},
35                {"type": "integer"}
36              ]
37           },
38           {
39             "name": "callback",
40             "type": "function",
41             "parameters": []
42           }
43         ]
44       },
45       {
46         "name": "takesIntegersOptional",
47         "type": "function",
48         "description": "Takes one or more integers.",
49         "parameters": [
50           {
51             "name": "nums",
52             "choices": [
53                {"type": "array", "items": {"type": "integer", "minimum": 0}},
54                {"type": "integer"}
55             ],
56             "optional": true
57           },
58           {
59             "name": "callback",
60             "type": "function",
61             "parameters": []
62           }
63         ]
64       },
65       {
66         "name": "objectWithChoices",
67         "type": "function",
68         "description": "Takes an object with one or more strings and optional integer(s).",
69         "parameters": [
70           {
71             "type": "object",
72             "name": "stringInfo",
73             "properties": {
74                "strings": {
75                  "description": "One or more tab indices to highlight.",
76                  "choices": [
77                    {"type": "array", "items": {"type": "string", "minimum": 0}},
78                    {"type": "string"}
79                  ]
80                },
81                "integers": {
82                  "description": "One or more tab indices to highlight.",
83                  "choices": [
84                    {"type": "array", "items": {"type": "integer", "minimum": 0}},
85                    {"type": "integer"}
86                  ],
87                  "optional": true
88                }
89              }
90            },
91           {
92             "name": "callback",
93             "type": "function",
94             "parameters": []
95           }
96         ]
97       },
98       {
99         "name": "returnChoices",
100         "type": "function",
101         "description": "Gives back a string. Or not.",
102         "parameters": [
103           {
104             "name": "callback",
105             "type": "function",
106             "parameters": [
107               {
108                 "name": "result",
109                 "choices": [
110                    {"type": "array", "items": {"type": "integer", "minimum": 0}},
111                    {"type": "integer"}
112                  ],
113                 "description": "Some integers."
114               }
115             ]
116           }
117         ]
118       },
119       {
120         "name": "returnMultipleChoices",
121         "type": "function",
122         "description": "Gives back two values where each is an integer or a list of integers.",
123         "parameters": [
124           {
125             "name": "callback",
126             "type": "function",
127             "parameters": [
128               {
129                 "name": "firstResult",
130                 "choices": [
131                    {"type": "array", "items": {"type": "integer", "minimum": 0}},
132                    {"type": "integer"}
133                  ],
134                 "description": "Some integers."
135               },
136               {
137                 "name": "secondResult",
138                 "choices": [
139                    {"type": "array", "items": {"type": "integer", "minimum": 0}},
140                    {"type": "integer"}
141                  ],
142                 "description": "Some integers."
143               }
144             ]
145           }
146         ]
147       }
148     ]
149   }