From 5f8de423f190bbb79a62f804151bc24824fa32d8 Mon Sep 17 00:00:00 2001 From: "Matt A. Tobin" Date: Fri, 2 Feb 2018 04:16:08 -0500 Subject: Add m-esr52 at 52.6.0 --- js/src/tests/ecma_6/Symbol/species.js | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 js/src/tests/ecma_6/Symbol/species.js (limited to 'js/src/tests/ecma_6/Symbol/species.js') diff --git a/js/src/tests/ecma_6/Symbol/species.js b/js/src/tests/ecma_6/Symbol/species.js new file mode 100644 index 000000000..ba45066e1 --- /dev/null +++ b/js/src/tests/ecma_6/Symbol/species.js @@ -0,0 +1,30 @@ +var BUGNUMBER = 1131043; +var summary = "Implement @@species getter for builtin types"; + +print(BUGNUMBER + ": " + summary); + +var TypedArray = Object.getPrototypeOf(Int8Array); + +for (var C of [Array, Map, Set, RegExp, + Int8Array, Uint8Array, Uint8ClampedArray, + Int16Array, Uint16Array, Int32Array, Uint32Array, + Float32Array, Float64Array, + ArrayBuffer]) { + assertEq(C[Symbol.species], C); +} + +for (C of [Array, Map, Set, RegExp, + TypedArray, + ArrayBuffer]) { + var desc = Object.getOwnPropertyDescriptor(C, Symbol.species); + assertDeepEq(Object.keys(desc).sort(), ["configurable", "enumerable", "get", "set"]); + assertEq(desc.set, undefined); + assertEq(desc.enumerable, false); + assertEq(desc.configurable, true); + assertEq(desc.get.apply(null), null); + assertEq(desc.get.apply(undefined), undefined); + assertEq(desc.get.apply(42), 42); +} + +if (typeof reportCompare === "function") + reportCompare(0, 0); -- cgit v1.2.3