From e845e21bf5587150678631a6a784881b4ecbeb07 Mon Sep 17 00:00:00 2001
From: Rick Waldron <waldron.rick@gmail.com>
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,
 });
 
-- 
GitLab