diff --git a/test/built-ins/Array/from/source-object-iterator-1.js b/test/built-ins/Array/from/source-object-iterator-1.js index 6c65e005f8cc414f51c06a9239f2c222f52149b0..94834b5cf023256ac7e68b5a8a73df5aae5436c2 100644 --- a/test/built-ins/Array/from/source-object-iterator-1.js +++ b/test/built-ins/Array/from/source-object-iterator-1.js @@ -5,6 +5,7 @@ description: Source object has iterator which throws esid: sec-array.from es6id: 22.1.2.1 +features: [Symbol.iterator] ---*/ var array = [ 2, 4, 8, 16, 32, 64, 128 ]; diff --git a/test/built-ins/Array/from/source-object-iterator-2.js b/test/built-ins/Array/from/source-object-iterator-2.js index 0245c2b5fb4e79e729e6979ce5e89c580d1d220f..9bcd57053783dd04c0ffcc3fda61dbb836eefc01 100644 --- a/test/built-ins/Array/from/source-object-iterator-2.js +++ b/test/built-ins/Array/from/source-object-iterator-2.js @@ -5,6 +5,7 @@ description: Source object has iterator esid: sec-array.from es6id: 22.1.2.1 +features: [Symbol.iterator] ---*/ var array = [ 2, 4, 8, 16, 32, 64, 128 ]; diff --git a/test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/value-direct.js b/test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/value-direct.js index f88277442678df051e8e8b5a4cd66e9b3fa8cd8a..a95cdce44466c16b1733b19efafd7beac2fe0a4f 100644 --- a/test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/value-direct.js +++ b/test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/value-direct.js @@ -2,11 +2,12 @@ // This code is governed by the BSD license found in the LICENSE file. /*--- - esid: sec-%arrayiteratorprototype%-@@tostringtag - description: > - The @@toStringTag attribute should be defined directly on the prototype. - es6id: 22.1.5.2.2 - ---*/ +esid: sec-%arrayiteratorprototype%-@@tostringtag +description: > + The @@toStringTag attribute should be defined directly on the prototype. +es6id: 22.1.5.2.2 +features: [Symbol.iterator] +---*/ var ArrayIteratorProto = Object.getPrototypeOf([][Symbol.iterator]()); diff --git a/test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/value-from-to-string.js b/test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/value-from-to-string.js index a0d8f3a9eeb2cccf98b28a14544db4075b84228e..8a47db9fb02223e93dec5ab49f7b135a87083aae 100644 --- a/test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/value-from-to-string.js +++ b/test/built-ins/ArrayIteratorPrototype/Symbol.toStringTag/value-from-to-string.js @@ -2,12 +2,13 @@ // This code is governed by the BSD license found in the LICENSE file. /*--- - esid: sec-%arrayiteratorprototype%-@@tostringtag - description: > - `Object.prototype.toString` should honor the value of the @@toStringTag - attribute. - es6id: 22.1.5.2.2 - ---*/ +esid: sec-%arrayiteratorprototype%-@@tostringtag +description: > + `Object.prototype.toString` should honor the value of the @@toStringTag + attribute. +es6id: 22.1.5.2.2 +features: [Symbol.iterator] +---*/ var iter = [][Symbol.iterator](); diff --git a/test/built-ins/ArrayIteratorPrototype/next/Float32Array.js b/test/built-ins/ArrayIteratorPrototype/next/Float32Array.js index 584d140ca177d69525f9245b4540927f5a5d8f39..6984e24762447de5b1e82d13e88b99a9d07867b9 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/Float32Array.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Float32Array.js @@ -6,7 +6,7 @@ esid: sec-%arrayiteratorprototype%.next description: > Visits each element of the array in order and ceases iteration once all values have been visited. -features: [TypedArray] +features: [Symbol.iterator, TypedArray] ---*/ var array = new Float32Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/ArrayIteratorPrototype/next/Float64Array.js b/test/built-ins/ArrayIteratorPrototype/next/Float64Array.js index 4d50d8862949ac62a68531bbd0d88c0b3b75d455..f0173a349f3dafbce112d1910c2872ea81756358 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/Float64Array.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Float64Array.js @@ -6,7 +6,7 @@ esid: sec-%arrayiteratorprototype%.next description: > Visits each element of the array in order and ceases iteration once all values have been visited. -features: [TypedArray] +features: [Symbol.iterator, TypedArray] ---*/ var array = new Float64Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/ArrayIteratorPrototype/next/Int16Array.js b/test/built-ins/ArrayIteratorPrototype/next/Int16Array.js index 554c55aa0ef4d4c0565087e6ad78bfabdc21a9c7..c0008b5ab1c2f0e818f4f909cde738f5ff542349 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/Int16Array.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Int16Array.js @@ -6,7 +6,7 @@ esid: sec-%arrayiteratorprototype%.next description: > Visits each element of the array in order and ceases iteration once all values have been visited. -features: [TypedArray] +features: [Symbol.iterator, TypedArray] ---*/ var array = new Int16Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/ArrayIteratorPrototype/next/Int32Array.js b/test/built-ins/ArrayIteratorPrototype/next/Int32Array.js index e992bbe2cac823464608d51ddce41c112d56869e..f8a1d4b3798931d93eae828d8f5ab56618847ec4 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/Int32Array.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Int32Array.js @@ -6,7 +6,7 @@ esid: sec-%arrayiteratorprototype%.next description: > Visits each element of the array in order and ceases iteration once all values have been visited. -features: [TypedArray] +features: [Symbol.iterator, TypedArray] ---*/ var array = new Int32Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/ArrayIteratorPrototype/next/Int8Array.js b/test/built-ins/ArrayIteratorPrototype/next/Int8Array.js index fdfb8caccf006f4553da4ad3c85dd106be548a7f..d22477e142271e36a06a9875d8c47f1119da9649 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/Int8Array.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Int8Array.js @@ -6,7 +6,7 @@ esid: sec-%arrayiteratorprototype%.next description: > Visits each element of the array in order and ceases iteration once all values have been visited. -features: [TypedArray] +features: [Symbol.iterator, TypedArray] ---*/ var array = new Int8Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/ArrayIteratorPrototype/next/Uint16Array.js b/test/built-ins/ArrayIteratorPrototype/next/Uint16Array.js index 355f890430229b75fb2c3c49202e258de1db86db..ca9baa84d94fa9bfb9c7be2240b4f116c43e2484 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/Uint16Array.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Uint16Array.js @@ -6,7 +6,7 @@ esid: sec-%arrayiteratorprototype%.next description: > Visits each element of the array in order and ceases iteration once all values have been visited. -features: [TypedArray] +features: [Symbol.iterator, TypedArray] ---*/ var array = new Uint16Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/ArrayIteratorPrototype/next/Uint32Array.js b/test/built-ins/ArrayIteratorPrototype/next/Uint32Array.js index c8ef5fb211b672f48bb30e84ce566e7a4c23f14a..28801acb4822220845979ae2e4b9a530f7dd8fea 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/Uint32Array.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Uint32Array.js @@ -6,7 +6,7 @@ esid: sec-%arrayiteratorprototype%.next description: > Visits each element of the array in order and ceases iteration once all values have been visited. -features: [TypedArray] +features: [Symbol.iterator, TypedArray] ---*/ var array = new Uint32Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/ArrayIteratorPrototype/next/Uint8Array.js b/test/built-ins/ArrayIteratorPrototype/next/Uint8Array.js index 698d032e18304483975740a88d5e615166c071df..dfb5128c82455281f3e9d58e6831c2778480b38e 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/Uint8Array.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Uint8Array.js @@ -6,7 +6,7 @@ esid: sec-%arrayiteratorprototype%.next description: > Visits each element of the array in order and ceases iteration once all values have been visited. -features: [TypedArray] +features: [Symbol.iterator, TypedArray] ---*/ var array = new Uint8Array([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/ArrayIteratorPrototype/next/Uint8ClampedArray.js b/test/built-ins/ArrayIteratorPrototype/next/Uint8ClampedArray.js index 7f8b8d96488d39b9819c5a6cc2cbcfe9e0631cb5..f8098597d96b2c7f2548ffd28755065e647d03a2 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/Uint8ClampedArray.js +++ b/test/built-ins/ArrayIteratorPrototype/next/Uint8ClampedArray.js @@ -6,7 +6,7 @@ esid: sec-%arrayiteratorprototype%.next description: > Visits each element of the array in order and ceases iteration once all values have been visited. -features: [TypedArray] +features: [Symbol.iterator, TypedArray] ---*/ var array = new Uint8ClampedArray([3, 1, 2]); var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-after-exhaustion.js b/test/built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-after-exhaustion.js index 5d2b000a771e44f68f590d71234f25511f2553b6..93ad4d39bc1ffd473333f568b5c16ef76a455b8c 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-after-exhaustion.js +++ b/test/built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-after-exhaustion.js @@ -7,6 +7,7 @@ description: > Once exhausted, iterators for mapped arguments exotic objects should not emit new values added to the object. flags: [noStrict] +features: [Symbol.iterator] ---*/ (function(a, b, c) { diff --git a/test/built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-before-exhaustion.js b/test/built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-before-exhaustion.js index 6919e1b74514734a4029774ed8709769747cfe6f..b87cde4d336b81af74d38588656dd9b88a23a895 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-before-exhaustion.js +++ b/test/built-ins/ArrayIteratorPrototype/next/args-mapped-expansion-before-exhaustion.js @@ -7,6 +7,7 @@ description: > Prior to being exhausted, iterators for mapped arguments exotic objects should honor the insertion of additional argument values. flags: [noStrict] +features: [Symbol.iterator] ---*/ (function(a, b, c) { diff --git a/test/built-ins/ArrayIteratorPrototype/next/args-mapped-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/args-mapped-iteration.js index 36ef786a36c39cff41cc7983f206d41a965a2585..ed94d033601dd247cc022616d90caaed3e4e7874 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/args-mapped-iteration.js +++ b/test/built-ins/ArrayIteratorPrototype/next/args-mapped-iteration.js @@ -7,6 +7,7 @@ description: > Mapped arguments exotic objects should implement the Array iterator protocol. flags: [noStrict] +features: [Symbol.iterator] ---*/ (function(a, b, c) { diff --git a/test/built-ins/ArrayIteratorPrototype/next/args-mapped-truncation-before-exhaustion.js b/test/built-ins/ArrayIteratorPrototype/next/args-mapped-truncation-before-exhaustion.js index 91cd87a09a4ba0abf21adf6c1e89627c5aa314f2..6af6427a159a3f1e1ed3d074031509385974654a 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/args-mapped-truncation-before-exhaustion.js +++ b/test/built-ins/ArrayIteratorPrototype/next/args-mapped-truncation-before-exhaustion.js @@ -7,6 +7,7 @@ description: > Prior to being exhausted, iterators for mapped arguments exotic objects should honor argument removal. flags: [noStrict] +features: [Symbol.iterator] ---*/ (function(a, b, c) { diff --git a/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-after-exhaustion.js b/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-after-exhaustion.js index f1fdbec5d9bd6492d173268be0ccf2eb4aafb900..1424c2a1986430f9e89ac155287fe725a773c0c0 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-after-exhaustion.js +++ b/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-after-exhaustion.js @@ -7,6 +7,7 @@ description: > Once exhausted, iterators for unmapped arguments exotic objects should not emit new values added to the object. flags: [noStrict] +features: [Symbol.iterator] ---*/ (function(a, b, c) { diff --git a/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-before-exhaustion.js b/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-before-exhaustion.js index d7ad14a8154fbdad975570255c8d6a768a3dbfb9..47ab198f80eaae51ec7bab3349921c4ec61406d4 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-before-exhaustion.js +++ b/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-expansion-before-exhaustion.js @@ -7,6 +7,7 @@ description: > Prior to being exhausted, iterators for unmapped arguments exotic objects should honor the insertion of additional argument values. flags: [noStrict] +features: [Symbol.iterator] ---*/ (function(a, b, c) { diff --git a/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-iteration.js b/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-iteration.js index 180d631830d7a11f8437dc5f433723146298db01..6796859cf895e29ceed3bde5807179c3ddb579b1 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-iteration.js +++ b/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-iteration.js @@ -7,6 +7,7 @@ description: > Unmapped arguments exotic objects should implement the Array iterator protocol. flags: [noStrict] +features: [Symbol.iterator] ---*/ (function(a, b, c) { diff --git a/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-truncation-before-exhaustion.js b/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-truncation-before-exhaustion.js index f733f7c6967322aebd140ac4fd1de2a8a800f917..f156b6b2c62f862070f6ef3628086a970adfdfb2 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-truncation-before-exhaustion.js +++ b/test/built-ins/ArrayIteratorPrototype/next/args-unmapped-truncation-before-exhaustion.js @@ -7,6 +7,7 @@ description: > Prior to being exhausted, iterators for unmapped arguments exotic objects should honor argument removal. flags: [noStrict] +features: [Symbol.iterator] ---*/ (function(a, b, c) { diff --git a/test/built-ins/ArrayIteratorPrototype/next/iteration-mutable.js b/test/built-ins/ArrayIteratorPrototype/next/iteration-mutable.js index 373bfa30d5e4a95e9f4bd2233d0c7f6813a71404..b1337831338ba52ca1901b098322c764a7b1a82b 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/iteration-mutable.js +++ b/test/built-ins/ArrayIteratorPrototype/next/iteration-mutable.js @@ -2,15 +2,16 @@ // This code is governed by the BSD license found in the LICENSE file. /*--- - esid: sec-%arrayiteratorprototype%.next - description: > - When an item is added to the array after the iterator is created but - before the iterator is "done" (as defined by 22.1.5.2.1), the new item - should be accessible via iteration. When an item is added to the array - after the iterator is "done", the new item should not be accessible via - iteration. - es6id: 22.1.3.30 - ---*/ +esid: sec-%arrayiteratorprototype%.next +description: > + When an item is added to the array after the iterator is created but + before the iterator is "done" (as defined by 22.1.5.2.1), the new item + should be accessible via iteration. When an item is added to the array + after the iterator is "done", the new item should not be accessible via + iteration. +es6id: 22.1.3.30 +features: [Symbol.iterator] +---*/ var array = []; var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/ArrayIteratorPrototype/next/iteration.js b/test/built-ins/ArrayIteratorPrototype/next/iteration.js index b2f908653d77da40c84f2fa9aa5e7b2eefb96e92..f189ad0a40a4f4f306beaec7d9ada384a721f290 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/iteration.js +++ b/test/built-ins/ArrayIteratorPrototype/next/iteration.js @@ -2,12 +2,13 @@ // This code is governed by the BSD license found in the LICENSE file. /*--- - esid: sec-%arrayiteratorprototype%.next - description: > - The method should return a valid iterator with the context as the - IteratedObject. - es6id: 22.1.3.30 - ---*/ +esid: sec-%arrayiteratorprototype%.next +description: > + The method should return a valid iterator with the context as the + IteratedObject. +es6id: 22.1.3.30 +features: [Symbol.iterator] +---*/ var array = ['a', 'b', 'c']; var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/ArrayIteratorPrototype/next/length.js b/test/built-ins/ArrayIteratorPrototype/next/length.js index e7c2ffde4e35e74ff06b2882c44860fda6a37995..b95a4aa4fdd837c6bc158c5dc4bf3072f7b7254a 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/length.js +++ b/test/built-ins/ArrayIteratorPrototype/next/length.js @@ -21,6 +21,7 @@ info: > object has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }. includes: [propertyHelper.js] +features: [Symbol.iterator] ---*/ var ArrayIteratorProto = Object.getPrototypeOf([][Symbol.iterator]()); diff --git a/test/built-ins/ArrayIteratorPrototype/next/name.js b/test/built-ins/ArrayIteratorPrototype/next/name.js index b94ec6eda14507fae99d298a18612c49130a252c..d7b4c7b65b6a85037eb1f062d9217e6ada7bdcec 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/name.js +++ b/test/built-ins/ArrayIteratorPrototype/next/name.js @@ -18,6 +18,7 @@ info: > object, if it exists, has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }. includes: [propertyHelper.js] +features: [Symbol.iterator] ---*/ var ArrayIteratorProto = Object.getPrototypeOf([][Symbol.iterator]()); diff --git a/test/built-ins/ArrayIteratorPrototype/next/non-own-slots.js b/test/built-ins/ArrayIteratorPrototype/next/non-own-slots.js index c232327f9193cc84deb6d47297d4f78a58c878f2..0327dc1b6e3ffe902cb27e5696f7c842cdcf0fb7 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/non-own-slots.js +++ b/test/built-ins/ArrayIteratorPrototype/next/non-own-slots.js @@ -2,12 +2,13 @@ // This code is governed by the BSD license found in the LICENSE file. /*--- - description: > - If the `this` value does not have all of the internal slots of an Array - Iterator Instance (22.1.5.3), throw a TypeError exception. - es6id: 22.1.5.2.1 - esid: sec-%arrayiteratorprototype%.next - ---*/ +description: > + If the `this` value does not have all of the internal slots of an Array + Iterator Instance (22.1.5.3), throw a TypeError exception. +es6id: 22.1.5.2.1 +esid: sec-%arrayiteratorprototype%.next +features: [Symbol.iterator] +---*/ var array = [0]; var iterator = array[Symbol.iterator](); diff --git a/test/built-ins/ArrayIteratorPrototype/next/property-descriptor.js b/test/built-ins/ArrayIteratorPrototype/next/property-descriptor.js index 808b2fea033041819ae5e9bbdf14c29fb5817cf1..aeadb7ddda0f23a7d3836d2bc28453087c95d120 100644 --- a/test/built-ins/ArrayIteratorPrototype/next/property-descriptor.js +++ b/test/built-ins/ArrayIteratorPrototype/next/property-descriptor.js @@ -2,13 +2,14 @@ // This code is governed by the BSD license found in the LICENSE file. /*--- - esid: sec-%arrayiteratorprototype%.next - description: > - The method should exist on the ArrayIterator prototype, and it should be - writable and configurable, but not enumerable. - includes: [propertyHelper.js] - es6id: 17 - ---*/ +esid: sec-%arrayiteratorprototype%.next +description: > + The method should exist on the ArrayIterator prototype, and it should be + writable and configurable, but not enumerable. +includes: [propertyHelper.js] +es6id: 17 +features: [Symbol.iterator] +---*/ var ArrayIteratorProto = Object.getPrototypeOf([][Symbol.iterator]()); diff --git a/test/built-ins/Set/set-iterator-close-after-add-failure.js b/test/built-ins/Set/set-iterator-close-after-add-failure.js index 260327e08b385aa65c2f8cf04dd0109b5a916142..fa2c30b9dbe3d434c11fbb701d7ddd2eb3801f57 100644 --- a/test/built-ins/Set/set-iterator-close-after-add-failure.js +++ b/test/built-ins/Set/set-iterator-close-after-add-failure.js @@ -17,6 +17,7 @@ description: > f. Let status be Call(adder, set, «nextValue.[[value]]»). g. If status is an abrupt completion, return IteratorClose(iter, status). +features: [Symbol.iterator] ---*/ var count = 0; diff --git a/test/built-ins/Set/set-iterator-next-failure.js b/test/built-ins/Set/set-iterator-next-failure.js index 8cc0ad975a4406db82eb597233b2b8164f68ee53..9879baf9bfb157dd93b9734543ad1f4557fb1b7e 100644 --- a/test/built-ins/Set/set-iterator-next-failure.js +++ b/test/built-ins/Set/set-iterator-next-failure.js @@ -11,6 +11,7 @@ description: > 9. Repeat a. Let next be IteratorStep(iter). b. ReturnIfAbrupt(next). +features: [Symbol.iterator] ---*/ var iterable = {}; diff --git a/test/built-ins/Set/set-iterator-value-failure.js b/test/built-ins/Set/set-iterator-value-failure.js index 7a54716e535b4fb839fb74664067f9b3128ebfe6..04e943a41989bbf5a32c2ef53fe0912c92ded403 100644 --- a/test/built-ins/Set/set-iterator-value-failure.js +++ b/test/built-ins/Set/set-iterator-value-failure.js @@ -12,6 +12,7 @@ description: > ... d. Let nextValue be IteratorValue(next). e. ReturnIfAbrupt(nextValue). +features: [Symbol.iterator] ---*/ var count = 0; diff --git a/test/built-ins/StringIteratorPrototype/ancestry.js b/test/built-ins/StringIteratorPrototype/ancestry.js index 4d81cc20f665673223c48f9d84a9e12bac73456b..aee00099560e8289c1b713544538ae58ed126a35 100644 --- a/test/built-ins/StringIteratorPrototype/ancestry.js +++ b/test/built-ins/StringIteratorPrototype/ancestry.js @@ -5,6 +5,7 @@ es6id: 21.1.5.2 description: > The [[Prototype]] internal slot ofthe %StringIteratorPrototype% is the %IteratorPrototype% intrinsic object (25.1.2). +features: [Symbol.iterator] ---*/ var strItrProto = Object.getPrototypeOf(''[Symbol.iterator]()); diff --git a/test/built-ins/StringIteratorPrototype/next/name.js b/test/built-ins/StringIteratorPrototype/next/name.js index a0a9aae758d08426aa62d09dc91c79486dcd7d0b..adae55e078d15bf4c2048a08f8f9026b90154a52 100644 --- a/test/built-ins/StringIteratorPrototype/next/name.js +++ b/test/built-ins/StringIteratorPrototype/next/name.js @@ -17,6 +17,7 @@ info: > object, if it exists, has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: true }. includes: [propertyHelper.js] +features: [Symbol.iterator] ---*/ var StringIteratorProto = Object.getPrototypeOf(new String()[Symbol.iterator]()); diff --git a/test/built-ins/StringIteratorPrototype/next/next-iteration-surrogate-pairs.js b/test/built-ins/StringIteratorPrototype/next/next-iteration-surrogate-pairs.js index c2b5d2d1be785470397a8e775c27f6d109af7d7f..c57621e1397bc5c50d27bc869fdd8813a3780279 100644 --- a/test/built-ins/StringIteratorPrototype/next/next-iteration-surrogate-pairs.js +++ b/test/built-ins/StringIteratorPrototype/next/next-iteration-surrogate-pairs.js @@ -5,6 +5,7 @@ es6id: 21.1.5.2.1 description: > Iteration should respect UTF-16-encoded Unicode code points specified via surrogate pairs. +features: [Symbol.iterator] ---*/ var lo = '\uD834'; diff --git a/test/built-ins/StringIteratorPrototype/next/next-iteration.js b/test/built-ins/StringIteratorPrototype/next/next-iteration.js index 1b3fc081fdc30420663925d0520941e241a8c24d..f43cd3f71007d6076481666cc7b54d809366c52c 100644 --- a/test/built-ins/StringIteratorPrototype/next/next-iteration.js +++ b/test/built-ins/StringIteratorPrototype/next/next-iteration.js @@ -4,6 +4,7 @@ es6id: 21.1.5.2.1 description: > Iteration should visit each UTF-8 code point exactly once. +features: [Symbol.iterator] ---*/ var string = "abc"; diff --git a/test/built-ins/StringIteratorPrototype/next/next-missing-internal-slots.js b/test/built-ins/StringIteratorPrototype/next/next-missing-internal-slots.js index 08c795a0fbfc2398e1ae9718c19e0bdbf5c0db44..4eb96687be8c4b8590407c21cb037430ccbc7c13 100644 --- a/test/built-ins/StringIteratorPrototype/next/next-missing-internal-slots.js +++ b/test/built-ins/StringIteratorPrototype/next/next-missing-internal-slots.js @@ -5,6 +5,7 @@ es6id: 21.1.5.2.1 S 3 description: > If the `this` value does not have all of the internal slots of an String Iterator Instance (21.1.5.3), throw a `TypeError` exception. +features: [Symbol.iterator] ---*/ var iterator = ''[Symbol.iterator](); diff --git a/test/built-ins/Symbol/keyFor/arg-symbol-registry-miss.js b/test/built-ins/Symbol/keyFor/arg-symbol-registry-miss.js index 2f70c632a8bf9df4bfe6569fac5b6dd82ddeb3f3..920e2e423c2ddfa10b8be426e6c392a657ade5e0 100644 --- a/test/built-ins/Symbol/keyFor/arg-symbol-registry-miss.js +++ b/test/built-ins/Symbol/keyFor/arg-symbol-registry-miss.js @@ -12,7 +12,7 @@ info: > 3. Assert: GlobalSymbolRegistry does not currently contain an entry for sym. 4. Return undefined. -features: [Symbol] +features: [Symbol.iterator, Symbol] ---*/ var constructed = Symbol('Symbol.iterator'); diff --git a/test/built-ins/WeakMap/iterator-close-after-set-failure.js b/test/built-ins/WeakMap/iterator-close-after-set-failure.js index 2624cf1c06875a4e530837bd83066323677b4392..1fd3af450663857022e7f1f60098cd1f50e9c7db 100644 --- a/test/built-ins/WeakMap/iterator-close-after-set-failure.js +++ b/test/built-ins/WeakMap/iterator-close-after-set-failure.js @@ -12,6 +12,7 @@ info: > 9. Repeat k. Let status be Call(adder, map, «k.[[value]], v.[[value]]»). l. If status is an abrupt completion, return IteratorClose(iter, status). +features: [Symbol.iterator] ---*/ var count = 0; diff --git a/test/built-ins/WeakMap/iterator-next-failure.js b/test/built-ins/WeakMap/iterator-next-failure.js index ef0be06876f2107db540177d74b0ce175e76dbf0..3a88a4a7a1f4a58fe076c3d88f34bd7d5e6fcd29 100644 --- a/test/built-ins/WeakMap/iterator-next-failure.js +++ b/test/built-ins/WeakMap/iterator-next-failure.js @@ -13,6 +13,7 @@ info: > a. Let next be IteratorStep(iter). b. ReturnIfAbrupt(next). ... +features: [Symbol.iterator] ---*/ var iterable = {}; diff --git a/test/built-ins/WeakMap/iterator-value-failure.js b/test/built-ins/WeakMap/iterator-value-failure.js index eaad1004c59d724c8ecf3a79d79a66f0d46bc106..2af5efcf7185111ba5f5f6222c6327899a349534 100644 --- a/test/built-ins/WeakMap/iterator-value-failure.js +++ b/test/built-ins/WeakMap/iterator-value-failure.js @@ -14,6 +14,7 @@ info: > d. Let nextItem be IteratorValue(next). e. ReturnIfAbrupt(nextItem). ... +features: [Symbol.iterator] ---*/ var iterable = {}; diff --git a/test/built-ins/WeakSet/iterator-close-after-add-failure.js b/test/built-ins/WeakSet/iterator-close-after-add-failure.js index fcd961943829c1fa3f08aa33ef82c7634509eb9b..cb7e1e2082966ab49d3f0a9db46e22b944e21794 100644 --- a/test/built-ins/WeakSet/iterator-close-after-add-failure.js +++ b/test/built-ins/WeakSet/iterator-close-after-add-failure.js @@ -12,6 +12,7 @@ info: > 9. Repeat f. Let status be Call(adder, set, «nextValue»). g. If status is an abrupt completion, return IteratorClose(iter, status). +features: [Symbol.iterator] ---*/ var count = 0; diff --git a/test/built-ins/WeakSet/iterator-next-failure.js b/test/built-ins/WeakSet/iterator-next-failure.js index 83ec0b2ada438bcec09ae89ab79ae2eea95a3af5..020dc25f4b23230b84fa777afc99e20babfb1871 100644 --- a/test/built-ins/WeakSet/iterator-next-failure.js +++ b/test/built-ins/WeakSet/iterator-next-failure.js @@ -13,6 +13,7 @@ info: > a. Let next be IteratorStep(iter). b. ReturnIfAbrupt(next). ... +features: [Symbol.iterator] ---*/ var iterable = {}; diff --git a/test/built-ins/WeakSet/iterator-value-failure.js b/test/built-ins/WeakSet/iterator-value-failure.js index 8e692feff17291addfb39cd1029c202026a6ad34..4cdf446c492096b6bce678a0f2c21f003dcad77c 100644 --- a/test/built-ins/WeakSet/iterator-value-failure.js +++ b/test/built-ins/WeakSet/iterator-value-failure.js @@ -13,6 +13,7 @@ info: > ... d. Let nextValue be IteratorValue(next). e. ReturnIfAbrupt(nextValue). +features: [Symbol.iterator] ---*/ var count = 0; diff --git a/test/language/expressions/yield/star-iterable.js b/test/language/expressions/yield/star-iterable.js index e961c2ca7ed2afcbff2592633bad1b87b274630b..668fc28bf56f7b519a58e57311007293f5d4a69e 100644 --- a/test/language/expressions/yield/star-iterable.js +++ b/test/language/expressions/yield/star-iterable.js @@ -5,6 +5,7 @@ es6id: 25.2 description: > When an iterator is the operand of a `yield *` expression, the generator should produce an iterator that visits each iterated item. +features: [Symbol.iterator] ---*/ var results = [{ value: 1 }, { value: 8 }, { value: 34, done: true }]; diff --git a/test/language/module-code/namespace/internals/define-own-property.js b/test/language/module-code/namespace/internals/define-own-property.js index 4607100f26a48816b4c3c9dd7e6c81a3c3d7fb96..23a22c2f2651f847975928dc7f7fb924b78731df 100644 --- a/test/language/module-code/namespace/internals/define-own-property.js +++ b/test/language/module-code/namespace/internals/define-own-property.js @@ -6,7 +6,7 @@ description: > The [[DefineOwnProperty]] internal method returns `true` if no change is requested, and `false` otherwise. flags: [module] -features: [Reflect, Symbol, Symbol.toStringTag] +features: [Symbol.iterator, Reflect, Symbol, Symbol.toStringTag] ---*/ import * as ns from './define-own-property.js'; diff --git a/test/language/statements/for-of/Array.prototype.Symbol.iterator.js b/test/language/statements/for-of/Array.prototype.Symbol.iterator.js index 9667acac6cef4e14b9d9f71e8ecbf189ba0cec49..98ccbe9bd44ba4f50a92f3bb6302c9b1031e0e97 100644 --- a/test/language/statements/for-of/Array.prototype.Symbol.iterator.js +++ b/test/language/statements/for-of/Array.prototype.Symbol.iterator.js @@ -2,11 +2,12 @@ // This code is governed by the BSD license found in the LICENSE file. /*--- - description: > - The method should return a valid iterator that can be traversed using a - `for...of` loop. - es6id: 22.1.3.30 - ---*/ +description: > + The method should return a valid iterator that can be traversed using a + `for...of` loop. +es6id: 22.1.3.30 +features: [Symbol.iterator] +---*/ var array = [0, 'a', true, false, null, /* hole */, undefined, NaN]; var i = 0;