Name Description Size
browser.js 0
builtin.js --- es5id: 12.1_L15 description: > Tests that Intl.DateTimeFormat meets the requirements for built-in objects defined by the introduction of chapter 17 of the ECMAScript Language Specification. author: Norbert Lindenberg --- 777
canonicalize-calendar.js --- esid: sec-intl.datetimeformat description: Calendar IDs are canonicalized locale: [en, en-u-ca-islamic-civil] --- 958
casing-numbering-system-calendar-options.js --- esid: sec-createdatetimeformat description: > Tests that the options numberingSystem and calendar are mapped to lower case properly. author: Caio Lima features: [Array.prototype.includes] --- 1783
constructor-calendar-numberingSystem-order.js --- esid: sec-createdatetimeformat description: > Checks the order of getting "calendar" and "numberingSystem" options in the DateTimeFormat is between "localeMatcher" and "hour12" options. info: | 5. Let _matcher_ be ? GetOption(_options_, `"localeMatcher"`, ~string~, « `"lookup"`, `"best fit"` », `"best fit"`). ... 7. Let _calendar_ be ? GetOption(_options_, `"calendar"`, ~string~ , ~empty~, *undefined*). ... 10. Let _numberingSystem_ be ? GetOption(_options_, `"numberingSystem"`, ~string~, ~empty~, *undefined*). ... 13. Let _hour12_ be ? GetOption(_options_, `"hour12"`, ~boolean~, ~empty~, *undefined*). includes: [compareArray.js] --- 1370
constructor-default-value.js --- esid: sec-createdatetimeformat description: > Tests that the constructor for Intl.DateTimeFormat uses appropriate default values for its arguments (locales and options). --- 855
constructor-invalid-offset-timezone.js --- esid: sec-createdatetimeformat description: Tests that invalid offset time zones are rejected. --- 783
constructor-no-instanceof.js --- esid: sec-intl-datetimeformat-constructor description: > Tests that the Intl.DateTimeFormat constructor calls OrdinaryHasInstance instead of the instanceof operator which includes a Symbol.hasInstance lookup and call among other things. info: > ChainDateTimeFormat ( dateTimeFormat, newTarget, this ) 1. If newTarget is undefined and ? OrdinaryHasInstance(%DateTimeFormat%, this) is true, then a. Perform ? DefinePropertyOrThrow(this, %Intl%.[[FallbackSymbol]], PropertyDescriptor{ [[Value]]: dateTimeFormat, [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }). b. Return this. --- 939
constructor-options-calendar-invalid.js --- esid: sec-createdatetimeformat description: > Checks error cases for the options argument to the DateTimeFormat constructor. info: | CreateDateTimeFormat ( dateTimeFormat, locales, options, required, defaults ) ... 8. If calendar is not undefined, then a. If calendar does not match the Unicode Locale Identifier type nonterminal, throw a RangeError exception. --- 1136
constructor-options-dateStyle-invalid.js --- esid: sec-createdatetimeformat description: > Checks error cases for the options argument to the DateTimeFormat constructor. info: | CreateDateTimeFormat ( dateTimeFormat, locales, options, required, defaults ) ... 39. Let dateStyle be ? GetOption(options, "dateStyle", "string", « "full", "long", "medium", "short" », undefined). features: [Intl.DateTimeFormat-datetimestyle] --- 871
constructor-options-dateStyle-valid.js --- esid: sec-createdatetimeformat description: > Checks handling of the options argument to the DateTimeFormat constructor. info: | CreateDateTimeFormat ( dateTimeFormat, locales, options, required, defaults ) ... 39. Let dateStyle be ? GetOption(options, "dateStyle", "string", « "full", "long", "medium", "short" », undefined). 40. If dateStyle is not undefined, set dateTimeFormat.[[DateStyle]] to dateStyle. features: [Intl.DateTimeFormat-datetimestyle] --- 1306
constructor-options-dayPeriod-invalid.js --- esid: sec-createdatetimeformat description: > Checks error cases for the options argument to the DateTimeFormat constructor. info: | [[DayPeriod]] `"dayPeriod"` `"narrow"`, `"short"`, `"long"` CreateDateTimeFormat ( dateTimeFormat, locales, options, required, defaults ) ... features: [Intl.DateTimeFormat-dayPeriod] --- 803
constructor-options-dayPeriod-valid.js --- esid: sec-createdatetimeformat description: > Checks handling of the options argument to the DateTimeFormat constructor. info: | [[DayPeriod]] `"dayPeriod"` `"narrow"`, `"short"`, `"long"` CreateDateTimeFormat ( dateTimeFormat, locales, options, required, defaults ) ... features: [Intl.DateTimeFormat-dayPeriod] --- 1138
constructor-options-fractionalSecondDigits-invalid.js --- esid: sec-createdatetimeformat description: > Checks error cases for the options argument to the DateTimeFormat constructor. info: | CreateDateTimeFormat ( dateTimeFormat, locales, options, required, defaults ) ... 37. For each row of Table 7, except the header row, in table order, do a. Let prop be the name given in the Property column of the row. b. If prop is "fractionalSecondDigits", then i. Let value be ? GetNumberOption(options, "fractionalSecondDigits", 1, 3, undefined). features: [Intl.DateTimeFormat-fractionalSecondDigits] --- 1146
constructor-options-fractionalSecondDigits-valid.js --- esid: sec-createdatetimeformat description: > Checks handling of the options argument to the DateTimeFormat constructor. info: | CreateDateTimeFormat ( dateTimeFormat, locales, options, required, defaults ) ... 37. For each row of Table 7, except the header row, in table order, do a. Let prop be the name given in the Property column of the row. b. If prop is "fractionalSecondDigits", then i. Let value be ? GetNumberOption(options, "fractionalSecondDigits", 1, 3, undefined). features: [Intl.DateTimeFormat-fractionalSecondDigits] --- 1396
constructor-options-invalid-explicit-components.js --- esid: sec-createdatetimeformat description: > Verifies that constructor throws when dateStyle is combined with explicit format components. info: | CreateDateTimeFormat ( newTarget, locales, options, required, defaults ) ... 39. Let dateStyle be ? GetOption(options, "dateStyle", string, « "full", "long", "medium", "short" », undefined). 40. Set dateTimeFormat.[[DateStyle]] to dateStyle. 41. Let timeStyle be ? GetOption(options, "timeStyle", string, « "full", "long", "medium", "short" », undefined). 42. Set dateTimeFormat.[[TimeStyle]] to timeStyle. 43. If dateStyle is not undefined or timeStyle is not undefined, then a. If hasExplicitFormatComponents is true, then i. Throw a TypeError exception. --- 2726
constructor-options-numberingSystem-invalid.js --- esid: sec-createdatetimeformat description: > Checks error cases for the options argument to the DateTimeFormat constructor. info: | CreateDateTimeFormat ( dateTimeFormat, locales, options, required, defaults ) ... 27. If numberingSystem is not undefined, then a. If numberingSystem does not match the Unicode Locale Identifier type nonterminal, throw a RangeError exception. --- 1171
constructor-options-order-dayPeriod.js --- esid: sec-createdatetimeformat description: Checks the order of getting options of 'dayPeriod' for the DateTimeFormat constructor. info: | CreateDateTimeFormat ( newTarget, locales, options, required, defaults ) ... 36. For each row of Table 7, except the header row, in table order, do a. Let prop be the name given in the Property column of the row. b. If prop is "fractionalSecondDigits", then i. Let value be ? GetNumberOption(options, "fractionalSecondDigits", 1, 3, undefined). c. Else, i. Let values be a List whose elements are the strings given in the Values column of the row. ii. Let value be ? GetOption(options, prop, string, values, undefined). d. Set formatOptions.[[<prop>]] to value. ... includes: [compareArray.js] features: [Intl.DateTimeFormat-dayPeriod] --- 1458
constructor-options-order-fractionalSecondDigits.js --- esid: sec-createdatetimeformat description: Checks the order of getting options of 'fractionalSecondDigits' for the DateTimeFormat constructor. info: | CreateDateTimeFormat ( newTarget, locales, options, required, defaults ) ... 4. Let matcher be ? GetOption(options, "localeMatcher", "string", « "lookup", "best fit" », "best fit"). ... 36. For each row of Table 7, except the header row, in table order, do a. Let prop be the name given in the Property column of the row. b. If prop is "fractionalSecondDigits", then i. Let value be ? GetNumberOption(options, "fractionalSecondDigits", 1, 3, undefined). c. Else, i. Let values be a List whose elements are the strings given in the Values column of the row. ii. Let value be ? GetOption(options, prop, string, values, undefined). d. Set formatOptions.[[<prop>]] to value. 37. Let matcher be ? GetOption(options, "formatMatcher", "string", « "basic", "best fit" », "best fit"). ... includes: [compareArray.js] features: [Intl.DateTimeFormat-fractionalSecondDigits] --- 2143
constructor-options-order-timedate-style.js --- esid: sec-createdatetimeformat description: Checks the order of getting options for the DateTimeFormat constructor. includes: [compareArray.js] features: [Intl.DateTimeFormat-datetimestyle] --- 2204
constructor-options-order.js --- esid: sec-createdatetimeformat description: Checks the order of getting options for the DateTimeFormat constructor. includes: [compareArray.js] --- 1857
constructor-options-style-conflict.js --- esid: sec-createdatetimeformat description: > Conflicting properties of dateStyle/timeStyle must be rejected with a TypeError for the options argument to the DateTimeFormat constructor. info: | InitializeDateTimeFormat ( dateTimeFormat, locales, options ) ... 43. If dateStyle is not undefined or timeStyle is not undefined, then a. If hasExplicitFormatComponents is true, then i. Throw a TypeError exception. b. If required is date and timeStyle is not undefined, then i. Throw a TypeError exception. c. If required is time and dateStyle is not undefined, then i. Throw a TypeError exception. --- 1698
constructor-options-throwing-getters-dayPeriod.js --- esid: sec-createdatetimeformat description: Checks the propagation of exceptions from the options for the DateTimeFormat constructor. features: [Intl.DateTimeFormat-dayPeriod] --- 639
constructor-options-throwing-getters-fractionalSecondDigits.js --- esid: sec-createdatetimeformat description: Checks the propagation of exceptions from the options for the DateTimeFormat constructor. features: [Intl.DateTimeFormat-fractionalSecondDigits] --- 665
constructor-options-throwing-getters-timedate-style.js --- esid: sec-createdatetimeformat description: Checks the propagation of exceptions from the options for the DateTimeFormat constructor. features: [Intl.DateTimeFormat-datetimestyle] --- 820
constructor-options-throwing-getters.js --- esid: sec-createdatetimeformat description: Checks the propagation of exceptions from the options for the DateTimeFormat constructor. --- 756
constructor-options-timeStyle-invalid.js --- esid: sec-createdatetimeformat description: > Checks error cases for the options argument to the DateTimeFormat constructor. info: | CreateDateTimeFormat ( dateTimeFormat, locales, options, required, defaults ) ... 41. Let timeStyle be ? GetOption(options, "timeStyle", "string", « "full", "long", "medium", "short" », undefined). features: [Intl.DateTimeFormat-datetimestyle] --- 871
constructor-options-timeStyle-valid.js --- esid: sec-createdatetimeformat description: > Checks handling of the options argument to the DateTimeFormat constructor. info: | CreateDateTimeFormat ( dateTimeFormat, locales, options, required, default ) ... 41. Let timeStyle be ? GetOption(options, "timeStyle", string, « "full", "long", "medium", "short" », undefined). 42. Set dateTimeFormat.[[TimeStyle]] to timeStyle. features: [Intl.DateTimeFormat-datetimestyle] --- 1271
constructor-options-timeZoneName-invalid.js --- esid: sec-createdatetimeformat description: > Invalid values for the `timeZoneName` option of the DateTimeFormat constructor features: [Intl.DateTimeFormat-extend-timezonename] --- 935
constructor-options-timeZoneName-valid.js --- esid: sec-createdatetimeformat description: > Valid values for the `timeZoneName` option of the DateTimeFormat constructor features: [Intl.DateTimeFormat-extend-timezonename] --- 1169
constructor-options-toobject.js --- esid: sec-createdatetimeformat description: > Tests that Intl.DateTimeFormat contructor converts the options argument to an object using `ToObject` (7.1.13). --- 1335
date-time-options.js --- es5id: 12.1.1_TDTO description: > Tests that the set of options for the date and time components is processed correctly. author: Norbert Lindenberg includes: [testIntl.js] --- 5007
default-options-object-prototype.js --- esid: sec-todatetimeoptions description: > Monkey-patching Object.prototype does not change the default options for DateTimeFormat as a null prototype is used. info: | ToDateTimeOptions ( options, required, defaults ) 1. If options is undefined, let options be null; otherwise let options be ? ToObject(options). 1. Let options be ObjectCreate(options). --- 753
ignore-invalid-unicode-ext-values.js --- es5id: 12.2.3_b description: > Tests that Intl.DateTimeFormat does not accept Unicode locale extension keys and values that are not allowed. author: Norbert Lindenberg --- 1892
instance-proto-and-extensible.js --- es5id: 12.1.3 description: > Tests that objects constructed by Intl.DateTimeFormat have the specified internal properties. author: Norbert Lindenberg --- 674
intl-legacy-constructed-symbol-on-unwrap.js --- esid: sec-unwrapdatetimeformat description: > Tests that [[FallbackSymbol]]'s [[Description]] is "IntlLegacyConstructedSymbol" if normative optional is implemented. author: Yusuke Suzuki features: [intl-normative-optional] --- 1030
intl-legacy-constructed-symbol.js --- esid: sec-intl.datetimeformat description: > Tests that [[FallbackSymbol]]'s [[Description]] is "IntlLegacyConstructedSymbol" if normative optional is implemented. author: Yusuke Suzuki features: [intl-normative-optional] --- 676
legacy-regexp-statics-not-modified.js --- es5id: 12.1.1_a description: > Tests that constructing a DateTimeFormat doesn't create or modify unwanted properties on the RegExp constructor. author: Norbert Lindenberg includes: [testIntl.js] --- 586
length.js --- esid: sec-intl.datetimeformat description: > Intl.DateTimeFormat.length is 0. info: | Intl.DateTimeFormat ( [ 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] --- 1146
name.js --- esid: sec-Intl.DateTimeFormat description: > Intl.DateTimeFormat.name is "DateTimeFormat". info: | 12.2.1 Intl.DateTimeFormat ([ 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] --- 892
numbering-system-calendar-options.js --- esid: sec-createdatetimeformat description: > Tests that the options numberingSystem and calendar can be set through either the locale or the options. author: Norbert Lindenberg, Daniel Ehrenberg --- 2773
offset-timezone-no-unicode-minus-sign.js --- esid: sec-createdatetimeformat description: > A valid offset time zone identifier may not include U+2212 MINUS SIGN --- 530
prop-desc.js --- esid: sec-intl.datetimeformat-intro description: > "DateTimeFormat" property of Intl. info: | Intl.DateTimeFormat (...) 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] --- 1061
proto-from-ctor-realm.js --- esid: sec-intl.datetimeformat description: Default [[Prototype]] value derived from realm of the NewTarget. info: | Intl.DateTimeFormat ( [ locales [ , options ] ] ) 1. If NewTarget is undefined, let newTarget be the active function object, else let newTarget be NewTarget. 2. Let dateTimeFormat be ? OrdinaryCreateFromConstructor(newTarget, "%DateTimeFormatPrototype%", « ... »). ... 6. Return dateTimeFormat. 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] --- 2525
prototype
required-date-time-formats.js --- es5id: 12.2.3_c description: > Tests that Intl.DateTimeFormat provides the required date-time format component subsets. author: Norbert Lindenberg includes: [testIntl.js] --- 2109
shell.js 0
subclassing.js --- es5id: 12.1.2 description: Tests that Intl.DateTimeFormat can be subclassed. author: Norbert Lindenberg includes: [compareArray.js] --- 1060
supportedLocalesOf
taint-Object-prototype-date-time-components.js --- es5id: 12.1.1_22 description: > Tests that the behavior of a Record is not affected by adversarial changes to Object.prototype. author: Norbert Lindenberg includes: [testIntl.js] --- 676
taint-Object-prototype-dayPeriod.js --- esid: sec-createdatetimeformat description: > Tests that the behavior of a Record is not affected by adversarial changes to Object.prototype. includes: [testIntl.js] features: [Intl.DateTimeFormat-dayPeriod] --- 626
taint-Object-prototype-fractionalSecondDigits.js --- esid: sec-createdatetimeformat description: > Tests that the behavior of a Record is not affected by adversarial changes to Object.prototype. includes: [testIntl.js] features: [Intl.DateTimeFormat-fractionalSecondDigits] --- 653
taint-Object-prototype.js --- es5id: 12.1.1_5 description: > Tests that the behavior of a Record is not affected by adversarial changes to Object.prototype. author: Norbert Lindenberg includes: [testIntl.js] --- 610
test-option-date-time-components.js --- es5id: 12.1.1_23 description: > Tests that the options for the date and time components are processed correctly. author: Norbert Lindenberg includes: [testIntl.js] --- 521
test-option-formatMatcher.js --- es5id: 12.1.1_25 description: Tests that the option formatMatcher is processed correctly. author: Norbert Lindenberg includes: [testIntl.js] --- 421
test-option-hour12.js --- es5id: 12.1.1_18 description: Tests that the option hour12 is processed correctly. author: Norbert Lindenberg includes: [testIntl.js] --- 533
test-option-localeMatcher.js --- es5id: 12.1.1_6 description: Tests that the option localeMatcher is processed correctly. author: Norbert Lindenberg includes: [testIntl.js] --- 421
this-value-ignored.js --- esid: sec-intl-datetimeformat-constructor description: > Tests that the this-value is ignored in DateTimeFormat, if the this-value isn't a DateTimeFormat instance. author: Norbert Lindenberg includes: [testIntl.js] --- 1247
timezone-case-insensitive.js --- esid: sec-initializedatetimeformat description: Time zone identifiers are case-normalized --- 13606
timezone-invalid.js --- es5id: 6.4_b description: Tests that invalid time zone names are not accepted. author: Norbert Lindenberg --- 892
timezone-legacy-non-iana.js --- esid: sec-initializedatetimeformat description: Only IANA time zone identifiers are allowed. --- 806
timezone-not-canonicalized.js --- esid: sec-initializedatetimeformat description: Time zone identifiers are not canonicalized before storing in internal slots --- 916
timezone-utc.js --- es5id: 6.4_a description: Tests that valid time zone names are accepted. author: Norbert Lindenberg --- 682