From e845e21bf5587150678631a6a784881b4ecbeb07 Mon Sep 17 00:00:00 2001 From: Rick Waldron Date: Fri, 11 May 2018 15:37:52 -0400 Subject: [PATCH] Intl.Locale: minor fixups (#1554) - fix mixed up test & info - add Symbol feature - maximize length is 0 - maximize configurability is true --- .../Locale/invalid-tag-throws-symbol.js | 2 +- test/intl402/Locale/prop-desc.js | 25 ++++++++++++------- .../Locale/prototype/maximize/length.js | 2 +- .../Locale/prototype/maximize/prop-desc.js | 8 +++--- 4 files changed, 22 insertions(+), 15 deletions(-) diff --git a/test/intl402/Locale/invalid-tag-throws-symbol.js b/test/intl402/Locale/invalid-tag-throws-symbol.js index a56882e47b..d99264671d 100644 --- a/test/intl402/Locale/invalid-tag-throws-symbol.js +++ b/test/intl402/Locale/invalid-tag-throws-symbol.js @@ -9,7 +9,7 @@ info: | Intl.Locale( tag [, options] ) 7. If Type(tag) is not String or Object, throw a TypeError exception. -features: [Intl.Locale] +features: [Intl.Locale, Symbol] ---*/ assert.throws(TypeError, function() { diff --git a/test/intl402/Locale/prop-desc.js b/test/intl402/Locale/prop-desc.js index 7be47a352c..53e108314b 100644 --- a/test/intl402/Locale/prop-desc.js +++ b/test/intl402/Locale/prop-desc.js @@ -4,23 +4,30 @@ /*--- esid: sec-intl.locale description: > - The value of the [[Prototype]] internal slot of the Intl.Locale constructor is the - intrinsic object %FunctionPrototype%. + "Locale" property of Intl. info: | - The value of Intl.Locale.prototype is %LocalePrototype%. + Intl.Locale (...) - This property has the attributes - { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }. + 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] features: [Intl.Locale] ---*/ -assert.sameValue(typeof Intl.Locale, "function", "typeof Intl.Locale is function"); - verifyProperty(Intl, "Locale", { value: Intl.Locale, - writable: false, + writable: true, enumerable: false, - configurable: false, + configurable: true, }); diff --git a/test/intl402/Locale/prototype/maximize/length.js b/test/intl402/Locale/prototype/maximize/length.js index dc59be0d57..3d874b02e8 100644 --- a/test/intl402/Locale/prototype/maximize/length.js +++ b/test/intl402/Locale/prototype/maximize/length.js @@ -15,7 +15,7 @@ features: [Intl.Locale] ---*/ verifyProperty(Intl.Locale.prototype.maximize, 'length', { - value: 1, + value: 0, writable: false, enumerable: false, configurable: true diff --git a/test/intl402/Locale/prototype/maximize/prop-desc.js b/test/intl402/Locale/prototype/maximize/prop-desc.js index c5ff64d6e4..0dc72e02f8 100644 --- a/test/intl402/Locale/prototype/maximize/prop-desc.js +++ b/test/intl402/Locale/prototype/maximize/prop-desc.js @@ -16,14 +16,14 @@ features: [Intl.Locale] ---*/ assert.sameValue( - typeof Intl.Locale.prototype.maximize, - 'function', - "typeof Intl.Locale.prototype.maximize is function" + typeof Intl.Locale.prototype.maximize, + 'function', + 'typeof Intl.Locale.prototype.maximize is function' ); verifyProperty(Intl.Locale.prototype, 'maximize', { writable: true, enumerable: false, - configurable: false, + configurable: true, });