mirror of https://github.com/tc39/test262.git
41 lines
1.3 KiB
JavaScript
41 lines
1.3 KiB
JavaScript
// Copyright 2018 Igalia, S.L. All rights reserved.
|
|
// This code is governed by the BSD license found in the LICENSE file.
|
|
|
|
/*---
|
|
esid: sec-setnumberformatunitoptions
|
|
description: Checks handling of valid values for the numeric option to the RelativeTimeFormat constructor.
|
|
info: |
|
|
SetNumberFormatUnitOptions ( intlObj, options )
|
|
|
|
6. Let currencyDisplay be ? GetOption(options, "currencyDisplay", "string", « "code", "symbol", "narrow-symbol", "name" », "symbol").
|
|
11. If style is "currency", then
|
|
f. Set intlObj.[[CurrencyDisplay]] to currencyDisplay.
|
|
|
|
features: [Intl.NumberFormat-unified]
|
|
---*/
|
|
|
|
const validOptions = [
|
|
[undefined, "symbol"],
|
|
["narrow-symbol", "narrow-symbol"],
|
|
[{ toString() { return "narrow-symbol"; } }, "narrow-symbol"],
|
|
];
|
|
|
|
for (const [validOption, expected] of validOptions) {
|
|
const nf = new Intl.NumberFormat([], {
|
|
"style": "currency",
|
|
"currency": "EUR",
|
|
"currencyDisplay": validOption,
|
|
});
|
|
const resolvedOptions = nf.resolvedOptions();
|
|
assert.sameValue(resolvedOptions.currencyDisplay, expected);
|
|
}
|
|
|
|
for (const [validOption] of validOptions) {
|
|
const nf = new Intl.NumberFormat([], {
|
|
"style": "percent",
|
|
"currencyDisplay": validOption,
|
|
});
|
|
const resolvedOptions = nf.resolvedOptions();
|
|
assert.sameValue(resolvedOptions.currencyDisplay, undefined);
|
|
}
|