diff --git a/src/async-generators/yield-identifier-spread-non-strict.case b/src/async-generators/yield-identifier-spread-non-strict.case index 0db9d527dfe829d5be5c739569e80af9eb5b525a..73ba0d813b168934d2ed66e07088b2be44def2cd 100644 --- a/src/async-generators/yield-identifier-spread-non-strict.case +++ b/src/async-generators/yield-identifier-spread-non-strict.case @@ -12,7 +12,7 @@ info: | PropertyDefinition[Yield]: (...) ...AssignmentExpression[In, ?Yield] -features: [object-spread] +features: [object-spread, Symbol] flags: [noStrict, async] ---*/ diff --git a/src/dstr-assignment-for-await/obj-rest-symbol-val.case b/src/dstr-assignment-for-await/obj-rest-symbol-val.case index 4feed1a46499c0496da204e81c42c2bed0c7671e..79d391edf7892e32763ee604928d67598a12bfa4 100644 --- a/src/dstr-assignment-for-await/obj-rest-symbol-val.case +++ b/src/dstr-assignment-for-await/obj-rest-symbol-val.case @@ -6,7 +6,7 @@ desc: > RestBindingInitialization creates a new object if lhs is a Symbol template: default esid: pending -features: [object-rest] +features: [object-rest, Symbol] ---*/ //- setup diff --git a/src/dstr-assignment/array-empty-val-symbol.case b/src/dstr-assignment/array-empty-val-symbol.case index 723fc7eed54541d5f20c9a27c832726383d13fa3..febb378b9c8eaa97f052f8dd186d735f8164755c 100644 --- a/src/dstr-assignment/array-empty-val-symbol.case +++ b/src/dstr-assignment/array-empty-val-symbol.case @@ -7,6 +7,7 @@ desc: > iterable values and throws for Symbol values. template: error es6id: 12.14.5.2 +features: [Symbol] ---*/ //- setup diff --git a/src/dstr-assignment/obj-rest-symbol-val.case b/src/dstr-assignment/obj-rest-symbol-val.case index a7a918f76cc06afe52d9157dc76f2e41be8293e1..4446de77c1d44c48fd90190c022bbc5e286c5f4b 100644 --- a/src/dstr-assignment/obj-rest-symbol-val.case +++ b/src/dstr-assignment/obj-rest-symbol-val.case @@ -6,7 +6,7 @@ desc: > RestBindingInitialization creates a new object if lhs is a Symbol template: default esid: pending -features: [object-rest] +features: [Symbol, object-rest] ---*/ //- setup diff --git a/src/generators/yield-identifier-spread-non-strict.case b/src/generators/yield-identifier-spread-non-strict.case index f4ad4f40b5c8f881e7be2ec2365a2782d9b0b4db..6659a5d4d7834eba20949dfea4778116108e563f 100644 --- a/src/generators/yield-identifier-spread-non-strict.case +++ b/src/generators/yield-identifier-spread-non-strict.case @@ -12,7 +12,7 @@ info: | PropertyDefinition[Yield]: (...) ...AssignmentExpression[In, ?Yield] -features: [object-spread] +features: [Symbol, object-spread] flags: [noStrict] ---*/ diff --git a/src/spread/obj-spread-order.case b/src/spread/obj-spread-order.case index 370a36807990c581a7ca066a256bf70fb5193dc8..b063476dd3afbe00ed2cae083717f2291dbd9b90 100644 --- a/src/spread/obj-spread-order.case +++ b/src/spread/obj-spread-order.case @@ -15,7 +15,7 @@ info: | 3. ReturnIfAbrupt(fromValue). 4. Let excludedNames be a new empty List. 5. Return CopyDataProperties(object, fromValue, excludedNames). -features: [object-spread] +features: [Symbol, object-spread] ---*/ //- setup diff --git a/src/spread/obj-symbol-property.case b/src/spread/obj-symbol-property.case index 4a2b4cd414701b60e9c7740e62f5377bf49d61fe..2f7bc5dd9fb947f704ef8b1efd174843dcdd6262 100644 --- a/src/spread/obj-symbol-property.case +++ b/src/spread/obj-symbol-property.case @@ -14,7 +14,7 @@ info: | 3. ReturnIfAbrupt(fromValue). 4. Let excludedNames be a new empty List. 5. Return CopyDataProperties(object, fromValue, excludedNames). -features: [object-spread] +features: [Symbol, object-spread] ---*/ //- setup diff --git a/src/spread/obj-with-overrides.case b/src/spread/obj-with-overrides.case index d72af8987154015fba26d32c0e974db6fdacc3be..654be7c99561ea5b87e4be35132494668855fc73 100644 --- a/src/spread/obj-with-overrides.case +++ b/src/spread/obj-with-overrides.case @@ -14,7 +14,7 @@ info: | 3. ReturnIfAbrupt(fromValue). 4. Let excludedNames be a new empty List. 5. Return CopyDataProperties(object, fromValue, excludedNames). -features: [object-spread] +features: [Symbol, object-spread] ---*/ //- setup diff --git a/test/built-ins/Array/prototype/sort/comparefn-nonfunction-call-throws.js b/test/built-ins/Array/prototype/sort/comparefn-nonfunction-call-throws.js index 53558acc296cf441e6f280e6bee9647e92cd3571..33641e8e521f650b3586debc429707e8362ea304 100644 --- a/test/built-ins/Array/prototype/sort/comparefn-nonfunction-call-throws.js +++ b/test/built-ins/Array/prototype/sort/comparefn-nonfunction-call-throws.js @@ -12,6 +12,7 @@ info: > ... 1. If _comparefn_ is not *undefined* and IsCallable(_comparefn_) is *false*, throw a *TypeError* exception. ... +features: [Symbol] ---*/ var sample = [1, 2, 3]; diff --git a/test/built-ins/ArrayBuffer/prototype/slice/species-constructor-is-not-object.js b/test/built-ins/ArrayBuffer/prototype/slice/species-constructor-is-not-object.js index ad00e7d3671a1a2413d6464f87661ecf34c9aa04..70493434273f130940cc691c2e7cf9ea7aa84576 100644 --- a/test/built-ins/ArrayBuffer/prototype/slice/species-constructor-is-not-object.js +++ b/test/built-ins/ArrayBuffer/prototype/slice/species-constructor-is-not-object.js @@ -21,6 +21,7 @@ info: > 4. If C is undefined, return defaultConstructor. 5. If Type(C) is not Object, throw a TypeError exception. ... +features: [Symbol] ---*/ var arrayBuffer = new ArrayBuffer(8); diff --git a/test/built-ins/Boolean/symbol-coercion.js b/test/built-ins/Boolean/symbol-coercion.js index a3bc31b6b9ea5ec3c85e024f3011456fe57549a2..d1cc5e6d4ef234ec27738c0dd1f6b82642507590 100644 --- a/test/built-ins/Boolean/symbol-coercion.js +++ b/test/built-ins/Boolean/symbol-coercion.js @@ -5,6 +5,7 @@ esid: sec-toboolean es6id: 7.1.2 description: > Boolean coercion operations on Symbols +features: [Symbol] ---*/ var sym = Symbol(); diff --git a/test/built-ins/DataView/prototype/getInt32/return-abrupt-from-tonumber-byteoffset-symbol-sab.js b/test/built-ins/DataView/prototype/getInt32/return-abrupt-from-tonumber-byteoffset-symbol-sab.js index d87f83f0e9ec0a38ac9965b0d43365898c7111fa..7687a51af06dc44e50bd389e510147653ef04d4d 100644 --- a/test/built-ins/DataView/prototype/getInt32/return-abrupt-from-tonumber-byteoffset-symbol-sab.js +++ b/test/built-ins/DataView/prototype/getInt32/return-abrupt-from-tonumber-byteoffset-symbol-sab.js @@ -19,7 +19,7 @@ info: | ... 4. Let numberIndex be ? ToNumber(requestIndex). ... -features: [SharedArrayBuffer] +features: [SharedArrayBuffer, Symbol] ---*/ var buffer = new SharedArrayBuffer(1); diff --git a/test/built-ins/DataView/prototype/getInt32/to-boolean-littleendian-sab.js b/test/built-ins/DataView/prototype/getInt32/to-boolean-littleendian-sab.js index 5e4c3c9ad9eb9826a27ef500c325906444ec3a3e..8fa8e04e9d6653e3f2457140d986280bf2362445 100644 --- a/test/built-ins/DataView/prototype/getInt32/to-boolean-littleendian-sab.js +++ b/test/built-ins/DataView/prototype/getInt32/to-boolean-littleendian-sab.js @@ -27,7 +27,7 @@ info: | ... 8. If isLittleEndian is false, reverse the order of the elements of rawValue. ... -features: [SharedArrayBuffer] +features: [SharedArrayBuffer, Symbol] ---*/ var buffer = new SharedArrayBuffer(4); diff --git a/test/built-ins/DataView/return-abrupt-tonumber-bytelength-symbol-sab.js b/test/built-ins/DataView/return-abrupt-tonumber-bytelength-symbol-sab.js index 1e0aeaa208991b1ae0c1ff600cd52ef40da6f64b..a1ec74a45e127a13396074ca4dc02b3ff1ae8a42 100644 --- a/test/built-ins/DataView/return-abrupt-tonumber-bytelength-symbol-sab.js +++ b/test/built-ins/DataView/return-abrupt-tonumber-bytelength-symbol-sab.js @@ -16,7 +16,7 @@ info: | 11. Else, a. Let viewByteLength be ? ToLength(byteLength). ... -features: [SharedArrayBuffer] +features: [SharedArrayBuffer, Symbol] ---*/ var buffer = new SharedArrayBuffer(8); diff --git a/test/built-ins/DataView/return-abrupt-tonumber-byteoffset-symbol-sab.js b/test/built-ins/DataView/return-abrupt-tonumber-byteoffset-symbol-sab.js index c18eba88348b69d1f6d0e928266aa5871d8de28a..b4c7107d6eba9cd92a236fa4516b32d165e29a08 100644 --- a/test/built-ins/DataView/return-abrupt-tonumber-byteoffset-symbol-sab.js +++ b/test/built-ins/DataView/return-abrupt-tonumber-byteoffset-symbol-sab.js @@ -13,7 +13,7 @@ info: | ... 4. Let numberOffset be ? ToNumber(byteOffset). ... -features: [SharedArrayBuffer] +features: [SharedArrayBuffer, Symbol] ---*/ var s = Symbol("1"); diff --git a/test/built-ins/Function/prototype/bind/instance-name-non-string.js b/test/built-ins/Function/prototype/bind/instance-name-non-string.js index b9b9aac26f0b7ed10e4eaab9f92d1e901b0afe6b..75383f8795cde8350e33286e29abf01d8c548f41 100644 --- a/test/built-ins/Function/prototype/bind/instance-name-non-string.js +++ b/test/built-ins/Function/prototype/bind/instance-name-non-string.js @@ -11,6 +11,7 @@ info: > 14. If Type(targetName) is not String, let targetName be the empty string. 15. Perform SetFunctionName(F, targetName, "bound"). includes: [propertyHelper.js] +features: [Symbol] ---*/ var target; diff --git a/test/built-ins/Map/prototype/size/this-not-object-throw.js b/test/built-ins/Map/prototype/size/this-not-object-throw.js index d55730db89cdc0a6d1d62bb866e1f8d786a8b47d..ec68cb9bddfae7ada780c7593f4a2777e1bd496b 100644 --- a/test/built-ins/Map/prototype/size/this-not-object-throw.js +++ b/test/built-ins/Map/prototype/size/this-not-object-throw.js @@ -14,6 +14,7 @@ info: > ... includes: [propertyHelper.js] +features: [Symbol] ---*/ var descriptor = Object.getOwnPropertyDescriptor(Map.prototype, 'size'); diff --git a/test/built-ins/Object/assign/Source-Number-Boolen-Symbol.js b/test/built-ins/Object/assign/Source-Number-Boolen-Symbol.js index 282c3a5a25dfbe6d3f2e47819ae9b90fd6049e4e..3d0781cecc3d6f839174a8737a9aa5e9a7c1b42b 100644 --- a/test/built-ins/Object/assign/Source-Number-Boolen-Symbol.js +++ b/test/built-ins/Object/assign/Source-Number-Boolen-Symbol.js @@ -5,6 +5,7 @@ description: Number,Boolean,Symbol cannot have own enumerable properties, So cannot be Assigned.Here result should be original object. es6id: 19.1.2.1.5.c +features: [Symbol] ---*/ var target = new Object(); diff --git a/test/built-ins/Object/assign/Target-Symbol.js b/test/built-ins/Object/assign/Target-Symbol.js index ef1335a42570de246ba3fb9a72c53bd23a64f629..2c24f4b504959391aeb7b44e8277ea3c9017a3c9 100644 --- a/test/built-ins/Object/assign/Target-Symbol.js +++ b/test/built-ins/Object/assign/Target-Symbol.js @@ -5,6 +5,7 @@ description: Test the first argument(target) of Object.Assign(target,...sources), if target is Symbol,the return value should be a new Symbol object whose [[SymbolData]] value is target. es6id: 19.1.2.1.1 +features: [Symbol] ---*/ var target = Symbol('foo'); diff --git a/test/built-ins/Object/defineProperty/symbol-data-property-configurable.js b/test/built-ins/Object/defineProperty/symbol-data-property-configurable.js index 4232d556692c7f19c2c26dc87bfed92af2cc35b7..36dc2624006159376791266d26b46f826beb7b23 100644 --- a/test/built-ins/Object/defineProperty/symbol-data-property-configurable.js +++ b/test/built-ins/Object/defineProperty/symbol-data-property-configurable.js @@ -4,6 +4,7 @@ es6id: 19.1.2.4 description: > Symbol used as property for configurable data property definition +features: [Symbol] ---*/ var sym = Symbol(); var obj = {}; diff --git a/test/built-ins/Object/defineProperty/symbol-data-property-default-non-strict.js b/test/built-ins/Object/defineProperty/symbol-data-property-default-non-strict.js index c39f9e27914e73e6fe37a9d544e9ab4e1493f204..a54deb3a95b261219a3944f3f8c14e6d08cc64d8 100644 --- a/test/built-ins/Object/defineProperty/symbol-data-property-default-non-strict.js +++ b/test/built-ins/Object/defineProperty/symbol-data-property-default-non-strict.js @@ -5,6 +5,7 @@ es6id: 19.1.2.4 description: > Symbol used as property for property definition flags: [noStrict] +features: [Symbol] ---*/ var sym = Symbol(); var obj = {}; diff --git a/test/built-ins/Object/defineProperty/symbol-data-property-default-strict.js b/test/built-ins/Object/defineProperty/symbol-data-property-default-strict.js index dd597cda7ea2c51e5798bd2fd37c5c41e96a6072..93cffc023f9d414c06f08210989868d761073fa1 100644 --- a/test/built-ins/Object/defineProperty/symbol-data-property-default-strict.js +++ b/test/built-ins/Object/defineProperty/symbol-data-property-default-strict.js @@ -5,6 +5,7 @@ es6id: 19.1.2.4 description: > Symbol used as property for default data property definition flags: [onlyStrict] +features: [Symbol] ---*/ var sym = Symbol(); var obj = {}; diff --git a/test/built-ins/Object/defineProperty/symbol-data-property-writable.js b/test/built-ins/Object/defineProperty/symbol-data-property-writable.js index 004e47ef54ead7684564fb29d6ea6469480ed3e7..b2d3a873afd2aa272e476fddf45fa1f7b9f8c648 100644 --- a/test/built-ins/Object/defineProperty/symbol-data-property-writable.js +++ b/test/built-ins/Object/defineProperty/symbol-data-property-writable.js @@ -4,6 +4,7 @@ es6id: 19.1.2.4 description: > Symbol used as property for writable data property definition +features: [Symbol] ---*/ var sym = Symbol(); var obj = {}; diff --git a/test/built-ins/Object/freeze/frozen-object-contains-symbol-properties-non-strict.js b/test/built-ins/Object/freeze/frozen-object-contains-symbol-properties-non-strict.js index a322a6abcd076f353ae45e5b041162f96b3e0af0..6af3bf0947fde809adb3b0af810f7d1fd83e84d4 100644 --- a/test/built-ins/Object/freeze/frozen-object-contains-symbol-properties-non-strict.js +++ b/test/built-ins/Object/freeze/frozen-object-contains-symbol-properties-non-strict.js @@ -5,6 +5,7 @@ es6id: 19.1.2.5 description: > Frozen object contains symbol properties. flags: [noStrict] +features: [Symbol] ---*/ var sym = Symbol(); var obj = {}; diff --git a/test/built-ins/Object/freeze/frozen-object-contains-symbol-properties-strict.js b/test/built-ins/Object/freeze/frozen-object-contains-symbol-properties-strict.js index 9cc20f8cfc842ddb362d359cb64d8f35251fc591..9b93997cbb9878a5c969fab01f611a01be463bd2 100644 --- a/test/built-ins/Object/freeze/frozen-object-contains-symbol-properties-strict.js +++ b/test/built-ins/Object/freeze/frozen-object-contains-symbol-properties-strict.js @@ -5,6 +5,7 @@ es6id: 19.1.2.5 description: > Frozen object contains symbol properties. flags: [onlyStrict] +features: [Symbol] ---*/ var sym = Symbol("66"); var obj = {}; diff --git a/test/built-ins/Object/getOwnPropertySymbols/object-contains-symbol-property-with-description.js b/test/built-ins/Object/getOwnPropertySymbols/object-contains-symbol-property-with-description.js index a9a880a2c4dac8f4a3e9e501e9c5a54f3e67ed2b..96102bf168faa3799df45b66b50f90669f229512 100644 --- a/test/built-ins/Object/getOwnPropertySymbols/object-contains-symbol-property-with-description.js +++ b/test/built-ins/Object/getOwnPropertySymbols/object-contains-symbol-property-with-description.js @@ -4,6 +4,7 @@ es6id: 19.1.2.8 description: > Object.getOwnPropertySymbols returns all symbol properties that have descriptions +features: [Symbol] ---*/ var sym = Symbol("description"); diff --git a/test/built-ins/Object/getOwnPropertySymbols/object-contains-symbol-property-without-description.js b/test/built-ins/Object/getOwnPropertySymbols/object-contains-symbol-property-without-description.js index db73cd72fa3b4a536b5fb4c1d7885eb0d9c73b91..26a288b03478ddfefc941152848ce3c9f49d3d88 100644 --- a/test/built-ins/Object/getOwnPropertySymbols/object-contains-symbol-property-without-description.js +++ b/test/built-ins/Object/getOwnPropertySymbols/object-contains-symbol-property-without-description.js @@ -4,6 +4,7 @@ es6id: 19.1.2.8 description: > Object.getOwnPropertySymbols returns all symbol properties that do not have descriptions +features: [Symbol] ---*/ var sym = Symbol(); diff --git a/test/built-ins/Object/is/not-same-value-x-y-symbol.js b/test/built-ins/Object/is/not-same-value-x-y-symbol.js index 4f17e77a8d132d949d3702bb583b952a662ffc56..28ccc0a78e76c4e39070e8f127c57cb71ecd2622 100644 --- a/test/built-ins/Object/is/not-same-value-x-y-symbol.js +++ b/test/built-ins/Object/is/not-same-value-x-y-symbol.js @@ -10,6 +10,7 @@ description: > a. If x and y are both the same Symbol value, return true; otherwise, return false. ... +features: [Symbol] ---*/ assert.sameValue( diff --git a/test/built-ins/Object/is/same-value-x-y-symbol.js b/test/built-ins/Object/is/same-value-x-y-symbol.js index 9e6b206f7363e88f0bf20df87baaef3192942d63..05153d07617451d8eb2652d15e676941b3121dcd 100644 --- a/test/built-ins/Object/is/same-value-x-y-symbol.js +++ b/test/built-ins/Object/is/same-value-x-y-symbol.js @@ -10,6 +10,7 @@ description: > a. If x and y are both the same Symbol value, return true; otherwise, return false. ... +features: [Symbol] ---*/ var a = Symbol(); diff --git a/test/built-ins/Object/is/symbol-object-is-same-value.js b/test/built-ins/Object/is/symbol-object-is-same-value.js index 8f81eb4314ece597895b5f9357af5925650ae9fa..b4d5a1384312f77f55635f337800493ff1cdd3bd 100644 --- a/test/built-ins/Object/is/symbol-object-is-same-value.js +++ b/test/built-ins/Object/is/symbol-object-is-same-value.js @@ -4,6 +4,7 @@ es6id: 7.2. description: > Object.is/SameValue: Symbol +features: [Symbol] ---*/ var symA = Symbol('66'); var symB = Symbol('66'); diff --git a/test/built-ins/Object/keys/proxy-keys.js b/test/built-ins/Object/keys/proxy-keys.js index 69da52ddaac675e6d3c694d6c1847cec7972c91a..ac349430fa6330867126bbcbdc4ffd54c8248042 100644 --- a/test/built-ins/Object/keys/proxy-keys.js +++ b/test/built-ins/Object/keys/proxy-keys.js @@ -21,6 +21,7 @@ info: | a. If Type(key) is String, then i. Let desc be ? O.[[GetOwnProperty]](key). ... +features: [Symbol] ---*/ let log = []; diff --git a/test/built-ins/Object/preventExtensions/symbol-object-contains-symbol-properties-non-strict.js b/test/built-ins/Object/preventExtensions/symbol-object-contains-symbol-properties-non-strict.js index 9617575ad9341b1e8d327844cc32b81f492b9a3c..a8625fd1b160e0a0a6d2ceafc75918beb1f88f2e 100644 --- a/test/built-ins/Object/preventExtensions/symbol-object-contains-symbol-properties-non-strict.js +++ b/test/built-ins/Object/preventExtensions/symbol-object-contains-symbol-properties-non-strict.js @@ -5,6 +5,7 @@ es6id: 19.4 description: > Object.preventExtensions(obj) where obj contains symbol properties. flags: [noStrict] +features: [Symbol] ---*/ var symA = Symbol("A"); var symB = Symbol("B"); diff --git a/test/built-ins/Object/preventExtensions/symbol-object-contains-symbol-properties-strict.js b/test/built-ins/Object/preventExtensions/symbol-object-contains-symbol-properties-strict.js index 01cfb4b6be40416b72cf3b81da616466e5444940..6bb4bdf18715575b24b3844be2e973e6cd7a0c5a 100644 --- a/test/built-ins/Object/preventExtensions/symbol-object-contains-symbol-properties-strict.js +++ b/test/built-ins/Object/preventExtensions/symbol-object-contains-symbol-properties-strict.js @@ -5,6 +5,7 @@ es6id: 19.4 description: > Object.preventExtensions(obj) where obj contains symbol properties. flags: [onlyStrict] +features: [Symbol] ---*/ var symA = Symbol("A"); var symB = Symbol("B"); diff --git a/test/built-ins/Object/prototype/hasOwnProperty/symbol_own_property.js b/test/built-ins/Object/prototype/hasOwnProperty/symbol_own_property.js index f69cc1beb5557be9f6a79a74a03646781f2e851e..d52ed329873584fc60228fc0943e47b10a8951c2 100644 --- a/test/built-ins/Object/prototype/hasOwnProperty/symbol_own_property.js +++ b/test/built-ins/Object/prototype/hasOwnProperty/symbol_own_property.js @@ -10,6 +10,7 @@ info: > 2. ReturnIfAbrupt(P). ... es6id: 19.1.3.2 +features: [Symbol] ---*/ var obj = {}; diff --git a/test/built-ins/Object/prototype/hasOwnProperty/symbol_property_toString.js b/test/built-ins/Object/prototype/hasOwnProperty/symbol_property_toString.js index 0f52fb72f3520d9c22f1b9d964b7be8b388ccfeb..1e0fcc89265987b2f749b26e55011ec1c7e62008 100644 --- a/test/built-ins/Object/prototype/hasOwnProperty/symbol_property_toString.js +++ b/test/built-ins/Object/prototype/hasOwnProperty/symbol_property_toString.js @@ -10,6 +10,7 @@ info: > 2. ReturnIfAbrupt(P). ... es6id: 19.1.3.2 +features: [Symbol] ---*/ var obj = {}; diff --git a/test/built-ins/Object/prototype/hasOwnProperty/symbol_property_valueOf.js b/test/built-ins/Object/prototype/hasOwnProperty/symbol_property_valueOf.js index 772fa4f15d3a4a9d799695e2503c5990de5c46b5..2827923f0ba891402b841e8aeff6d391ea2ddd05 100644 --- a/test/built-ins/Object/prototype/hasOwnProperty/symbol_property_valueOf.js +++ b/test/built-ins/Object/prototype/hasOwnProperty/symbol_property_valueOf.js @@ -10,6 +10,7 @@ info: > 2. ReturnIfAbrupt(P). ... es6id: 19.1.3.2 +features: [Symbol] ---*/ var obj = {}; diff --git a/test/built-ins/Object/prototype/propertyIsEnumerable/symbol_own_property.js b/test/built-ins/Object/prototype/propertyIsEnumerable/symbol_own_property.js index 201f951b1a1afcb21c95b43bd809c11ec08ddd53..5a396dd35d29b6f3c8b05059d388183c25a5750a 100644 --- a/test/built-ins/Object/prototype/propertyIsEnumerable/symbol_own_property.js +++ b/test/built-ins/Object/prototype/propertyIsEnumerable/symbol_own_property.js @@ -10,6 +10,7 @@ info: > 2. ReturnIfAbrupt(P). ... es6id: 19.1.3.4 +features: [Symbol] ---*/ var obj = {}; diff --git a/test/built-ins/Object/prototype/propertyIsEnumerable/symbol_property_toString.js b/test/built-ins/Object/prototype/propertyIsEnumerable/symbol_property_toString.js index 945f5d1f310238ed7b385ec017a54fe6659a5037..120b290f0513008836a62bd545d842c254b6ff5c 100644 --- a/test/built-ins/Object/prototype/propertyIsEnumerable/symbol_property_toString.js +++ b/test/built-ins/Object/prototype/propertyIsEnumerable/symbol_property_toString.js @@ -10,6 +10,7 @@ info: > 2. ReturnIfAbrupt(P). ... es6id: 19.1.3.4 +features: [Symbol] ---*/ var obj = {}; diff --git a/test/built-ins/Object/prototype/propertyIsEnumerable/symbol_property_valueOf.js b/test/built-ins/Object/prototype/propertyIsEnumerable/symbol_property_valueOf.js index 89397e7e3ca72318949de763d4570a3a6b46b701..520155c2085b59535f90cb732815ba0bc4cf7f77 100644 --- a/test/built-ins/Object/prototype/propertyIsEnumerable/symbol_property_valueOf.js +++ b/test/built-ins/Object/prototype/propertyIsEnumerable/symbol_property_valueOf.js @@ -10,6 +10,7 @@ info: > 2. ReturnIfAbrupt(P). ... es6id: 19.1.3.4 +features: [Symbol] ---*/ var obj = {}; diff --git a/test/built-ins/Object/seal/symbol-object-contains-symbol-properties-non-strict.js b/test/built-ins/Object/seal/symbol-object-contains-symbol-properties-non-strict.js index dcb68e35f27bc33646fd497a99c6cd985978b2b3..831deb3d571980782bfe63f24d7113fb1702d22f 100644 --- a/test/built-ins/Object/seal/symbol-object-contains-symbol-properties-non-strict.js +++ b/test/built-ins/Object/seal/symbol-object-contains-symbol-properties-non-strict.js @@ -5,6 +5,7 @@ es6id: 19.4 description: > Object.seal(obj) where obj contains symbol properties. flags: [noStrict] +features: [Symbol] ---*/ var symA = Symbol("A"); var symB = Symbol("B"); diff --git a/test/built-ins/Object/seal/symbol-object-contains-symbol-properties-strict.js b/test/built-ins/Object/seal/symbol-object-contains-symbol-properties-strict.js index d0c59884a41c33dfdccac7947dae5b990fc8da5f..0c04b431696c58e7d30a0c665a90d4589c6c0fd1 100644 --- a/test/built-ins/Object/seal/symbol-object-contains-symbol-properties-strict.js +++ b/test/built-ins/Object/seal/symbol-object-contains-symbol-properties-strict.js @@ -5,6 +5,7 @@ es6id: 19.4 description: > Object.seal(obj) where obj contains symbol properties. flags: [onlyStrict] +features: [Symbol] ---*/ var symA = Symbol("A"); var symB = Symbol("B"); diff --git a/test/built-ins/Object/symbol_object-returns-fresh-symbol.js b/test/built-ins/Object/symbol_object-returns-fresh-symbol.js index c4aa3cf0222adbdf5c2a40130668b576e4df067e..453156c56587f9d63ad030e984f6ab6e18df81c5 100644 --- a/test/built-ins/Object/symbol_object-returns-fresh-symbol.js +++ b/test/built-ins/Object/symbol_object-returns-fresh-symbol.js @@ -4,6 +4,7 @@ es6id: 19.1.1.1_S3 description: > Object(sym) returns a fresh Symbol object +features: [Symbol] ---*/ var symA = Symbol('A'); var symB = Symbol(); diff --git a/test/built-ins/Proxy/ownKeys/return-duplicate-symbol-entries-throws.js b/test/built-ins/Proxy/ownKeys/return-duplicate-symbol-entries-throws.js index dfe27205c0585de085baa9b43ccf0d8fb7186b6c..53194a058d4f9d4f52b7bccc9c2c177b1835e771 100644 --- a/test/built-ins/Proxy/ownKeys/return-duplicate-symbol-entries-throws.js +++ b/test/built-ins/Proxy/ownKeys/return-duplicate-symbol-entries-throws.js @@ -9,6 +9,7 @@ info: > ... 9. If trapResult contains any duplicate entries, throw a TypeError exception. +features: [Symbol] ---*/ var s = Symbol(); diff --git a/test/built-ins/Set/prototype/add/this-not-object-throw-symbol.js b/test/built-ins/Set/prototype/add/this-not-object-throw-symbol.js index 759147e15fb3989629bd92644964cfcef182e3d9..ade8dfc7a229c55fa46657ad7ef44aa15c7ee9ce 100644 --- a/test/built-ins/Set/prototype/add/this-not-object-throw-symbol.js +++ b/test/built-ins/Set/prototype/add/this-not-object-throw-symbol.js @@ -8,6 +8,7 @@ description: > 1. Let S be the this value. 2. If Type(S) is not Object, throw a TypeError exception. +features: [Symbol] ---*/ assert.throws(TypeError, function() { diff --git a/test/built-ins/Set/prototype/clear/this-not-object-throw-symbol.js b/test/built-ins/Set/prototype/clear/this-not-object-throw-symbol.js index 6730e5be39b53c854813457cb5e906c90abc97ec..2525d91091491344c927a86c7d4f7a4310c9a7e3 100644 --- a/test/built-ins/Set/prototype/clear/this-not-object-throw-symbol.js +++ b/test/built-ins/Set/prototype/clear/this-not-object-throw-symbol.js @@ -8,6 +8,7 @@ description: > 1. Let S be the this value. 2. If Type(S) is not Object, throw a TypeError exception. +features: [Symbol] ---*/ assert.throws(TypeError, function() { diff --git a/test/built-ins/Set/prototype/delete/this-not-object-throw-symbol.js b/test/built-ins/Set/prototype/delete/this-not-object-throw-symbol.js index de3f319c058beb3ec3acaa3c4d76fb45ed497213..14352979744e2bc66e1f92e3924f8984b1106ccf 100644 --- a/test/built-ins/Set/prototype/delete/this-not-object-throw-symbol.js +++ b/test/built-ins/Set/prototype/delete/this-not-object-throw-symbol.js @@ -8,6 +8,7 @@ description: > 1. Let S be the this value. 2. If Type(S) is not Object, throw a TypeError exception. +features: [Symbol] ---*/ assert.throws(TypeError, function() { diff --git a/test/built-ins/Set/prototype/entries/this-not-object-throw-symbol.js b/test/built-ins/Set/prototype/entries/this-not-object-throw-symbol.js index f727279c4696ef6f767b9553848c5fbc96791703..e006726c77e3dcb6b0763c067a2cd3d66f910024 100644 --- a/test/built-ins/Set/prototype/entries/this-not-object-throw-symbol.js +++ b/test/built-ins/Set/prototype/entries/this-not-object-throw-symbol.js @@ -13,6 +13,7 @@ description: > 1. If Type(set) is not Object, throw a TypeError exception. ... +features: [Symbol] ---*/ assert.throws(TypeError, function() { diff --git a/test/built-ins/Set/prototype/forEach/callback-not-callable-symbol.js b/test/built-ins/Set/prototype/forEach/callback-not-callable-symbol.js index 789b3e067ef3b14021a584ace00daf05894fa0f1..d715ea6e2983e47839db31b74c6e374374a7924d 100644 --- a/test/built-ins/Set/prototype/forEach/callback-not-callable-symbol.js +++ b/test/built-ins/Set/prototype/forEach/callback-not-callable-symbol.js @@ -11,6 +11,7 @@ description: > Passing `symbol` as callback +features: [Symbol] ---*/ var s = new Set([1]); diff --git a/test/built-ins/Set/prototype/forEach/this-not-object-throw-symbol.js b/test/built-ins/Set/prototype/forEach/this-not-object-throw-symbol.js index c2e0b8645d994d5d8c39b193c8174e577ab183c5..01441e8cfff5218c80932b28ff3c7f992191e193 100644 --- a/test/built-ins/Set/prototype/forEach/this-not-object-throw-symbol.js +++ b/test/built-ins/Set/prototype/forEach/this-not-object-throw-symbol.js @@ -8,6 +8,7 @@ description: > 1. Let S be the this value. 2. If Type(S) is not Object, throw a TypeError exception. +features: [Symbol] ---*/ assert.throws(TypeError, function() { diff --git a/test/built-ins/Set/prototype/has/returns-false-when-value-not-present-symbol.js b/test/built-ins/Set/prototype/has/returns-false-when-value-not-present-symbol.js index 64ae5c7d965e8986d31413f63260d69ba75721d7..04b5ac0c11144db70464ad76125cd5d6d598ccbf 100644 --- a/test/built-ins/Set/prototype/has/returns-false-when-value-not-present-symbol.js +++ b/test/built-ins/Set/prototype/has/returns-false-when-value-not-present-symbol.js @@ -8,6 +8,7 @@ description: > ... 6. Return false. +features: [Symbol] ---*/ var s = new Set(); diff --git a/test/built-ins/Set/prototype/has/returns-true-when-value-present-symbol.js b/test/built-ins/Set/prototype/has/returns-true-when-value-present-symbol.js index 7620fec78e01fe4f2e6ba8dc6b1fff33df284651..3a47d9ca36738c7df5c72d43de1585c51c3bf6b0 100644 --- a/test/built-ins/Set/prototype/has/returns-true-when-value-present-symbol.js +++ b/test/built-ins/Set/prototype/has/returns-true-when-value-present-symbol.js @@ -10,6 +10,7 @@ description: > a. If e is not empty and SameValueZero(e, value) is true, return true. ... +features: [Symbol] ---*/ var s = new Set(); diff --git a/test/built-ins/Set/prototype/has/this-not-object-throw-symbol.js b/test/built-ins/Set/prototype/has/this-not-object-throw-symbol.js index c64343df83c132f66c100eff602d667ccadcd612..46a76eb993c9b3af19577ab6084fe866d9e8478f 100644 --- a/test/built-ins/Set/prototype/has/this-not-object-throw-symbol.js +++ b/test/built-ins/Set/prototype/has/this-not-object-throw-symbol.js @@ -8,6 +8,7 @@ description: > 1. Let S be the this value. 2. If Type(S) is not Object, throw a TypeError exception. +features: [Symbol] ---*/ assert.throws(TypeError, function() { diff --git a/test/built-ins/Set/prototype/size/returns-count-of-present-values-by-insertion.js b/test/built-ins/Set/prototype/size/returns-count-of-present-values-by-insertion.js index 9ab0554651149c1258774b0e1a3039d65f168b8f..096ed5e7382fe0f94579e786a2bf6eb8ccb90bcf 100644 --- a/test/built-ins/Set/prototype/size/returns-count-of-present-values-by-insertion.js +++ b/test/built-ins/Set/prototype/size/returns-count-of-present-values-by-insertion.js @@ -9,6 +9,7 @@ description: > 6. For each e that is an element of entries a. If e is not empty, set count to count+1. +features: [Symbol] ---*/ var s = new Set(); diff --git a/test/built-ins/Set/prototype/size/returns-count-of-present-values-by-iterable.js b/test/built-ins/Set/prototype/size/returns-count-of-present-values-by-iterable.js index 7243d04731e0dc948f8555691e36f701aad74f49..d7cc5a8a9cad29ae27db657e049a49a9ace1af5e 100644 --- a/test/built-ins/Set/prototype/size/returns-count-of-present-values-by-iterable.js +++ b/test/built-ins/Set/prototype/size/returns-count-of-present-values-by-iterable.js @@ -9,6 +9,7 @@ description: > 6. For each e that is an element of entries a. If e is not empty, set count to count+1. +features: [Symbol] ---*/ var s = new Set([0, undefined, false, NaN, null, "", Symbol()]); diff --git a/test/built-ins/Set/prototype/values/this-not-object-throw-symbol.js b/test/built-ins/Set/prototype/values/this-not-object-throw-symbol.js index 19eb80a4875cfe1f782134117837a24007c38dd9..549fa1f1fc4dacc0092142fbd71ee22e11e1a490 100644 --- a/test/built-ins/Set/prototype/values/this-not-object-throw-symbol.js +++ b/test/built-ins/Set/prototype/values/this-not-object-throw-symbol.js @@ -13,6 +13,7 @@ description: > 1. If Type(set) is not Object, throw a TypeError exception. ... +features: [Symbol] ---*/ assert.throws(TypeError, function() { diff --git a/test/built-ins/Set/symbol-as-entry.js b/test/built-ins/Set/symbol-as-entry.js index f60743a3126f219d60052bfb252230cfcc2be106..2a53834720cbb821dfa4c2d4037f947a01b63171 100644 --- a/test/built-ins/Set/symbol-as-entry.js +++ b/test/built-ins/Set/symbol-as-entry.js @@ -4,7 +4,7 @@ es6id: 19.4 description: > Symbol as Set entry -features: [Set] +features: [Symbol, Set] ---*/ var set = new Set(); var sym = Symbol(); diff --git a/test/built-ins/SharedArrayBuffer/newtarget-prototype-is-not-object.js b/test/built-ins/SharedArrayBuffer/newtarget-prototype-is-not-object.js index 802b1787cb630e2676475ea53f930fde5d8ac0ac..0dc598dfe31e508b265e0d64054f96ec465457fa 100644 --- a/test/built-ins/SharedArrayBuffer/newtarget-prototype-is-not-object.js +++ b/test/built-ins/SharedArrayBuffer/newtarget-prototype-is-not-object.js @@ -18,7 +18,7 @@ info: > 1. Let obj be ? OrdinaryCreateFromConstructor(constructor, "%SharedArrayBufferPrototype%", «[[ArrayBufferData]], [[ArrayBufferByteLength]]» ). ... -features: [Reflect.construct] +features: [Symbol, Reflect.construct] ---*/ function newTarget() { } diff --git a/test/built-ins/SharedArrayBuffer/prototype/byteLength/this-is-not-object.js b/test/built-ins/SharedArrayBuffer/prototype/byteLength/this-is-not-object.js index 79e857b75f290a4152175a954a5471b01b0e51d3..4cc423002e646dfdd12cd3834f17561c6e4240d4 100644 --- a/test/built-ins/SharedArrayBuffer/prototype/byteLength/this-is-not-object.js +++ b/test/built-ins/SharedArrayBuffer/prototype/byteLength/this-is-not-object.js @@ -3,6 +3,7 @@ // This code is governed by the BSD license found in the LICENSE file. /*--- description: Throws a TypeError exception when `this` is not Object +features: [Symbol] ---*/ var getter = Object.getOwnPropertyDescriptor( diff --git a/test/built-ins/SharedArrayBuffer/prototype/slice/context-is-not-object.js b/test/built-ins/SharedArrayBuffer/prototype/slice/context-is-not-object.js index ce054180b712e51182eaa80af0f0a195c62878c9..95b7ee53cf5e54f2ffc51f16ef16cd3cca5c7dcd 100644 --- a/test/built-ins/SharedArrayBuffer/prototype/slice/context-is-not-object.js +++ b/test/built-ins/SharedArrayBuffer/prototype/slice/context-is-not-object.js @@ -7,6 +7,7 @@ description: > Throws a TypeError if `this` is not an Object. info: > SharedArrayBuffer.prototype.slice ( start, end ) +features: [Symbol] ---*/ assert.throws(TypeError, function() { diff --git a/test/built-ins/SharedArrayBuffer/prototype/slice/species-constructor-is-not-object.js b/test/built-ins/SharedArrayBuffer/prototype/slice/species-constructor-is-not-object.js index 86212bc65b906f09532647d9b4f9ba15d6b7f67d..7920c804a30776690006bbe1d5ee028f2333d6d0 100644 --- a/test/built-ins/SharedArrayBuffer/prototype/slice/species-constructor-is-not-object.js +++ b/test/built-ins/SharedArrayBuffer/prototype/slice/species-constructor-is-not-object.js @@ -8,6 +8,7 @@ description: > info: > SharedArrayBuffer.prototype.slice ( start, end ) +features: [Symbol] ---*/ var arrayBuffer = new SharedArrayBuffer(8); diff --git a/test/built-ins/Symbol/auto-boxing-non-strict.js b/test/built-ins/Symbol/auto-boxing-non-strict.js index 459bc75d263a9b437c511e75af7d498eaf74d531..9ba613193aa43e3dd354b1edc3703bc582b8a10c 100644 --- a/test/built-ins/Symbol/auto-boxing-non-strict.js +++ b/test/built-ins/Symbol/auto-boxing-non-strict.js @@ -5,6 +5,7 @@ es6id: 19.4 description: > Symbol ToObject auto-boxing flags: [noStrict] +features: [Symbol] ---*/ var sym = Symbol('66'); diff --git a/test/built-ins/Symbol/auto-boxing-strict.js b/test/built-ins/Symbol/auto-boxing-strict.js index 0d18c536033a1aa04ea5e702047fd552d4763f33..02d4c6614d1334043e30a6b70bcf1d1fe6c1c539 100644 --- a/test/built-ins/Symbol/auto-boxing-strict.js +++ b/test/built-ins/Symbol/auto-boxing-strict.js @@ -5,6 +5,7 @@ es6id: 19.4 description: > Symbol ToObject auto-boxing flags: [onlyStrict] +features: [Symbol] ---*/ assert.throws(TypeError, function() { diff --git a/test/built-ins/Symbol/constructor.js b/test/built-ins/Symbol/constructor.js index cae673b1ab946a2f0cec7223681196e6b3d7c32a..e62f06c8fd8a71f366071202058dc616d317dae0 100644 --- a/test/built-ins/Symbol/constructor.js +++ b/test/built-ins/Symbol/constructor.js @@ -4,6 +4,7 @@ es6id: 19.4.3.1 description: > Symbol constructor +features: [Symbol] ---*/ assert.sameValue( Object.getPrototypeOf(Symbol('66')).constructor, diff --git a/test/built-ins/Symbol/desc-to-string-symbol.js b/test/built-ins/Symbol/desc-to-string-symbol.js index e4b6d2954ec76505cf74826b23283f763ec60f88..e9aaa69b74224c9524f50b736a65730e5281f61a 100644 --- a/test/built-ins/Symbol/desc-to-string-symbol.js +++ b/test/built-ins/Symbol/desc-to-string-symbol.js @@ -10,6 +10,7 @@ info: | 2. Else, let descString be ? ToString(description). 3. Return a new unique Symbol value whose [[Description]] value is descString. +features: [Symbol] ---*/ var s = Symbol('1'); diff --git a/test/built-ins/Symbol/desc-to-string.js b/test/built-ins/Symbol/desc-to-string.js index b79f76eda65618f6091ab4de60b53af23b799f4e..aa6e885b844f22f48435d04281b04c17e3357c08 100644 --- a/test/built-ins/Symbol/desc-to-string.js +++ b/test/built-ins/Symbol/desc-to-string.js @@ -10,6 +10,7 @@ info: | 2. Else, let descString be ? ToString(description). 3. Return a new unique Symbol value whose [[Description]] value is descString. +features: [Symbol] ---*/ var calls, val; diff --git a/test/built-ins/Symbol/for/create-value.js b/test/built-ins/Symbol/for/create-value.js index b5ceaeacb9c1d196d948807d2f78fa366040d08a..dc1aee35b5379d286a683290be38ede50f415fa6 100644 --- a/test/built-ins/Symbol/for/create-value.js +++ b/test/built-ins/Symbol/for/create-value.js @@ -15,6 +15,7 @@ info: > 5. Append the Record { [[Key]]: stringKey, [[Symbol]]: newSymbol } to the GlobalSymbolRegistry List. 6. Return newSymbol. +features: [Symbol] ---*/ var canonical = Symbol.for('s'); diff --git a/test/built-ins/Symbol/for/to-string-err.js b/test/built-ins/Symbol/for/to-string-err.js index 77348fbd4505fdf3d9510cdd6bd0f285bd040355..22689a8468e6e5325162ba81fbbf40afa969428f 100644 --- a/test/built-ins/Symbol/for/to-string-err.js +++ b/test/built-ins/Symbol/for/to-string-err.js @@ -6,6 +6,7 @@ es6id: 19.4.2.1 description: Error resulting from string coercion of first argument info: > 1. Let stringKey be ? ToString(key). +features: [Symbol] ---*/ var subject = { diff --git a/test/built-ins/Symbol/invoked-with-new.js b/test/built-ins/Symbol/invoked-with-new.js index c4274b013e25b381b0e92788d37898d7fc4a08ae..a3158cc68f97e7ca3c882d9f0855e4d661ed86a7 100644 --- a/test/built-ins/Symbol/invoked-with-new.js +++ b/test/built-ins/Symbol/invoked-with-new.js @@ -6,6 +6,7 @@ es6id: 19.4.1 description: The Symbol constructor may not be invoked with `new` info: | 1. If NewTarget is not undefined, throw a TypeError exception. +features: [Symbol] ---*/ assert.throws(TypeError, function() { diff --git a/test/built-ins/Symbol/keyFor/arg-non-symbol.js b/test/built-ins/Symbol/keyFor/arg-non-symbol.js index 2042cfa6f165edd7217e65f20ebbd386d1a6dc05..4c3820e6f375df7c88032d2ec023ccad49ef735e 100644 --- a/test/built-ins/Symbol/keyFor/arg-non-symbol.js +++ b/test/built-ins/Symbol/keyFor/arg-non-symbol.js @@ -6,6 +6,7 @@ es6id: 19.4.2.5 description: Called with a non-symbol argument info: > 1. If Type(sym) is not Symbol, throw a TypeError exception. +features: [Symbol] ---*/ assert.sameValue(typeof Symbol.keyFor, 'function'); 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 86bf657a8fd29fb6515786767d705b5152e3f769..2f70c632a8bf9df4bfe6569fac5b6dd82ddeb3f3 100644 --- a/test/built-ins/Symbol/keyFor/arg-symbol-registry-miss.js +++ b/test/built-ins/Symbol/keyFor/arg-symbol-registry-miss.js @@ -12,6 +12,7 @@ info: > 3. Assert: GlobalSymbolRegistry does not currently contain an entry for sym. 4. Return undefined. +features: [Symbol] ---*/ var constructed = Symbol('Symbol.iterator'); diff --git a/test/built-ins/Symbol/prototype/intrinsic.js b/test/built-ins/Symbol/prototype/intrinsic.js index e51bafffaafe3dfb689079b6b2d7c249789b3dcb..2059f7b84e4467627e8173fbdca53cd2ca2b5be3 100644 --- a/test/built-ins/Symbol/prototype/intrinsic.js +++ b/test/built-ins/Symbol/prototype/intrinsic.js @@ -4,6 +4,7 @@ es6id: 19.4.3 description: > Symbol prototype +features: [Symbol] ---*/ assert.sameValue( Object.getPrototypeOf(Symbol('66')), diff --git a/test/built-ins/Symbol/prototype/toString/toString-default-attributes-non-strict.js b/test/built-ins/Symbol/prototype/toString/toString-default-attributes-non-strict.js index 5fdb58e5b1920da5153998c64d4edbefbc5ba22c..a37568c43b09f5c11e5684f079cd563ae94e359e 100644 --- a/test/built-ins/Symbol/prototype/toString/toString-default-attributes-non-strict.js +++ b/test/built-ins/Symbol/prototype/toString/toString-default-attributes-non-strict.js @@ -5,6 +5,7 @@ es6id: 19.4 description: > Symbol property get and set, non-strict flags: [noStrict] +features: [Symbol] ---*/ var sym = Symbol('66'); diff --git a/test/built-ins/Symbol/prototype/toString/toString-default-attributes-strict.js b/test/built-ins/Symbol/prototype/toString/toString-default-attributes-strict.js index 96df7a934698e8cb23414d4a8753bd56f7380eb0..188712f548ce0f2922964016ddde7d464593e14a 100644 --- a/test/built-ins/Symbol/prototype/toString/toString-default-attributes-strict.js +++ b/test/built-ins/Symbol/prototype/toString/toString-default-attributes-strict.js @@ -5,6 +5,7 @@ es6id: 19.4 description: > Symbol property get and set, strict flags: [onlyStrict] +features: [Symbol] ---*/ var sym = Symbol("66"); diff --git a/test/built-ins/Symbol/prototype/toString/toString.js b/test/built-ins/Symbol/prototype/toString/toString.js index 1a6541981b44db426189d595cc3bd161f11e91f2..f771cb1e1cc0115444cfd7e72551181a577dca83 100644 --- a/test/built-ins/Symbol/prototype/toString/toString.js +++ b/test/built-ins/Symbol/prototype/toString/toString.js @@ -4,6 +4,7 @@ es6id: 19.4.3.2 description: > toString operations on Symbols +features: [Symbol] ---*/ assert.sameValue( String(Symbol('66')), diff --git a/test/built-ins/Symbol/prototype/toString/undefined.js b/test/built-ins/Symbol/prototype/toString/undefined.js index 7d6baad469ab34458ea2eb6b515a0542fc4f2321..c2b2bc743483d15e507bd4d05b55b0253ce979f4 100644 --- a/test/built-ins/Symbol/prototype/toString/undefined.js +++ b/test/built-ins/Symbol/prototype/toString/undefined.js @@ -18,6 +18,7 @@ info: | 3. If desc is undefined, let desc be the empty string. 4. Assert: Type(desc) is String. 5. Return the result of concatenating the strings "Symbol(", desc, and ")". +features: [Symbol] ---*/ assert.sameValue(Symbol().toString(), 'Symbol()', 'implicit value'); diff --git a/test/built-ins/Symbol/prototype/valueOf/this-val-obj-symbol.js b/test/built-ins/Symbol/prototype/valueOf/this-val-obj-symbol.js index c34b6bbdd3db592c2050f33691582b3173f27a45..965b6e5ab58b74a160e3e689e18ade072ae22f5b 100644 --- a/test/built-ins/Symbol/prototype/valueOf/this-val-obj-symbol.js +++ b/test/built-ins/Symbol/prototype/valueOf/this-val-obj-symbol.js @@ -10,6 +10,7 @@ info: | 3. If Type(s) is not Object, throw a TypeError exception. 4. If s does not have a [[SymbolData]] internal slot, throw a TypeError exception. 5. Return the value of s's [[SymbolData]] internal slot. +features: [Symbol] ---*/ var valueOf = Symbol.prototype.valueOf; diff --git a/test/built-ins/Symbol/prototype/valueOf/this-val-symbol.js b/test/built-ins/Symbol/prototype/valueOf/this-val-symbol.js index 395ba5b48cf29782f42912e043797e3347db2bc2..9fd0a94b4a622c13df102241fbf296d6b53210f7 100644 --- a/test/built-ins/Symbol/prototype/valueOf/this-val-symbol.js +++ b/test/built-ins/Symbol/prototype/valueOf/this-val-symbol.js @@ -7,6 +7,7 @@ description: Called on a Symbol value info: | 1. Let s be the this value. 2. If Type(s) is Symbol, return s. +features: [Symbol] ---*/ var valueOf = Symbol.prototype.valueOf; diff --git a/test/built-ins/Symbol/uniqueness.js b/test/built-ins/Symbol/uniqueness.js index 02efc89f1aad19aef3c46c794fc95a870bf37878..bfca22f6b4b14f234c8b7c57f6cf33bc9a28f5c4 100644 --- a/test/built-ins/Symbol/uniqueness.js +++ b/test/built-ins/Symbol/uniqueness.js @@ -10,6 +10,7 @@ info: | 2. Else, let descString be ? ToString(description). 3. Return a new unique Symbol value whose [[Description]] value is descString. +features: [Symbol] ---*/ assert.notSameValue(Symbol(''), Symbol(''), 'empty string'); diff --git a/test/built-ins/TypedArrays/buffer-arg-byteoffset-is-symbol-throws-sab.js b/test/built-ins/TypedArrays/buffer-arg-byteoffset-is-symbol-throws-sab.js index 416e5db7d1dcbddd82ca0d0f472cdd4af72b733b..2b9d976bf196894be442662e614488762ef2f107 100644 --- a/test/built-ins/TypedArrays/buffer-arg-byteoffset-is-symbol-throws-sab.js +++ b/test/built-ins/TypedArrays/buffer-arg-byteoffset-is-symbol-throws-sab.js @@ -16,7 +16,7 @@ info: > 7. Let offset be ? ToInteger(byteOffset). ... includes: [testTypedArray.js] -features: [SharedArrayBuffer] +features: [Symbol, SharedArrayBuffer] ---*/ var byteOffset = Symbol("1"); diff --git a/test/built-ins/TypedArrays/buffer-arg-length-is-symbol-throws-sab.js b/test/built-ins/TypedArrays/buffer-arg-length-is-symbol-throws-sab.js index 0ae03e4e9eaf95277f1941c09feab3172ad9bcb2..237aaf62af31216760ea543e84ba09a202d8c401 100644 --- a/test/built-ins/TypedArrays/buffer-arg-length-is-symbol-throws-sab.js +++ b/test/built-ins/TypedArrays/buffer-arg-length-is-symbol-throws-sab.js @@ -17,7 +17,7 @@ info: > a. Let newLength be ? ToLength(length). ... includes: [testTypedArray.js] -features: [SharedArrayBuffer] +features: [Symbol, SharedArrayBuffer] ---*/ var buffer = new SharedArrayBuffer(8); diff --git a/test/built-ins/WeakMap/prototype/get/returns-undefined-key-is-not-object.js b/test/built-ins/WeakMap/prototype/get/returns-undefined-key-is-not-object.js index bfe4097f0f22be3fe70bd58a03e7454db28a53d5..6363ef51052d95857e29ad149d605d8b80732676 100644 --- a/test/built-ins/WeakMap/prototype/get/returns-undefined-key-is-not-object.js +++ b/test/built-ins/WeakMap/prototype/get/returns-undefined-key-is-not-object.js @@ -13,6 +13,7 @@ info: > slot. 5. If Type(key) is not Object, return undefined. ... +features: [Symbol] ---*/ var map = new WeakMap(); diff --git a/test/built-ins/WeakSet/prototype/delete/this-not-object-throw-symbol.js b/test/built-ins/WeakSet/prototype/delete/this-not-object-throw-symbol.js index 8624f6dd0dddaa28d2c459f4bb0ac1e3f8916261..6599ec870e29f360396e17e523a005141dd67fdf 100644 --- a/test/built-ins/WeakSet/prototype/delete/this-not-object-throw-symbol.js +++ b/test/built-ins/WeakSet/prototype/delete/this-not-object-throw-symbol.js @@ -9,6 +9,7 @@ info: > 1. Let S be the this value. 2. If Type(S) is not Object, throw a TypeError exception. +features: [Symbol] ---*/ assert.throws(TypeError, function() { diff --git a/test/built-ins/WeakSet/symbol-disallowed-as-weakset-key.js b/test/built-ins/WeakSet/symbol-disallowed-as-weakset-key.js index 1c25f5f3b500084340b71fd5dfcb66d0ea4de82b..c74175745a044e9488581a2cdcc02ef94e50eceb 100644 --- a/test/built-ins/WeakSet/symbol-disallowed-as-weakset-key.js +++ b/test/built-ins/WeakSet/symbol-disallowed-as-weakset-key.js @@ -5,7 +5,7 @@ es6id: 23.4.3.1_S2 esid: sec-weakset.prototype.add description: > Symbol may not be used as a WeakSet entry -features: [WeakSet] +features: [Symbol, WeakSet] ---*/ var weakset = new WeakSet(); var sym = Symbol(); diff --git a/test/harness/verifyProperty-desc-is-not-object.js b/test/harness/verifyProperty-desc-is-not-object.js index 418c2893f52a38de74ba666ad63a84eb36716a2e..d269d6737dbcb7d6710f9c8b9eec84e78e0dea62 100644 --- a/test/harness/verifyProperty-desc-is-not-object.js +++ b/test/harness/verifyProperty-desc-is-not-object.js @@ -5,6 +5,7 @@ description: > The desc argument should be an object or undefined includes: [propertyHelper.js,sta.js] +features: [Symbol] ---*/ var sample = { foo: 42 }; diff --git a/test/harness/verifyProperty-restore-accessor-symbol.js b/test/harness/verifyProperty-restore-accessor-symbol.js index 77d726d542bbf90ac5940c412748bfb0a8607ceb..d560fe9fb74a049a7359c45bbdb434d1e8a4614b 100644 --- a/test/harness/verifyProperty-restore-accessor-symbol.js +++ b/test/harness/verifyProperty-restore-accessor-symbol.js @@ -5,6 +5,7 @@ description: > verifyProperty allows restoring the original accessor descriptor includes: [propertyHelper.js] +features: [Symbol] ---*/ var obj; diff --git a/test/harness/verifyProperty-restore-symbol.js b/test/harness/verifyProperty-restore-symbol.js index a407412e56f6fc6f27c11711e1d9a44701b3f7c4..37953bb144a6c79453a830561fa9195aeb301a1f 100644 --- a/test/harness/verifyProperty-restore-symbol.js +++ b/test/harness/verifyProperty-restore-symbol.js @@ -5,6 +5,7 @@ description: > verifyProperty allows restoring the original descriptor includes: [propertyHelper.js] +features: [Symbol] ---*/ var obj; diff --git a/test/harness/verifyProperty-symbol-prop.js b/test/harness/verifyProperty-symbol-prop.js index 3a59108d8deb3590f7d21fed5adf428ebd3855c0..f16c42e30a2148cc87153bbeebef469d05eee2d9 100644 --- a/test/harness/verifyProperty-symbol-prop.js +++ b/test/harness/verifyProperty-symbol-prop.js @@ -5,6 +5,7 @@ description: > Verify symbol named property descriptor includes: [propertyHelper.js] +features: [Symbol] ---*/ var obj; diff --git a/test/language/computed-property-names/basics/symbol.js b/test/language/computed-property-names/basics/symbol.js index 60e4784872af73e341878e9608cb00e41a336f53..c8d54547a445f5f2884434f4b68b171d3a31e306 100644 --- a/test/language/computed-property-names/basics/symbol.js +++ b/test/language/computed-property-names/basics/symbol.js @@ -5,6 +5,7 @@ es6id: 12.2.5 description: > computed property names can be a symbol includes: [compareArray.js] +features: [Symbol] ---*/ function ID(x) { diff --git a/test/language/computed-property-names/class/method/symbol.js b/test/language/computed-property-names/class/method/symbol.js index c7425fcb6a5556060d0b229b7651a86dc63712ac..bec9976f185e74466c3f22513b599ec5a05de685 100644 --- a/test/language/computed-property-names/class/method/symbol.js +++ b/test/language/computed-property-names/class/method/symbol.js @@ -5,6 +5,7 @@ es6id: 12.2.5 description: > computed property class method names can be a symbol includes: [compareArray.js] +features: [Symbol] ---*/ function ID(x) { diff --git a/test/language/computed-property-names/class/static/method-symbol.js b/test/language/computed-property-names/class/static/method-symbol.js index 31012afeb8723219c33d7ca1e6d83b198cc3b4a0..7d6506dcaf68b5fd56d652af287b2204d65e38b0 100644 --- a/test/language/computed-property-names/class/static/method-symbol.js +++ b/test/language/computed-property-names/class/static/method-symbol.js @@ -5,6 +5,7 @@ es6id: 12.2.5 description: > In a class, static computed property method names can be a symbol includes: [compareArray.js] +features: [Symbol] ---*/ var sym1 = Symbol(); var sym2 = Symbol(); diff --git a/test/language/computed-property-names/object/method/symbol.js b/test/language/computed-property-names/object/method/symbol.js index 3c76e856be04a7da412b84725c3ca1c11f110637..21ef99efa36addeb5b4df1fe46cf9dc859c8159d 100644 --- a/test/language/computed-property-names/object/method/symbol.js +++ b/test/language/computed-property-names/object/method/symbol.js @@ -5,6 +5,7 @@ es6id: 12.2.5 description: > computed property method names can be a symbol includes: [compareArray.js] +features: [Symbol] ---*/ function ID(x) { diff --git a/test/language/expressions/conditional/symbol-conditional-evaluation.js b/test/language/expressions/conditional/symbol-conditional-evaluation.js index db3add4e3ca1ae978d533408eca155f9d91bcfd9..b1fb4e696fe3bc66376759cf7a248ddfd6096972 100644 --- a/test/language/expressions/conditional/symbol-conditional-evaluation.js +++ b/test/language/expressions/conditional/symbol-conditional-evaluation.js @@ -4,6 +4,7 @@ es6id: 12.12.3 description: > Conditional Symbol evaluation +features: [Symbol] ---*/ var sym = Symbol(); diff --git a/test/language/expressions/equals/symbol-abstract-equality-comparison.js b/test/language/expressions/equals/symbol-abstract-equality-comparison.js index 7ca1e0f71a664b439875c9bf2778d590150b598f..904c4abe4d32d592f3e099ff4604ce3b6093dbbf 100644 --- a/test/language/expressions/equals/symbol-abstract-equality-comparison.js +++ b/test/language/expressions/equals/symbol-abstract-equality-comparison.js @@ -4,6 +4,7 @@ es6id: 7.2.12 description: > Abstract Equality Comparison: Symbol +features: [Symbol] ---*/ var symA = Symbol('66'); var symB = Symbol('66'); diff --git a/test/language/expressions/equals/symbol-strict-equality-comparison.js b/test/language/expressions/equals/symbol-strict-equality-comparison.js index d77c83ca33ccb53a0b51a6ad1ab3473e03a3d8e5..361009b834e0a72ef7b26657d4f83fafd75cbf7b 100644 --- a/test/language/expressions/equals/symbol-strict-equality-comparison.js +++ b/test/language/expressions/equals/symbol-strict-equality-comparison.js @@ -4,6 +4,7 @@ es6id: 7.2.13 description: > Strict Equality Comparison: Symbol +features: [Symbol] ---*/ var symA = Symbol('66'); var symB = Symbol('66'); diff --git a/test/language/expressions/logical-and/symbol-logical-and-evaluation.js b/test/language/expressions/logical-and/symbol-logical-and-evaluation.js index 689ba7d77f586de41baa5ea49df47e97db0b6598..3c2c5a7b7bd186d4fee85cbf099b01b481f7f061 100644 --- a/test/language/expressions/logical-and/symbol-logical-and-evaluation.js +++ b/test/language/expressions/logical-and/symbol-logical-and-evaluation.js @@ -4,6 +4,7 @@ es6id: 12.12.3 description: > "Logical AND" Symbol evaluation +features: [Symbol] ---*/ var sym = Symbol(); diff --git a/test/language/expressions/logical-not/symbol-logical-not-evaluation.js b/test/language/expressions/logical-not/symbol-logical-not-evaluation.js index c161525307b515508481608bf5e0c079a4eee054..6fe19e1165ec240bbc1f53c03224838a4a7c5def 100644 --- a/test/language/expressions/logical-not/symbol-logical-not-evaluation.js +++ b/test/language/expressions/logical-not/symbol-logical-not-evaluation.js @@ -4,6 +4,7 @@ es6id: 12.5.12.1 description: > "Logical Not" coercion operation on Symbols +features: [Symbol] ---*/ var sym = Symbol(); diff --git a/test/language/expressions/logical-or/symbol-logical-or-evaluation.js b/test/language/expressions/logical-or/symbol-logical-or-evaluation.js index 7d3a1be6834233ecaef4793086e9da09411f1342..905a67c80736e37a779b24624340434568159837 100644 --- a/test/language/expressions/logical-or/symbol-logical-or-evaluation.js +++ b/test/language/expressions/logical-or/symbol-logical-or-evaluation.js @@ -4,6 +4,7 @@ es6id: 12.12.3 description: > "Logical OR" Symbol evaluation +features: [Symbol] ---*/ var sym = Symbol(); diff --git a/test/language/expressions/object/computed-__proto__.js b/test/language/expressions/object/computed-__proto__.js index a4040ed31d7a43b182b5b87a2185ddf5cd68a768..9287265631eb83fee78298285f6a4281431ae82e 100644 --- a/test/language/expressions/object/computed-__proto__.js +++ b/test/language/expressions/object/computed-__proto__.js @@ -25,6 +25,7 @@ info: | a. If Type(propValue) is either Object or Null, then i. Return object.[[SetPrototypeOf]](propValue). b. Return NormalCompletion(empty). +features: [Symbol] ---*/ var obj; diff --git a/test/language/expressions/typeof/symbol.js b/test/language/expressions/typeof/symbol.js index 10440b4c04d3b0f065dd0e98a153c54b90d86f74..93e8a1ca9a9f6d8a8de3903fceb0e35822367488 100644 --- a/test/language/expressions/typeof/symbol.js +++ b/test/language/expressions/typeof/symbol.js @@ -5,6 +5,7 @@ es6id: 12.5.6.1 description: > typeof Symbol() returns 'symbol'. typeof Object(Symbol()) returns 'object'. +features: [Symbol] ---*/ assert.sameValue(typeof Symbol('A'), 'symbol', "`typeof Symbol('A')` is `'symbol'`"); assert.sameValue(typeof Symbol(), 'symbol', "`typeof Symbol()` is `'symbol'`"); diff --git a/test/language/statements/class/subclass/derived-class-return-override-with-symbol.js b/test/language/statements/class/subclass/derived-class-return-override-with-symbol.js index d31896482236bd14da05f710e9a8952f350ca0ca..009a88c1ab0834b30bce5b3df0ac617f41f30c55 100644 --- a/test/language/statements/class/subclass/derived-class-return-override-with-symbol.js +++ b/test/language/statements/class/subclass/derived-class-return-override-with-symbol.js @@ -13,6 +13,7 @@ description: > `return Symbol();` +features: [Symbol] ---*/ class Base { constructor() {}