From eefc23df50c71e0b76a13446ce34779aad6d6d33 Mon Sep 17 00:00:00 2001 From: Mike Pennisi Date: Tue, 26 May 2015 10:53:26 -0400 Subject: [PATCH 1/2] Move tests for iterator prototype methods Define tests for intrinsic Iterators under the appropriate subdirectory of `built-ins`. --- .../Symbol.toStringTag/property-descriptor.js} | 0 .../Symbol.toStringTag/value-direct.js} | 0 .../Symbol.toStringTag/value-from-to-string.js} | 0 .../next/Float32Array.js} | 1 + .../next/Float64Array.js} | 1 + .../next/Int16Array.js} | 1 + .../next/Int32Array.js} | 1 + .../next/Int8Array.js} | 1 + .../next/Uint16Array.js} | 1 + .../next/Uint32Array.js} | 1 + .../next/Uint8Array.js} | 1 + .../next/Uint8ClampedArray.js} | 1 + .../next/args-mapped-expansion-after-exhaustion.js} | 0 .../next/args-mapped-expansion-before-exhaustion.js} | 0 .../ArrayIteratorPrototype/next/args-mapped-iteration.js} | 0 .../next/args-mapped-truncation-before-exhaustion.js} | 0 .../next/args-unmapped-expansion-after-exhaustion.js} | 0 .../next/args-unmapped-expansion-before-exhaustion.js} | 0 .../ArrayIteratorPrototype/next/args-unmapped-iteration.js} | 0 .../next/args-unmapped-truncation-before-exhaustion.js} | 0 .../next/iteration-mutable.js} | 0 .../next/iteration.js} | 0 .../next/non-own-slots.js} | 0 .../next/property-descriptor.js} | 0 .../Symbol.toStringTag.js} | 0 .../next/iteration-mutable.js} | 0 .../next/iteration.js} | 0 .../next/no-map-data.js} | 0 .../Symbol.toStringTag.js} | 0 .../next/iteration-mutable.js} | 0 .../next-iteration.js => SetIteratorPrototype/next/iteration.js} | 0 .../next/no-set-data.js} | 0 .../Symbol.toStringTag.js | 0 .../Symbol.iterator => StringIteratorPrototype}/ancestry.js | 0 .../next}/next-iteration-surrogate-pairs.js | 0 .../next}/next-iteration.js | 0 .../next}/next-missing-internal-slots.js | 0 37 files changed, 9 insertions(+) rename test/built-ins/{Array/prototype/Symbol.iterator/Symbol.toStringTag-property-descriptor.js => ArrayIteratorPrototype/Symbol.toStringTag/property-descriptor.js} (100%) rename test/built-ins/{Array/prototype/Symbol.iterator/Symbol.toStringTag-value-direct.js => ArrayIteratorPrototype/Symbol.toStringTag/value-direct.js} (100%) rename test/built-ins/{Array/prototype/Symbol.iterator/Symbol.toStringTag-value-from-to-string.js => ArrayIteratorPrototype/Symbol.toStringTag/value-from-to-string.js} (100%) rename test/built-ins/{Float32Array/prototype/Symbol.iterator/next-iteration.js => ArrayIteratorPrototype/next/Float32Array.js} (98%) rename test/built-ins/{Float64Array/prototype/Symbol.iterator/next-iteration.js => ArrayIteratorPrototype/next/Float64Array.js} (98%) rename test/built-ins/{Int16Array/prototype/Symbol.iterator/next-iteration.js => ArrayIteratorPrototype/next/Int16Array.js} (98%) rename test/built-ins/{Int32Array/prototype/Symbol.iterator/next-iteration.js => ArrayIteratorPrototype/next/Int32Array.js} (98%) rename test/built-ins/{Int8Array/prototype/Symbol.iterator/next-iteration.js => ArrayIteratorPrototype/next/Int8Array.js} (98%) rename test/built-ins/{Uint16Array/prototype/Symbol.iterator/next-iteration.js => ArrayIteratorPrototype/next/Uint16Array.js} (98%) rename test/built-ins/{Uint32Array/prototype/Symbol.iterator/next-iteration.js => ArrayIteratorPrototype/next/Uint32Array.js} (98%) rename test/built-ins/{Uint8Array/prototype/Symbol.iterator/next-iteration.js => ArrayIteratorPrototype/next/Uint8Array.js} (98%) rename test/built-ins/{Uint8ClampedArray/prototype/Symbol.iterator/next-iteration.js => ArrayIteratorPrototype/next/Uint8ClampedArray.js} (98%) rename test/{language/arguments-object/mapped/Symbol.iterator/next-expansion-after-exhaustion.js => built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-after-exhaustion.js} (100%) rename test/{language/arguments-object/mapped/Symbol.iterator/next-expansion-before-exhaustion.js => built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-before-exhaustion.js} (100%) rename test/{language/arguments-object/mapped/Symbol.iterator/next-iteration.js => built-ins/ArrayIteratorPrototype/next/args-mapped-iteration.js} (100%) rename test/{language/arguments-object/mapped/Symbol.iterator/next-truncation-before-exhaustion.js => built-ins/ArrayIteratorPrototype/next/args-mapped-truncation-before-exhaustion.js} (100%) rename test/{language/arguments-object/unmapped/Symbol.iterator/next-expansion-after-exhaustion.js => built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-after-exhaustion.js} (100%) rename test/{language/arguments-object/unmapped/Symbol.iterator/next-expansion-before-exhaustion.js => built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-before-exhaustion.js} (100%) rename test/{language/arguments-object/unmapped/Symbol.iterator/next-iteration.js => built-ins/ArrayIteratorPrototype/next/args-unmapped-iteration.js} (100%) rename test/{language/arguments-object/unmapped/Symbol.iterator/next-truncation-before-exhaustion.js => built-ins/ArrayIteratorPrototype/next/args-unmapped-truncation-before-exhaustion.js} (100%) rename test/built-ins/{Array/prototype/Symbol.iterator/next-iteration-mutable.js => ArrayIteratorPrototype/next/iteration-mutable.js} (100%) rename test/built-ins/{Array/prototype/Symbol.iterator/next-iteration.js => ArrayIteratorPrototype/next/iteration.js} (100%) rename test/built-ins/{Array/prototype/Symbol.iterator/next-non-own-slots.js => ArrayIteratorPrototype/next/non-own-slots.js} (100%) rename test/built-ins/{Array/prototype/Symbol.iterator/next-property-descriptor.js => ArrayIteratorPrototype/next/property-descriptor.js} (100%) rename test/built-ins/{Map/prototype/Symbol.iterator-Symbol.toStringTag-property-descriptor.js => MapIteratorPrototype/Symbol.toStringTag.js} (100%) rename test/built-ins/{Map/prototype/Symbol.iterator-next-iteration-mutable.js => MapIteratorPrototype/next/iteration-mutable.js} (100%) rename test/built-ins/{Map/prototype/Symbol.iterator-next-iteration.js => MapIteratorPrototype/next/iteration.js} (100%) rename test/built-ins/{Map/prototype/Symbol.iterator-next-no-map-data.js => MapIteratorPrototype/next/no-map-data.js} (100%) rename test/built-ins/{Set/prototype/Symbol.iterator/toStringTag-property-descriptor.js => SetIteratorPrototype/Symbol.toStringTag.js} (100%) rename test/built-ins/{Set/prototype/Symbol.iterator/next-iteration-mutable.js => SetIteratorPrototype/next/iteration-mutable.js} (100%) rename test/built-ins/{Set/prototype/Symbol.iterator/next-iteration.js => SetIteratorPrototype/next/iteration.js} (100%) rename test/built-ins/{Set/prototype/Symbol.iterator/next-no-set-data.js => SetIteratorPrototype/next/no-set-data.js} (100%) rename test/built-ins/{String/prototype/Symbol.iterator => StringIteratorPrototype}/Symbol.toStringTag.js (100%) rename test/built-ins/{String/prototype/Symbol.iterator => StringIteratorPrototype}/ancestry.js (100%) rename test/built-ins/{String/prototype/Symbol.iterator => StringIteratorPrototype/next}/next-iteration-surrogate-pairs.js (100%) rename test/built-ins/{String/prototype/Symbol.iterator => StringIteratorPrototype/next}/next-iteration.js (100%) rename test/built-ins/{String/prototype/Symbol.iterator => StringIteratorPrototype/next}/next-missing-internal-slots.js (100%) diff --git a/test/built-ins/Array/prototype/Symbol.iterator/Symbol.toStringTag-property-descriptor.js b/test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/property-descriptor.js similarity index 100% rename from test/built-ins/Array/prototype/Symbol.iterator/Symbol.toStringTag-property-descriptor.js rename to test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/property-descriptor.js diff --git a/test/built-ins/Array/prototype/Symbol.iterator/Symbol.toStringTag-value-direct.js b/test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/value-direct.js similarity index 100% rename from test/built-ins/Array/prototype/Symbol.iterator/Symbol.toStringTag-value-direct.js rename to test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/value-direct.js diff --git a/test/built-ins/Array/prototype/Symbol.iterator/Symbol.toStringTag-value-from-to-string.js b/test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/value-from-to-string.js similarity index 100% rename from test/built-ins/Array/prototype/Symbol.iterator/Symbol.toStringTag-value-from-to-string.js rename to test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/value-from-to-string.js diff --git a/test/built-ins/Float32Array/prototype/Symbol.iterator/next-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/Float32Array.js similarity index 98% rename from test/built-ins/Float32Array/prototype/Symbol.iterator/next-iteration.js rename to test/built-ins/ArrayIteratorPrototype/next/Float32Array.js index b933896c4c..37249fd463 100644 --- a/test/built-ins/Float32Array/prototype/Symbol.iterator/next-iteration.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Float32Array.js @@ -5,6 +5,7 @@ es6id: 22.1.5.2.1 description: > Visits each element of the array in order and ceases iteration once all values have been visited. +features: [TypedArray] ---*/ var array = new Float32Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/Float64Array/prototype/Symbol.iterator/next-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/Float64Array.js similarity index 98% rename from test/built-ins/Float64Array/prototype/Symbol.iterator/next-iteration.js rename to test/built-ins/ArrayIteratorPrototype/next/Float64Array.js index ae680af2a0..4522af0e7d 100644 --- a/test/built-ins/Float64Array/prototype/Symbol.iterator/next-iteration.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Float64Array.js @@ -5,6 +5,7 @@ es6id: 22.1.5.2.1 description: > Visits each element of the array in order and ceases iteration once all values have been visited. +features: [TypedArray] ---*/ var array = new Float64Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/Int16Array/prototype/Symbol.iterator/next-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/Int16Array.js similarity index 98% rename from test/built-ins/Int16Array/prototype/Symbol.iterator/next-iteration.js rename to test/built-ins/ArrayIteratorPrototype/next/Int16Array.js index 8b7a765925..9d0d258d7a 100644 --- a/test/built-ins/Int16Array/prototype/Symbol.iterator/next-iteration.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Int16Array.js @@ -5,6 +5,7 @@ es6id: 22.1.5.2.1 description: > Visits each element of the array in order and ceases iteration once all values have been visited. +features: [TypedArray] ---*/ var array = new Int16Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/Int32Array/prototype/Symbol.iterator/next-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/Int32Array.js similarity index 98% rename from test/built-ins/Int32Array/prototype/Symbol.iterator/next-iteration.js rename to test/built-ins/ArrayIteratorPrototype/next/Int32Array.js index 2479fda0cc..129042058a 100644 --- a/test/built-ins/Int32Array/prototype/Symbol.iterator/next-iteration.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Int32Array.js @@ -5,6 +5,7 @@ es6id: 22.1.5.2.1 description: > Visits each element of the array in order and ceases iteration once all values have been visited. +features: [TypedArray] ---*/ var array = new Int32Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/Int8Array/prototype/Symbol.iterator/next-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/Int8Array.js similarity index 98% rename from test/built-ins/Int8Array/prototype/Symbol.iterator/next-iteration.js rename to test/built-ins/ArrayIteratorPrototype/next/Int8Array.js index 38ed8a469d..5cf588117d 100644 --- a/test/built-ins/Int8Array/prototype/Symbol.iterator/next-iteration.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Int8Array.js @@ -5,6 +5,7 @@ es6id: 22.1.5.2.1 description: > Visits each element of the array in order and ceases iteration once all values have been visited. +features: [TypedArray] ---*/ var array = new Int8Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/Uint16Array/prototype/Symbol.iterator/next-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/Uint16Array.js similarity index 98% rename from test/built-ins/Uint16Array/prototype/Symbol.iterator/next-iteration.js rename to test/built-ins/ArrayIteratorPrototype/next/Uint16Array.js index 407904f2b4..e99610769e 100644 --- a/test/built-ins/Uint16Array/prototype/Symbol.iterator/next-iteration.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Uint16Array.js @@ -5,6 +5,7 @@ es6id: 22.1.5.2.1 description: > Visits each element of the array in order and ceases iteration once all values have been visited. +features: [TypedArray] ---*/ var array = new Uint16Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/Uint32Array/prototype/Symbol.iterator/next-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/Uint32Array.js similarity index 98% rename from test/built-ins/Uint32Array/prototype/Symbol.iterator/next-iteration.js rename to test/built-ins/ArrayIteratorPrototype/next/Uint32Array.js index 60b3f42087..360f153e8e 100644 --- a/test/built-ins/Uint32Array/prototype/Symbol.iterator/next-iteration.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Uint32Array.js @@ -5,6 +5,7 @@ es6id: 22.1.5.2.1 description: > Visits each element of the array in order and ceases iteration once all values have been visited. +features: [TypedArray] ---*/ var array = new Uint32Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/Uint8Array/prototype/Symbol.iterator/next-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/Uint8Array.js similarity index 98% rename from test/built-ins/Uint8Array/prototype/Symbol.iterator/next-iteration.js rename to test/built-ins/ArrayIteratorPrototype/next/Uint8Array.js index d385882cbd..c6570cea23 100644 --- a/test/built-ins/Uint8Array/prototype/Symbol.iterator/next-iteration.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Uint8Array.js @@ -5,6 +5,7 @@ es6id: 22.1.5.2.1 description: > Visits each element of the array in order and ceases iteration once all values have been visited. +features: [TypedArray] ---*/ var array = new Uint8Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/Uint8ClampedArray/prototype/Symbol.iterator/next-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/Uint8ClampedArray.js similarity index 98% rename from test/built-ins/Uint8ClampedArray/prototype/Symbol.iterator/next-iteration.js rename to test/built-ins/ArrayIteratorPrototype/next/Uint8ClampedArray.js index 842b5954b3..c01fd3b161 100644 --- a/test/built-ins/Uint8ClampedArray/prototype/Symbol.iterator/next-iteration.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Uint8ClampedArray.js @@ -5,6 +5,7 @@ es6id: 22.1.5.2.1 description: > Visits each element of the array in order and ceases iteration once all values have been visited. +features: [TypedArray] ---*/ var array = new Uint8ClampedArray([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/language/arguments-object/mapped/Symbol.iterator/next-expansion-after-exhaustion.js b/test/built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-after-exhaustion.js similarity index 100% rename from test/language/arguments-object/mapped/Symbol.iterator/next-expansion-after-exhaustion.js rename to test/built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-after-exhaustion.js diff --git a/test/language/arguments-object/mapped/Symbol.iterator/next-expansion-before-exhaustion.js b/test/built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-before-exhaustion.js similarity index 100% rename from test/language/arguments-object/mapped/Symbol.iterator/next-expansion-before-exhaustion.js rename to test/built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-before-exhaustion.js diff --git a/test/language/arguments-object/mapped/Symbol.iterator/next-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/args-mapped-iteration.js similarity index 100% rename from test/language/arguments-object/mapped/Symbol.iterator/next-iteration.js rename to test/built-ins/ArrayIteratorPrototype/next/args-mapped-iteration.js diff --git a/test/language/arguments-object/mapped/Symbol.iterator/next-truncation-before-exhaustion.js b/test/built-ins/ArrayIteratorPrototype/next/args-mapped-truncation-before-exhaustion.js similarity index 100% rename from test/language/arguments-object/mapped/Symbol.iterator/next-truncation-before-exhaustion.js rename to test/built-ins/ArrayIteratorPrototype/next/args-mapped-truncation-before-exhaustion.js diff --git a/test/language/arguments-object/unmapped/Symbol.iterator/next-expansion-after-exhaustion.js b/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-after-exhaustion.js similarity index 100% rename from test/language/arguments-object/unmapped/Symbol.iterator/next-expansion-after-exhaustion.js rename to test/built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-after-exhaustion.js diff --git a/test/language/arguments-object/unmapped/Symbol.iterator/next-expansion-before-exhaustion.js b/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-before-exhaustion.js similarity index 100% rename from test/language/arguments-object/unmapped/Symbol.iterator/next-expansion-before-exhaustion.js rename to test/built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-before-exhaustion.js diff --git a/test/language/arguments-object/unmapped/Symbol.iterator/next-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-iteration.js similarity index 100% rename from test/language/arguments-object/unmapped/Symbol.iterator/next-iteration.js rename to test/built-ins/ArrayIteratorPrototype/next/args-unmapped-iteration.js diff --git a/test/language/arguments-object/unmapped/Symbol.iterator/next-truncation-before-exhaustion.js b/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-truncation-before-exhaustion.js similarity index 100% rename from test/language/arguments-object/unmapped/Symbol.iterator/next-truncation-before-exhaustion.js rename to test/built-ins/ArrayIteratorPrototype/next/args-unmapped-truncation-before-exhaustion.js diff --git a/test/built-ins/Array/prototype/Symbol.iterator/next-iteration-mutable.js b/test/built-ins/ArrayIteratorPrototype/next/iteration-mutable.js similarity index 100% rename from test/built-ins/Array/prototype/Symbol.iterator/next-iteration-mutable.js rename to test/built-ins/ArrayIteratorPrototype/next/iteration-mutable.js diff --git a/test/built-ins/Array/prototype/Symbol.iterator/next-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/iteration.js similarity index 100% rename from test/built-ins/Array/prototype/Symbol.iterator/next-iteration.js rename to test/built-ins/ArrayIteratorPrototype/next/iteration.js diff --git a/test/built-ins/Array/prototype/Symbol.iterator/next-non-own-slots.js b/test/built-ins/ArrayIteratorPrototype/next/non-own-slots.js similarity index 100% rename from test/built-ins/Array/prototype/Symbol.iterator/next-non-own-slots.js rename to test/built-ins/ArrayIteratorPrototype/next/non-own-slots.js diff --git a/test/built-ins/Array/prototype/Symbol.iterator/next-property-descriptor.js b/test/built-ins/ArrayIteratorPrototype/next/property-descriptor.js similarity index 100% rename from test/built-ins/Array/prototype/Symbol.iterator/next-property-descriptor.js rename to test/built-ins/ArrayIteratorPrototype/next/property-descriptor.js diff --git a/test/built-ins/Map/prototype/Symbol.iterator-Symbol.toStringTag-property-descriptor.js b/test/built-ins/MapIteratorPrototype/Symbol.toStringTag.js similarity index 100% rename from test/built-ins/Map/prototype/Symbol.iterator-Symbol.toStringTag-property-descriptor.js rename to test/built-ins/MapIteratorPrototype/Symbol.toStringTag.js diff --git a/test/built-ins/Map/prototype/Symbol.iterator-next-iteration-mutable.js b/test/built-ins/MapIteratorPrototype/next/iteration-mutable.js similarity index 100% rename from test/built-ins/Map/prototype/Symbol.iterator-next-iteration-mutable.js rename to test/built-ins/MapIteratorPrototype/next/iteration-mutable.js diff --git a/test/built-ins/Map/prototype/Symbol.iterator-next-iteration.js b/test/built-ins/MapIteratorPrototype/next/iteration.js similarity index 100% rename from test/built-ins/Map/prototype/Symbol.iterator-next-iteration.js rename to test/built-ins/MapIteratorPrototype/next/iteration.js diff --git a/test/built-ins/Map/prototype/Symbol.iterator-next-no-map-data.js b/test/built-ins/MapIteratorPrototype/next/no-map-data.js similarity index 100% rename from test/built-ins/Map/prototype/Symbol.iterator-next-no-map-data.js rename to test/built-ins/MapIteratorPrototype/next/no-map-data.js diff --git a/test/built-ins/Set/prototype/Symbol.iterator/toStringTag-property-descriptor.js b/test/built-ins/SetIteratorPrototype/Symbol.toStringTag.js similarity index 100% rename from test/built-ins/Set/prototype/Symbol.iterator/toStringTag-property-descriptor.js rename to test/built-ins/SetIteratorPrototype/Symbol.toStringTag.js diff --git a/test/built-ins/Set/prototype/Symbol.iterator/next-iteration-mutable.js b/test/built-ins/SetIteratorPrototype/next/iteration-mutable.js similarity index 100% rename from test/built-ins/Set/prototype/Symbol.iterator/next-iteration-mutable.js rename to test/built-ins/SetIteratorPrototype/next/iteration-mutable.js diff --git a/test/built-ins/Set/prototype/Symbol.iterator/next-iteration.js b/test/built-ins/SetIteratorPrototype/next/iteration.js similarity index 100% rename from test/built-ins/Set/prototype/Symbol.iterator/next-iteration.js rename to test/built-ins/SetIteratorPrototype/next/iteration.js diff --git a/test/built-ins/Set/prototype/Symbol.iterator/next-no-set-data.js b/test/built-ins/SetIteratorPrototype/next/no-set-data.js similarity index 100% rename from test/built-ins/Set/prototype/Symbol.iterator/next-no-set-data.js rename to test/built-ins/SetIteratorPrototype/next/no-set-data.js diff --git a/test/built-ins/String/prototype/Symbol.iterator/Symbol.toStringTag.js b/test/built-ins/StringIteratorPrototype/Symbol.toStringTag.js similarity index 100% rename from test/built-ins/String/prototype/Symbol.iterator/Symbol.toStringTag.js rename to test/built-ins/StringIteratorPrototype/Symbol.toStringTag.js diff --git a/test/built-ins/String/prototype/Symbol.iterator/ancestry.js b/test/built-ins/StringIteratorPrototype/ancestry.js similarity index 100% rename from test/built-ins/String/prototype/Symbol.iterator/ancestry.js rename to test/built-ins/StringIteratorPrototype/ancestry.js diff --git a/test/built-ins/String/prototype/Symbol.iterator/next-iteration-surrogate-pairs.js b/test/built-ins/StringIteratorPrototype/next/next-iteration-surrogate-pairs.js similarity index 100% rename from test/built-ins/String/prototype/Symbol.iterator/next-iteration-surrogate-pairs.js rename to test/built-ins/StringIteratorPrototype/next/next-iteration-surrogate-pairs.js diff --git a/test/built-ins/String/prototype/Symbol.iterator/next-iteration.js b/test/built-ins/StringIteratorPrototype/next/next-iteration.js similarity index 100% rename from test/built-ins/String/prototype/Symbol.iterator/next-iteration.js rename to test/built-ins/StringIteratorPrototype/next/next-iteration.js diff --git a/test/built-ins/String/prototype/Symbol.iterator/next-missing-internal-slots.js b/test/built-ins/StringIteratorPrototype/next/next-missing-internal-slots.js similarity index 100% rename from test/built-ins/String/prototype/Symbol.iterator/next-missing-internal-slots.js rename to test/built-ins/StringIteratorPrototype/next/next-missing-internal-slots.js From e0387bcee86f844300dd92b8abf3c2f5a95e57d9 Mon Sep 17 00:00:00 2001 From: Mike Pennisi Date: Tue, 26 May 2015 11:05:12 -0400 Subject: [PATCH 2/2] Refactor tests for built-in @@iterator methods Assert the value of the properties and update the test frontmatter to include the `Symbol.iterator` feature. --- .../Array/prototype/Symbol.iterator.js | 20 +++++++++++++++++++ .../Symbol.iterator/property-descriptor.js | 14 ------------- .../Symbol.iterator-property-descriptor.js | 14 ------------- .../Map/prototype/Symbol.iterator.js | 19 ++++++++++++++++++ .../Set/prototype/Symbol.iterator.js | 20 +++++++++++++++++++ .../Symbol.iterator/property-descriptor.js | 14 ------------- ...perty-descriptor.js => Symbol.iterator.js} | 1 + ...perty-descriptor.js => Symbol.iterator.js} | 1 + 8 files changed, 61 insertions(+), 42 deletions(-) create mode 100644 test/built-ins/Array/prototype/Symbol.iterator.js delete mode 100644 test/built-ins/Array/prototype/Symbol.iterator/property-descriptor.js delete mode 100644 test/built-ins/Map/prototype/Symbol.iterator-property-descriptor.js create mode 100644 test/built-ins/Map/prototype/Symbol.iterator.js create mode 100644 test/built-ins/Set/prototype/Symbol.iterator.js delete mode 100644 test/built-ins/Set/prototype/Symbol.iterator/property-descriptor.js rename test/language/arguments-object/mapped/{Symbol.iterator/property-descriptor.js => Symbol.iterator.js} (95%) rename test/language/arguments-object/unmapped/{Symbol.iterator/property-descriptor.js => Symbol.iterator.js} (96%) diff --git a/test/built-ins/Array/prototype/Symbol.iterator.js b/test/built-ins/Array/prototype/Symbol.iterator.js new file mode 100644 index 0000000000..7cdcb81b89 --- /dev/null +++ b/test/built-ins/Array/prototype/Symbol.iterator.js @@ -0,0 +1,20 @@ +// Copyright (C) 2013 the V8 project authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +description: Initial state of the Symbol.iterator property +info: > + The initial value of the @@iterator property is the same function object as + the initial value of the Array.prototype.values property. + + Per ES6 section 17, the method should exist on the Array prototype, and it + should be writable and configurable, but not enumerable. +includes: [propertyHelper.js] +features: [Symbol.iterator] +es6id: 22.1.3.30 +---*/ + +assert.sameValue(Array.prototype[Symbol.iterator], Array.prototype.values); +verifyNotEnumerable(Array.prototype, Symbol.iterator); +verifyWritable(Array.prototype, Symbol.iterator); +verifyConfigurable(Array.prototype, Symbol.iterator); diff --git a/test/built-ins/Array/prototype/Symbol.iterator/property-descriptor.js b/test/built-ins/Array/prototype/Symbol.iterator/property-descriptor.js deleted file mode 100644 index f309b02ac4..0000000000 --- a/test/built-ins/Array/prototype/Symbol.iterator/property-descriptor.js +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright (C) 2013 the V8 project authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- - description: > - The method should exist on the Array prototype, and it should be writable - and configurable, but not enumerable. - includes: [propertyHelper.js] - es6id: 22.1.3.4 - ---*/ - -verifyNotEnumerable(Array.prototype, Symbol.iterator); -verifyWritable(Array.prototype, Symbol.iterator); -verifyConfigurable(Array.prototype, Symbol.iterator); diff --git a/test/built-ins/Map/prototype/Symbol.iterator-property-descriptor.js b/test/built-ins/Map/prototype/Symbol.iterator-property-descriptor.js deleted file mode 100644 index c5e0f8ee3c..0000000000 --- a/test/built-ins/Map/prototype/Symbol.iterator-property-descriptor.js +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright (C) 2014 the V8 project authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- - description: > - The method should exist on the Map prototype, and it should be writable - and configurable, but not enumerable. - includes: [propertyHelper.js] - es6id: 23.1.3.12 - ---*/ - -verifyNotEnumerable(Map.prototype, Symbol.iterator); -verifyWritable(Map.prototype, Symbol.iterator); -verifyConfigurable(Map.prototype, Symbol.iterator); diff --git a/test/built-ins/Map/prototype/Symbol.iterator.js b/test/built-ins/Map/prototype/Symbol.iterator.js new file mode 100644 index 0000000000..3c6a1d6e65 --- /dev/null +++ b/test/built-ins/Map/prototype/Symbol.iterator.js @@ -0,0 +1,19 @@ +// Copyright (C) 2014 the V8 project authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +description: Initial state of the Symbol.iterator property +info: > + The initial value of the @@iterator property is the same function object as + the initial value of the entries property. + + Per ES6 section 17, the method should exist on the Array prototype, and it + should be writable and configurable, but not enumerable. +includes: [propertyHelper.js] +features: [Symbol.iterator] +es6id: 23.1.3.12 +---*/ + +verifyNotEnumerable(Map.prototype, Symbol.iterator); +verifyWritable(Map.prototype, Symbol.iterator); +verifyConfigurable(Map.prototype, Symbol.iterator); diff --git a/test/built-ins/Set/prototype/Symbol.iterator.js b/test/built-ins/Set/prototype/Symbol.iterator.js new file mode 100644 index 0000000000..1ae44d1fc8 --- /dev/null +++ b/test/built-ins/Set/prototype/Symbol.iterator.js @@ -0,0 +1,20 @@ +// Copyright (C) 2014 the V8 project authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +description: Initial state of the Symbol.iterator property +info: > + The initial value of the @@iterator property is the same function object as + the initial value of the values property. + + Per ES6 section 17, the method should exist on the Set prototype, and it + should be writable and configurable, but not enumerable. +includes: [propertyHelper.js] +features: [Symbol.iterator] +es6id: 23.2.3.11 +---*/ + +assert.sameValue(Set.prototype[Symbol.iterator], Set.prototype.values); +verifyNotEnumerable(Set.prototype, Symbol.iterator); +verifyWritable(Set.prototype, Symbol.iterator); +verifyConfigurable(Set.prototype, Symbol.iterator); diff --git a/test/built-ins/Set/prototype/Symbol.iterator/property-descriptor.js b/test/built-ins/Set/prototype/Symbol.iterator/property-descriptor.js deleted file mode 100644 index f41ed26702..0000000000 --- a/test/built-ins/Set/prototype/Symbol.iterator/property-descriptor.js +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright (C) 2014 the V8 project authors. All rights reserved. -// This code is governed by the BSD license found in the LICENSE file. - -/*--- - description: > - The method should exist on the Array prototype, and it should be writable - and configurable, but not enumerable. - includes: [propertyHelper.js] - es6id: 23.2.3.11 - ---*/ - -verifyNotEnumerable(Set.prototype, Symbol.iterator); -verifyWritable(Set.prototype, Symbol.iterator); -verifyConfigurable(Set.prototype, Symbol.iterator); diff --git a/test/language/arguments-object/mapped/Symbol.iterator/property-descriptor.js b/test/language/arguments-object/mapped/Symbol.iterator.js similarity index 95% rename from test/language/arguments-object/mapped/Symbol.iterator/property-descriptor.js rename to test/language/arguments-object/mapped/Symbol.iterator.js index 3eacb7ad6b..3c25176392 100644 --- a/test/language/arguments-object/mapped/Symbol.iterator/property-descriptor.js +++ b/test/language/arguments-object/mapped/Symbol.iterator.js @@ -7,6 +7,7 @@ description: > protocol. includes: [propertyHelper.js] flags: [noStrict] +features: [Symbol.iterator] ---*/ (function() { diff --git a/test/language/arguments-object/unmapped/Symbol.iterator/property-descriptor.js b/test/language/arguments-object/unmapped/Symbol.iterator.js similarity index 96% rename from test/language/arguments-object/unmapped/Symbol.iterator/property-descriptor.js rename to test/language/arguments-object/unmapped/Symbol.iterator.js index a2c37c80b9..0b47c6c899 100644 --- a/test/language/arguments-object/unmapped/Symbol.iterator/property-descriptor.js +++ b/test/language/arguments-object/unmapped/Symbol.iterator.js @@ -7,6 +7,7 @@ description: > protocol. includes: [propertyHelper.js] flags: [noStrict] +features: [Symbol.iterator] ---*/ (function() {