2018-12-14 17:41:51 +00:00
|
|
|
// Copyright 2018 the V8 project authors. All rights reserved.
|
|
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
|
|
// found in the LICENSE file.
|
|
|
|
|
|
|
|
|
|
|
|
let invalid_hc = [
|
|
|
|
"invalid",
|
|
|
|
"abce",
|
|
|
|
"h10",
|
|
|
|
"h13",
|
|
|
|
"h22",
|
|
|
|
"h25",
|
|
|
|
];
|
|
|
|
|
|
|
|
// https://www.unicode.org/repos/cldr/tags/latest/common/bcp47/calendar.xml
|
|
|
|
let valid_hc= [
|
|
|
|
"h11",
|
|
|
|
"h12",
|
|
|
|
"h23",
|
|
|
|
"h24",
|
|
|
|
];
|
|
|
|
|
|
|
|
let locales = [
|
|
|
|
"en",
|
|
|
|
"ar",
|
|
|
|
];
|
|
|
|
|
|
|
|
invalid_hc.forEach(function(hc) {
|
2019-01-25 01:58:39 +00:00
|
|
|
let df = new Intl.DateTimeFormat(
|
|
|
|
["en-u-hc-" + hc + "-fo-obar"], {hour: "2-digit"});
|
2018-12-14 17:41:51 +00:00
|
|
|
assertEquals("en", df.resolvedOptions().locale);
|
|
|
|
}
|
|
|
|
);
|
|
|
|
|
|
|
|
valid_hc.forEach(function(hc) {
|
|
|
|
locales.forEach(function(base) {
|
|
|
|
let l = base + "-u-hc-" + hc;
|
2019-01-25 01:58:39 +00:00
|
|
|
let df = new Intl.DateTimeFormat(
|
|
|
|
[l + "-fo-obar"], {hour: "2-digit"});
|
2018-12-14 17:41:51 +00:00
|
|
|
assertEquals(l, df.resolvedOptions().locale);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
);
|