60 lines
982 B
JavaScript
60 lines
982 B
JavaScript
|
// 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_nu = [
|
||
|
"invalid",
|
||
|
"abce",
|
||
|
"finance",
|
||
|
"native",
|
||
|
"traditio",
|
||
|
];
|
||
|
|
||
|
// https://tc39.github.io/ecma402/#table-numbering-system-digits
|
||
|
let valid_nu= [
|
||
|
"arab",
|
||
|
"arabext",
|
||
|
"bali",
|
||
|
"beng",
|
||
|
"deva",
|
||
|
"fullwide",
|
||
|
"gujr",
|
||
|
"guru",
|
||
|
"hanidec",
|
||
|
"khmr",
|
||
|
"knda",
|
||
|
"laoo",
|
||
|
"latn",
|
||
|
"limb",
|
||
|
"mlym",
|
||
|
"mong",
|
||
|
"mymr",
|
||
|
"orya",
|
||
|
"tamldec",
|
||
|
"telu",
|
||
|
"thai",
|
||
|
"tibt",
|
||
|
];
|
||
|
|
||
|
let locales = [
|
||
|
"en",
|
||
|
"ar",
|
||
|
];
|
||
|
|
||
|
|
||
|
invalid_nu.forEach(function(nu) {
|
||
|
let nf = new Intl.NumberFormat(["en-u-nu-" + nu + "-fo-obar"]);
|
||
|
assertEquals("en", nf.resolvedOptions().locale);
|
||
|
}
|
||
|
);
|
||
|
|
||
|
valid_nu.forEach(function(nu) {
|
||
|
locales.forEach(function(base) {
|
||
|
let l = base + "-u-nu-" + nu;
|
||
|
let nf = new Intl.NumberFormat([l + "-fo-obar"]);
|
||
|
assertEquals(l, nf.resolvedOptions().locale);
|
||
|
});
|
||
|
}
|
||
|
);
|