tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

alias-and-parent-locales.js (1287B)


      1 // |reftest| skip-if(!this.hasOwnProperty('Intl'))
      2 
      3 // Ensure alias and parent locales are correctly picked up when calling into ICU.
      4 
      5 // "zh-HK" is an alias to "zh-Hant-HK", so display names should default to
      6 // traditional instead of simplified characters.
      7 {
      8  const zh_Hant = new Intl.DisplayNames("zh-Hant", {type: "region"});
      9  const zh_Hans = new Intl.DisplayNames("zh-Hans", {type: "region"});
     10  const zh_HK = new Intl.DisplayNames("zh-HK", {type: "region"});
     11 
     12  // We assume traditional and simplified have different outputs.
     13  assertEq(zh_Hant.of("US") === zh_Hans.of("US"), false);
     14 
     15  // "zh-HK" should use traditional characters.
     16  assertEq(zh_HK.of("US"), zh_Hant.of("US"));
     17 }
     18 
     19 // The parent locale of "en-AU" is "en-001" and not "en" (because "en" actually means "en-US").
     20 {
     21  const en = new Intl.DisplayNames("en", {type: "language"});
     22  const en_001 = new Intl.DisplayNames("en-001", {type: "language"});
     23  const en_AU = new Intl.DisplayNames("en-AU", {type: "language"});
     24 
     25  // We assume "en" and "en-001" have different outputs.
     26  assertEq(en.of("nds-NL") === en_001.of("nds-NL"), false);
     27 
     28  // "en-AU" should have the same output as "en-001".
     29  assertEq(en_AU.of("nds-NL"), en_001.of("nds-NL"));
     30 }
     31 
     32 if (typeof reportCompare === "function")
     33  reportCompare(true, true);