tor-browser

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

currencyDisplay-unit.js (1351B)


      1 // Copyright 2018 Igalia, S.L. All rights reserved.
      2 // This code is governed by the BSD license found in the LICENSE file.
      3 
      4 /*---
      5 esid: sec-setnumberformatunitoptions
      6 description: Checks handling of valid values for the numeric option to the NumberFormat constructor.
      7 info: |
      8    SetNumberFormatUnitOptions ( intlObj, options )
      9 
     10    6. Let currencyDisplay be ? GetOption(options, "currencyDisplay", "string", « "code", "symbol", "narrowSymbol", "name" », "symbol").
     11    11. If style is "currency", then
     12        f. Set intlObj.[[CurrencyDisplay]] to currencyDisplay.
     13 
     14 features: [Intl.NumberFormat-unified]
     15 ---*/
     16 
     17 const validOptions = [
     18  [undefined, "symbol"],
     19  ["narrowSymbol", "narrowSymbol"],
     20  [{ toString() { return "narrowSymbol"; } }, "narrowSymbol"],
     21 ];
     22 
     23 for (const [validOption, expected] of validOptions) {
     24  const nf = new Intl.NumberFormat([], {
     25    "style": "currency",
     26    "currency": "EUR",
     27    "currencyDisplay": validOption,
     28  });
     29  const resolvedOptions = nf.resolvedOptions();
     30  assert.sameValue(resolvedOptions.currencyDisplay, expected);
     31 }
     32 
     33 for (const [validOption] of validOptions) {
     34  const nf = new Intl.NumberFormat([], {
     35    "style": "percent",
     36    "currencyDisplay": validOption,
     37  });
     38  const resolvedOptions = nf.resolvedOptions();
     39  assert.sameValue(resolvedOptions.currencyDisplay, undefined);
     40 }
     41 
     42 reportCompare(0, 0);