Backed out changeset 39e6a7e77cfb (bug 1927808) for causing multiple failures. CLOSED...
[gecko.git] / dom / tests / mochitest / chrome / test_intlUtils_getDisplayNames.html
blob2f4c6e41d11da9eb0ca054eb57f2cfeb3b52f173
1 <!DOCTYPE HTML>
2 <html>
3 <!--
4 https://bugzilla.mozilla.org/show_bug.cgi?id=1341994
5 -->
6 <head>
7 <title>Test for Bug 1341994 </title>
8 <script src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
9 <link rel="stylesheet" type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css">
10 </head>
11 <body>
12 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1341994 ">Mozilla Bug 1341994</a>
13 <p id="display"></p>
14 <div id="content" style="display: none">
15 <script>
17 var testData = [
19 locales: ["en-US"],
20 options: {
21 type: "language",
23 expected: {
24 locale: "en-US",
25 type: "language",
26 style: "long",
27 calendar: "gregory",
28 values: [],
32 locales: ["en-US"],
33 options: {
34 type: "weekday",
35 style: "narrow",
36 calendar: "gregory",
37 keys: [3],
39 expected: {
40 locale: "en-US",
41 type: "weekday",
42 style: "narrow",
43 calendar: "gregory",
44 values: ["W"]
49 locales: ["fr"],
50 options: {
51 type: "dateTimeField",
52 keys: ["year", "day"],
54 expected: {
55 locale: "fr",
56 type: "dateTimeField",
57 style: "long",
58 calendar: "gregory",
59 values: ["année", "jour"],
63 locales: ["fr"],
64 options: {
65 type: "month",
66 keys: [10],
68 expected: {
69 locale: "fr",
70 type: "month",
71 style: "long",
72 calendar: "gregory",
73 values: ["octobre"],
77 locales: ["fr"],
78 options: {
79 type: "weekday",
80 keys: [6],
82 expected: {
83 locale: "fr",
84 type: "weekday",
85 style: "long",
86 calendar: "gregory",
87 values: ["samedi"],
91 locales: ["fr"],
92 options: {
93 type: "dayPeriod",
94 keys: ["pm"],
96 expected: {
97 locale: "fr",
98 type: "dayPeriod",
99 style: "long",
100 calendar: "gregory",
101 values: ["PM"],
106 locales: ["it"],
107 options: {
108 type: "weekday",
109 style: "short",
110 keys: [4],
112 expected: {
113 locale: "it",
114 type: "weekday",
115 style: "short",
116 calendar: "gregory",
117 values: ["gio"],
121 locales: ["it"],
122 options: {
123 type: "month",
124 style: "short",
125 keys: [8],
127 expected: {
128 locale: "it",
129 type: "month",
130 style: "short",
131 calendar: "gregory",
132 values: ["ago"],
136 locales: ["it"],
137 options: {
138 type: "dayPeriod",
139 style: "short",
140 keys: ["am"],
142 expected: {
143 locale: "it",
144 type: "dayPeriod",
145 style: "short",
146 calendar: "gregory",
147 values: ["AM"],
151 locales: ["it"],
152 options: {
153 type: "dateTimeField",
154 style: "short",
155 keys: ["month"],
157 expected: {
158 locale: "it",
159 type: "dateTimeField",
160 style: "short",
161 calendar: "gregory",
162 values: ["mese"],
167 locales: ["ar"],
168 options: {
169 type: "weekday",
170 style: "long",
171 keys: [4],
173 expected: {
174 locale: "ar",
175 type: "weekday",
176 style: "long",
177 calendar: "gregory",
178 values: ["الخميس"],
182 locales: ["ar"],
183 options: {
184 type: "month",
185 style: "long",
186 keys: [8],
188 expected: {
189 locale: "ar",
190 type: "month",
191 style: "long",
192 calendar: "gregory",
193 values: ["أغسطس"],
197 locales: ["ar"],
198 options: {
199 type: "dayPeriod",
200 style: "long",
201 keys: ["am"],
203 expected: {
204 locale: "ar",
205 type: "dayPeriod",
206 style: "long",
207 calendar: "gregory",
208 values: ["ص"],
212 locales: ["ar"],
213 options: {
214 type: "dateTimeField",
215 style: "long",
216 keys: ["month"],
218 expected: {
219 locale: "ar",
220 type: "dateTimeField",
221 style: "long",
222 calendar: "gregory",
223 values: ["الشهر"],
228 locales: ["zh-TW"],
229 options: {
230 type: "weekday",
231 style: "abbreviated",
232 keys: [4],
234 expected: {
235 locale: "zh-TW",
236 type: "weekday",
237 style: "abbreviated",
238 calendar: "gregory",
239 values: ["週四"],
243 locales: ["zh-TW"],
244 options: {
245 type: "month",
246 style: "short",
247 keys: [8],
249 expected: {
250 locale: "zh-TW",
251 type: "month",
252 style: "short",
253 calendar: "gregory",
254 values: ["8月"],
258 locales: ["zh-TW"],
259 options: {
260 type: "dayPeriod",
261 style: "short",
262 keys: ["am"],
264 expected: {
265 locale: "zh-TW",
266 type: "dayPeriod",
267 style: "short",
268 calendar: "gregory",
269 values: ["上午"],
273 locales: ["zh-TW"],
274 options: {
275 type: "dateTimeField",
276 style: "short",
277 keys: ["month"],
279 expected: {
280 locale: "zh-TW",
281 type: "dateTimeField",
282 style: "short",
283 calendar: "gregory",
284 values: ["月"],
288 /* Invalid input */
291 locales: ["en-US"],
292 options: {
293 type: "weekday",
294 style: "",
295 keys: [4]
297 expected: {
298 exception: true
302 locales: ["foo-X"],
303 options: {
304 type: "weekday",
305 keys: [4]
307 expected: {
308 exception: true
312 locales: ["en-US"],
313 options: {
314 keys: [
318 expected: {
319 exception: true
324 let intlUtils = window.intlUtils;
325 ok(intlUtils, "window.intlUtils should exist");
327 for (let { locales, options, expected } of testData) {
328 try {
329 let result = intlUtils.getDisplayNames(locales, options);
331 is(result.locale, expected.locale, "locale is " + expected.locale);
332 is(result.type, expected.type, "type is " + expected.type);
333 is(result.style, expected.style, "style is " + expected.style);
334 is(result.calendar, expected.calendar, "calendar is " + expected.calendar);
336 let values = result.values;
337 let expectedValues = expected.values;
339 is(values.length, expectedValues.length, "values' length is " + expectedValues.length);
341 for (let i = 0; i < expectedValues.length; ++i) {
342 is(values[i], expectedValues[i], "value is " + expectedValues[i]);
344 } catch (e) {
345 ok(expected.exception, "Exception expected : " + e);
349 </script>
350 </body>
351 </html>