Name Description Size Coverage
browser.js 0 -
builtin.js --- es5id: 11.1_L15 description: > Tests that Intl.NumberFormat meets the requirements for built-in objects defined by the introduction of chapter 17 of the ECMAScript Language Specification. author: Norbert Lindenberg --- 769 -
casing-numbering-system-options.js --- esid: sec-initializenumberformat description: > Tests that the options numberingSystem are mapped to lower case. author: Caio Lima features: [Array.prototype.includes] --- 1087 -
constructor-compactDisplay-compact.js --- esid: sec-initializenumberformat description: Checks handling of the compactDisplay option to the NumberFormat constructor. info: | InitializeNumberFormat ( numberFormat, locales, options ) 19. Let compactDisplay be ? GetOption(options, "compactDisplay", "string", « "short", "long" », "short"). 20. If notation is "compact", then a. Set numberFormat.[[CompactDisplay]] to compactDisplay. includes: [compareArray.js] features: [Intl.NumberFormat-unified] --- 1263 -
constructor-compactDisplay-no-compact.js --- esid: sec-initializenumberformat description: Checks handling of the compactDisplay option to the NumberFormat constructor. info: | InitializeNumberFormat ( numberFormat, locales, options ) 19. Let compactDisplay be ? GetOption(options, "compactDisplay", "string", « "short", "long" », "short"). 20. If notation is "compact", then a. Set numberFormat.[[CompactDisplay]] to compactDisplay. includes: [compareArray.js] features: [Intl.NumberFormat-unified] --- 1426 -
constructor-default-value.js --- esid: sec-initializenumberformat description: > Tests that the constructor for Intl.NumberFormat uses appropriate default values for its arguments (locales and options). --- 945 -
constructor-locales-arraylike.js --- esid: sec-initializenumberformat description: > Tests that the Intl.NumberFormat constructor accepts Array-like values for the locales argument and treats them well. --- 948 -
constructor-locales-get-tostring.js --- esid: sec-initializenumberformat description: > Tests that Get(O, P) and ToString(arg) are properly called within the constructor for Intl.NumberFormat info: | 9.2.1 CanonicalizeLocaleList ( locales ) 5. Let len be ? ToLength(? Get(O, "length")). 7.a. Let Pk be ToString(k). 7.c.i. Let kValue be ? Get(O, Pk). --- 948 -
constructor-locales-hasproperty.js --- esid: sec-initializenumberformat description: > Tests that HasProperty(O, Pk) is properly called within the constructor for Intl.NumberFormat info: | 9.2.1 CanonicalizeLocaleList ( locales ) 7.b. Let kPresent be ? HasProperty(O, Pk). --- 890 -
constructor-locales-string.js --- esid: sec-initializenumberformat description: > Tests that passing a string value to the Intl.NumberFormat constructor is equivalent to passing an Array containing the same string value. info: | 9.2.1 CanonicalizeLocaleList ( locales ) 3 .If Type(locales) is String, then a. Let O be CreateArrayFromList(« locales »). --- 1089 -
constructor-locales-toobject.js --- esid: sec-initializenumberformat description: > Tests that Intl.NumberFormat contructor converts the locales argument to an object using `ToObject` (7.1.13). info: | 9.2.1 CanonicalizeLocaleList 4.a. Let O be ? ToObject(locales). --- 1440 -
constructor-no-instanceof.js --- esid: sec-intl-numberformat-constructor description: > Tests that the Intl.NumberFormat constructor calls OrdinaryHasInstance instead of the instanceof operator which includes a Symbol.hasInstance lookup and call among other things. info: > ChainNumberFormat ( numberFormat, newTarget, this ) 1. If newTarget is undefined and ? OrdinaryHasInstance(%NumberFormat%, this) is true, then a. Perform ? DefinePropertyOrThrow(this, %Intl%.[[FallbackSymbol]], PropertyDescriptor{ [[Value]]: numberFormat, [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }). b. Return this. --- 923 -
constructor-notation.js --- esid: sec-initializenumberformat description: Checks handling of the notation option to the NumberFormat constructor. info: | InitializeNumberFormat ( numberFormat, locales, options ) 16. Let notation be ? GetOption(options, "notation", "string", « "standard", "scientific", "engineering", "compact" », "standard"). 17. Set numberFormat.[[Notation]] to notation. features: [Intl.NumberFormat-unified] --- 973 -
constructor-numberingSystem-order.js --- esid: sec-initializenumberformat description: > Checks the order of getting "numberingSystem" option in the NumberFormat is between "localeMatcher" and "style" options. info: | InitializeNumberFormat ( _numberFormat_, _locales_, _options_ ) 5. Let _matcher_ be ? GetOption(_options_, `"localeMatcher"`, `"string"`, « `"lookup"`, `"best fit"` », `"best fit"`). ... 7. Let _numberingSystem_ be ? GetOption(_options_, `"numberingSystem"`, `"string"`, *undefined*, *undefined*). ... 17. Let _style_ be ? GetOption(_options_, `"style"`, `"string"`, « `"decimal"`, `"percent"`, `"currency"` », `"decimal"`). includes: [compareArray.js] --- 1277 -
constructor-option-read-order.js --- esid: sec-initializenumberformat description: Checks the order of option read. features: [Intl.NumberFormat-v3] includes: [compareArray.js] --- 1609 -
constructor-options-numberingSystem-invalid.js --- esid: sec-initializenumberformat description: > Checks error cases for the options argument to the NumberFormat constructor. info: | InitializeNumberFormat ( numberFormat, locales, options ) ... 8. If numberingSystem is not undefined, then a. If numberingSystem does not match the Unicode Locale Identifier type nonterminal, throw a RangeError exception. --- 1147 -
constructor-options-roundingMode-invalid.js --- esid: sec-initializenumberformat description: Abrupt completion from invalid values for `roundingMode` features: [Intl.NumberFormat-v3] --- 1109 -
constructor-options-throwing-getters-rounding-increment.js --- esid: sec-initializenumberformat description: > Exception from accessing the "roundingIncrement" option for the NumberFormat constructor should be propagated to the caller features: [Intl.NumberFormat-v3] --- 529 -
constructor-options-throwing-getters-rounding-mode.js --- esid: sec-initializenumberformat description: > Exception from accessing the "roundingMode" option for the NumberFormat constructor should be propagated to the caller features: [Intl.NumberFormat-v3] --- 519 -
constructor-options-throwing-getters-rounding-priority.js --- esid: sec-initializenumberformat description: > Exception from accessing the "roundingPriority" option for the NumberFormat constructor should be propagated to the caller features: [Intl.NumberFormat-v3] --- 527 -
constructor-options-throwing-getters-trailing-zero-display.js --- esid: sec-initializenumberformat description: > Exception from accessing the "trailingZeroDisplay" option for the NumberFormat constructor should be propagated to the caller features: [Intl.NumberFormat-v3] --- 533 -
constructor-options-throwing-getters.js --- esid: sec-initializenumberformat description: Checks the propagation of exceptions from the options for the NumberFormat constructor. --- 824 -
constructor-options-toobject.js --- esid: sec-initializenumberformat description: > Tests that Intl.NumberFormat contructor converts the options argument to an object using `ToObject` (7.1.13). info: | 11.1.2 InitializeNumberFormat 3.a. Let options be ? ToObject(options). --- 1511 -
constructor-order.js --- esid: sec-initializenumberformat description: Checks handling of the unit option with the currency style. info: | SetNumberFormatUnitOptions ( intlObj, options ) 5. Let currency be ? GetOption(options, "currency", "string", undefined, undefined). 6. If currency is not undefined, then a. If the result of IsWellFormedCurrencyCode(currency) is false, throw a RangeError exception. 7. If style is "currency" and currency is undefined, throw a TypeError exception. ... 10. Let unit be ? GetOption(options, "unit", "string", undefined, undefined). 11. If unit is not undefined, then a. If the result of IsWellFormedUnitIdentifier(unit) is false, throw a RangeError exception. 12. If style is "unit" and unit is undefined, throw a TypeError exception. features: [Intl.NumberFormat-unified] --- 1199 -
constructor-roundingIncrement-invalid.js --- esid: sec-initializenumberformat description: Rejects invalid values for roundingIncrement option. features: [Intl.NumberFormat-v3] --- 1603 -
constructor-roundingIncrement.js --- esid: sec-initializenumberformat description: Checks handling of the roundingIncrement option to the NumberFormat constructor. includes: [compareArray.js] features: [Intl.NumberFormat-v3] --- 1262 -
constructor-signDisplay-negative.js --- esid: sec-initializenumberformat description: Checks handling of the compactDisplay option to the NumberFormat constructor. info: | InitializeNumberFormat ( numberFormat, locales, options ) 32. Let signDisplay be ? GetOption(options, "signDisplay", "string", « "auto", "never", "always", "exceptZero", "negative" », "auto"). 33. Set numberFormat.[[SignDisplay]] to signDisplay. includes: [propertyHelper.js] features: [Intl.NumberFormat-v3] --- 869 -
constructor-signDisplay.js --- esid: sec-initializenumberformat description: Checks handling of the compactDisplay option to the NumberFormat constructor. info: | InitializeNumberFormat ( numberFormat, locales, options ) 23. Let signDisplay be ? GetOption(options, "signDisplay", "string", « "auto", "never", "always", "exceptZero" », "auto"). 24. Set numberFormat.[[SignDisplay]] to signDisplay. features: [Intl.NumberFormat-unified] --- 970 -
constructor-trailingZeroDisplay-invalid.js --- esid: sec-initializenumberformat description: Rejects invalid values for trailingZeroDisplay option. features: [Intl.NumberFormat-v3] --- 1069 -
constructor-trailingZeroDisplay.js --- esid: sec-initializenumberformat description: Checks handling of the trailingZeroDisplay option to the NumberFormat constructor. includes: [compareArray.js] features: [Intl.NumberFormat-v3] --- 1135 -
constructor-unit.js --- esid: sec-initializenumberformat description: Checks handling of the unit style. includes: [testIntl.js] features: [Intl.NumberFormat-unified] --- 1794 -
constructor-unitDisplay.js --- esid: sec-initializenumberformat description: Checks handling of the compactDisplay option to the NumberFormat constructor. info: | InitializeNumberFormat ( numberFormat, locales, options ) 23. Let signDisplay be ? GetOption(options, "signDisplay", "string", « "auto", "never", "always", "exceptZero" », "auto"). 24. Set numberFormat.[[SignDisplay]] to signDisplay. features: [Intl.NumberFormat-unified] --- 1822 -
currency-code-invalid.js --- es5id: 6.3.1_b description: Tests that invalid currency codes are not accepted. author: Norbert Lindenberg --- 720 -
currency-code-well-formed.js --- es5id: 6.3.1_a description: Tests that well-formed currency codes are accepted. author: Norbert Lindenberg --- 741 -
currency-digits-nonstandard-notation.js --- esid: sec-intl.numberformat description: > Checks that the special handling for number of fractional digits when formatting currency values in "standard" notation is ignored when using "compact", "engineering", or "scientific" notation. info: | Intl.DateTimeFormat ( [ locales [ , options ] ] ) ... 19. If style is "currency" and "notation" is "standard", then ... 20. Else, a. mnfdDefault be 0. b. If style is "percent", then i. Let mxfdDefault be 0. c. Else, i. Let mxfdDefault be 3. --- 1404 -
currency-digits.js --- esid: sec-intl.numberformat description: > Tests that data for the number of fractional digits when formatting currency is used. info: | 15.1.1 Intl.NumberFormat ([ locales [ , options ]]) 19. If style is "currency" and "notation" is "standard", then a. Let currency be numberFormat.[[Currency]]. b. Let cDigits be CurrencyDigits(currency). c. Let mnfdDefault be cDigits. d. Let mxfdDefault be cDigits. author: Ben Allen --- 913 -
currencyDisplay-unit.js --- esid: sec-setnumberformatunitoptions description: Checks handling of valid values for the numeric option to the NumberFormat constructor. info: | SetNumberFormatUnitOptions ( intlObj, options ) 6. Let currencyDisplay be ? GetOption(options, "currencyDisplay", "string", « "code", "symbol", "narrowSymbol", "name" », "symbol"). 11. If style is "currency", then f. Set intlObj.[[CurrencyDisplay]] to currencyDisplay. features: [Intl.NumberFormat-unified] --- 1351 -
default-minimum-singificant-digits.js --- description: Tests that the default value of minimumSignificantDigits is 1. esid: sec-setnfdigitoptions --- 1080 -
default-options-object-prototype.js --- esid: sec-initializenumberformat description: > Monkey-patching Object.prototype does not change the default options for NumberFormat as a null prototype is used. info: | InitializeNumberFormat ( numberFormat, locales, options ) 1. If _options_ is *undefined*, then 1. Let _options_ be ObjectCreate(*null*). --- 807 -
dft-currency-mnfd-range-check-mxfd.js --- esid: sec-setnfdigitoptions description: > When a currency is used in Intl.NumberFormat and minimumFractionDigits is not provided, maximumFractionDigits should be set as provided. --- 745 -
fraction-digit-options-read-once.js --- esid: sec-setnfdigitoptions description: > The maximum and minimum fraction digits properties should be read from the options bag exactly once from the NumberFormat constructor. info: Regression test for https://bugs.chromium.org/p/v8/issues/detail?id=6015 --- 790 -
ignore-invalid-unicode-ext-values.js --- es5id: 11.2.3_b description: > Tests that Intl.NumberFormat does not accept Unicode locale extension keys and values that are not allowed. author: Norbert Lindenberg --- 1706 -
instance-proto-and-extensible.js --- es5id: 11.1.3 description: > Tests that objects constructed by Intl.NumberFormat have the specified internal properties. author: Norbert Lindenberg --- 662 -
intl-legacy-constructed-symbol-on-unwrap.js --- esid: sec-unwrapnumberformat description: > Tests that [[FallbackSymbol]]'s [[Description]] is "IntlLegacyConstructedSymbol" if normative optional is implemented. author: Yusuke Suzuki features: [intl-normative-optional] --- 1022 -
intl-legacy-constructed-symbol.js --- esid: sec-intl.numberformat description: > Tests that [[FallbackSymbol]]'s [[Description]] is "IntlLegacyConstructedSymbol" if normative optional is implemented. author: Yusuke Suzuki features: [intl-normative-optional] --- 670 -
legacy-regexp-statics-not-modified.js --- es5id: 11.1.1_a description: > Tests that constructing a NumberFormat doesn't create or modify unwanted properties on the RegExp constructor. author: Norbert Lindenberg includes: [testIntl.js] --- 593 -
length.js --- esid: sec-intl.numberformat description: > Intl.NumberFormat.length is 0. info: | Intl.NumberFormat ( [ locales [ , options ] ] ) 17 ECMAScript Standard Built-in Objects: Every built-in function object, including constructors, has a length property whose value is an integer. Unless otherwise specified, this value is equal to the largest number of named arguments shown in the subclause headings for the function description. Optional parameters (which are indicated with brackets: [ ]) or rest parameters (which are shown using the form «...name») are not included in the default argument count. Unless otherwise specified, the length property of a built-in function object has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }. includes: [propertyHelper.js] --- 1185 -
name.js --- esid: sec-Intl.NumberFormat description: > Intl.NumberFormat.name is "NumberFormat". info: | 11.2.1 Intl.NumberFormat ([ locales [ , options ]]) 17 ECMAScript Standard Built-in Objects: Every built-in Function object, including constructors, that is not identified as an anonymous function has a name property whose value is a String. Unless otherwise specified, the name property of a built-in Function object, if it exists, has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }. includes: [propertyHelper.js] --- 879 -
numbering-system-options.js --- esid: sec-initializenumberformat description: > Tests that the options numberingSystem and calendar can be set through either the locale or the options. author: Norbert Lindenberg, Daniel Ehrenberg --- 2509 -
prop-desc.js --- esid: sec-intl.numberformat-intro description: > "NumberFormat" property of Intl. info: | Intl.NumberFormat (...) 7 Requirements for Standard Built-in ECMAScript Objects Unless specified otherwise in this document, the objects, functions, and constructors described in this standard are subject to the generic requirements and restrictions specified for standard built-in ECMAScript objects in the ECMAScript 2018 Language Specification, 9th edition, clause 17, or successor. 17 ECMAScript Standard Built-in Objects: Every other data property described in clauses 18 through 26 and in Annex B.2 has the attributes { [[Writable]]: true, [[Enumerable]]: false, [[Configurable]]: true } unless otherwise specified. includes: [propertyHelper.js] --- 1052 -
proto-from-ctor-realm.js --- esid: sec-intl.numberformat description: Default [[Prototype]] value derived from realm of the NewTarget. info: | Intl.NumberFormat ( [ locales [ , options ] ] ) 1. If NewTarget is undefined, let newTarget be the active function object, else let newTarget be NewTarget. 2. Let numberFormat be ? OrdinaryCreateFromConstructor(newTarget, "%NumberFormatPrototype%", « ... »). ... 6. Return numberFormat. OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ , internalSlotsList ] ) ... 2. Let proto be ? GetPrototypeFromConstructor(constructor, intrinsicDefaultProto). 3. Return ObjectCreate(proto, internalSlotsList). GetPrototypeFromConstructor ( constructor, intrinsicDefaultProto ) ... 3. Let proto be ? Get(constructor, 'prototype'). 4. If Type(proto) is not Object, then a. Let realm be ? GetFunctionRealm(constructor). b. Set proto to realm's intrinsic object named intrinsicDefaultProto. 5. Return proto. features: [cross-realm, Reflect, Symbol] --- 2477 -
prototype -
shell.js 0 -
significant-digits-options-get-sequence.js --- es5id: 11.1.1_32 description: > Tests that the options minimumSignificantDigits and maximumSignificantDigits are read in the right sequence. author: Norbert Lindenberg --- 1484 -
style-unit.js --- esid: sec-setnumberformatunitoptions description: Checks handling of valid values for the numeric option to the RelativeTimeFormat constructor. info: | SetNumberFormatUnitOptions ( intlObj, options ) 3. Let style be ? GetOption(options, "style", "string", « "decimal", "percent", "currency", "unit" », "decimal"). 4. Set intlObj.[[Style]] to style. features: [Intl.NumberFormat-unified] --- 922 -
subclassing.js --- es5id: 11.1.2 description: Tests that Intl.NumberFormat can be subclassed. author: Norbert Lindenberg includes: [compareArray.js] --- 1009 -
supportedLocalesOf -
taint-Object-prototype.js --- es5id: 11.1.1_6 description: > Tests that the behavior of a Record is not affected by adversarial changes to Object.prototype. author: Norbert Lindenberg includes: [testIntl.js] --- 606 -
test-option-currency.js --- es5id: 11.1.1_17 description: Tests that the option currency is processed correctly. author: Norbert Lindenberg --- 2774 -
test-option-currencyDisplay.js --- es5id: 11.1.1_21 description: Tests that the option currencyDisplay is processed correctly. author: Norbert Lindenberg includes: [testIntl.js] --- 587 -
test-option-localeMatcher.js --- es5id: 11.1.1_7 description: Tests that the option localeMatcher is processed correctly. author: Norbert Lindenberg includes: [testIntl.js] --- 419 -
test-option-roundingPriority-mixed-options.js --- esid: sec-intl.numberformat.prototype.format description: Tests that the digits are determined correctly when specifying at same time «"minimumFractionDigits", "maximumFractionDigits", "minimumSignificantDigits", "maximumSignificantDigits"» features: [Intl.NumberFormat-v3] includes: [testIntl.js] --- 7852 -
test-option-roundingPriority.js --- esid: sec-intl.numberformat description: Tests that the option roundingPriority is processed correctly. features: [Intl.NumberFormat-v3] includes: [testIntl.js] --- 455 -
test-option-style.js --- es5id: 11.1.1_15 description: Tests that the option style is processed correctly. author: Norbert Lindenberg includes: [testIntl.js] --- 447 -
test-option-useGrouping-extended.js --- esid: sec-initializenumberformat description: Tests that the option useGrouping is processed correctly. info: | The "Intl.NumberFormat v3" proposal contradicts the behavior required by the latest revision of ECMA402. features: [Intl.NumberFormat-v3] --- 2096 -
test-option-useGrouping.js --- es5id: 11.1.1_34 description: Tests that the option useGrouping is processed correctly. info: | The "Intl.NumberFormat v3" proposal contradicts the behavior required by the latest revision of ECMA402. author: Norbert Lindenberg features: [Intl.NumberFormat-v3] --- 1450 -
this-value-ignored.js --- esid: sec-intl-numberformat-constructor description: > Tests that the this-value is ignored in NumberFormat, if the this-value isn't a NumberFormat instance. author: Norbert Lindenberg includes: [testIntl.js] --- 1231 -
throws-for-currency-style-without-currency-option.js --- es5id: 11.1.1_19 description: > Tests that the currency style can not be used without a specified currency. author: Norbert Lindenberg --- 813 -
throws-for-maximumFractionDigits-over-limit.js --- esid: sec-initializenumberformat description: > Tests that the options maximumFractionDigits limit to the range 0 - 100. info: | InitializeNumberFormat ( numberFormat, locales, options ) 25.a.ii. Set mxfd to ? DefaultNumberOption(mxfd, 0, 100, undefined). DefaultNumberOption ( value, minimum, maximum, fallback ) 3. If value is NaN or less than minimum or greater than maximum, throw a RangeError exception. --- 860 -
throws-for-maximumFractionDigits-under-limit.js --- esid: sec-initializenumberformat description: > Tests that the options maximumFractionDigits limit to the range 0 - 100. info: | InitializeNumberFormat ( numberFormat, locales, options ) 25.a.ii. Set mxfd to ? DefaultNumberOption(mxfd, 0, 100, undefined). DefaultNumberOption ( value, minimum, maximum, fallback ) 3. If value is NaN or less than minimum or greater than maximum, throw a RangeError exception. --- 855 -
throws-for-minimumFractionDigits-over-limit.js --- esid: sec-initializenumberformat description: > Tests that the options minimumFractionDigits limit to the range 0 - 100. info: | InitializeNumberFormat ( numberFormat, locales, options ) 25.a.ii. Set mxfd to ? DefaultNumberOption(mxfd, 0, 100, undefined). DefaultNumberOption ( value, minimum, maximum, fallback ) 3. If value is NaN or less than minimum or greater than maximum, throw a RangeError exception. --- 860 -
throws-for-minimumFractionDigits-under-limit.js --- esid: sec-initializenumberformat description: > Tests that the options minimumFractionDigits limit to the range 0 - 100. info: | InitializeNumberFormat ( numberFormat, locales, options ) 25.a.ii. Set mxfd to ? DefaultNumberOption(mxfd, 0, 100, undefined). DefaultNumberOption ( value, minimum, maximum, fallback ) 3. If value is NaN or less than minimum or greater than maximum, throw a RangeError exception. --- 855 -