v8/test/intl/displaynames/resolved-options-v2.js
Frank Tang bd4fa32c87 [intl] Clean up
Remove two flags for feature shipped in m95
--harmony_intl_displaynames_v2
--harmony_intl_more_timezone

Bug: v8:11637, v8:11661
Change-Id: I9432865722664f64c64b5bf7fde5e05e6b324b20
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3292518
Reviewed-by: Shu-yu Guo <syg@chromium.org>
Commit-Queue: Frank Tang <ftang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#78005}
2021-11-20 03:53:26 +00:00

57 lines
2.1 KiB
JavaScript

// Copyright 2021 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 displayNames = new Intl.DisplayNames(undefined, {type: 'language'});
// The default languageDisplay is 'dialect' if type is 'language'
assertEquals('dialect', displayNames.resolvedOptions().languageDisplay);
['region', 'script', 'calendar', 'dateTimeField', 'currency'].forEach(
function(type) {
let dn = new Intl.DisplayNames(undefined, {type});
assertEquals(undefined, dn.resolvedOptions().languageDisplay);
});
const styles = ["long", "short", "narrow"];
const types = ["calendar", "dateTimeField"];
const fallbacks = ["code", "none"];
styles.forEach(function(style) {
types.forEach(function(type) {
assertEquals(style,
(new Intl.DisplayNames(['sr'], {style, type})).resolvedOptions().style);
assertEquals(type,
(new Intl.DisplayNames(['sr'], {style, type})).resolvedOptions().type);
assertEquals(fallbacks[0],
(new Intl.DisplayNames(
['sr'], {style, type})).resolvedOptions().fallback);
fallbacks.forEach(function(fallback) {
assertEquals(style,
(new Intl.DisplayNames(
['sr'], {style, type, fallback})).resolvedOptions().style);
assertEquals(type,
(new Intl.DisplayNames(
['sr'], {style, type, fallback})).resolvedOptions().type);
assertEquals(fallback,
(new Intl.DisplayNames(
['sr'], {style, type, fallback})).resolvedOptions().fallback);
});
});
});
const languageDisplays = ["dialect", "standard"];
styles.forEach(function(style) {
let type = 'language';
languageDisplays.forEach(function(languageDisplay) {
assertEquals(style,
(new Intl.DisplayNames(['sr'], {style, type, languageDisplay}))
.resolvedOptions().style);
assertEquals(type,
(new Intl.DisplayNames(['sr'], {style, type, languageDisplay}))
.resolvedOptions().type);
assertEquals(languageDisplay,
(new Intl.DisplayNames(['sr'], {style, type, languageDisplay}))
.resolvedOptions().languageDisplay);
});
});