From 46041c35ed64903001648ac1039771210c40826a Mon Sep 17 00:00:00 2001 From: Robin Templeton <robin@igalia.com> Date: Tue, 24 Oct 2017 11:44:56 -0400 Subject: [PATCH 1/2] BigInt64Array/BigUint64Array --- .../BigInt64Array/BYTES_PER_ELEMENT.js | 24 +++++++++++++ .../TypedArrays/BigInt64Array/constructor.js | 19 ++++++++++ .../TypedArrays/BigInt64Array/length.js | 36 +++++++++++++++++++ .../TypedArrays/BigInt64Array/name.js | 36 +++++++++++++++++++ .../TypedArrays/BigInt64Array/prop-desc.js | 17 +++++++++ .../TypedArrays/BigInt64Array/proto.js | 16 +++++++++ .../TypedArrays/BigInt64Array/prototype.js | 24 +++++++++++++ .../prototype/BYTES_PER_ELEMENT.js | 24 +++++++++++++ .../BigInt64Array/prototype/constructor.js | 23 ++++++++++++ .../prototype/not-typedarray-object.js | 19 ++++++++++ .../BigInt64Array/prototype/proto.js | 17 +++++++++ .../BigUint64Array/BYTES_PER_ELEMENT.js | 24 +++++++++++++ .../TypedArrays/BigUint64Array/constructor.js | 19 ++++++++++ .../TypedArrays/BigUint64Array/length.js | 36 +++++++++++++++++++ .../TypedArrays/BigUint64Array/name.js | 36 +++++++++++++++++++ .../TypedArrays/BigUint64Array/prop-desc.js | 17 +++++++++ .../TypedArrays/BigUint64Array/proto.js | 16 +++++++++ .../TypedArrays/BigUint64Array/prototype.js | 24 +++++++++++++ .../prototype/BYTES_PER_ELEMENT.js | 24 +++++++++++++ .../BigUint64Array/prototype/constructor.js | 23 ++++++++++++ .../prototype/not-typedarray-object.js | 19 ++++++++++ .../BigUint64Array/prototype/proto.js | 17 +++++++++ 22 files changed, 510 insertions(+) create mode 100644 test/built-ins/TypedArrays/BigInt64Array/BYTES_PER_ELEMENT.js create mode 100644 test/built-ins/TypedArrays/BigInt64Array/constructor.js create mode 100644 test/built-ins/TypedArrays/BigInt64Array/length.js create mode 100644 test/built-ins/TypedArrays/BigInt64Array/name.js create mode 100644 test/built-ins/TypedArrays/BigInt64Array/prop-desc.js create mode 100644 test/built-ins/TypedArrays/BigInt64Array/proto.js create mode 100644 test/built-ins/TypedArrays/BigInt64Array/prototype.js create mode 100644 test/built-ins/TypedArrays/BigInt64Array/prototype/BYTES_PER_ELEMENT.js create mode 100644 test/built-ins/TypedArrays/BigInt64Array/prototype/constructor.js create mode 100644 test/built-ins/TypedArrays/BigInt64Array/prototype/not-typedarray-object.js create mode 100644 test/built-ins/TypedArrays/BigInt64Array/prototype/proto.js create mode 100644 test/built-ins/TypedArrays/BigUint64Array/BYTES_PER_ELEMENT.js create mode 100644 test/built-ins/TypedArrays/BigUint64Array/constructor.js create mode 100644 test/built-ins/TypedArrays/BigUint64Array/length.js create mode 100644 test/built-ins/TypedArrays/BigUint64Array/name.js create mode 100644 test/built-ins/TypedArrays/BigUint64Array/prop-desc.js create mode 100644 test/built-ins/TypedArrays/BigUint64Array/proto.js create mode 100644 test/built-ins/TypedArrays/BigUint64Array/prototype.js create mode 100644 test/built-ins/TypedArrays/BigUint64Array/prototype/BYTES_PER_ELEMENT.js create mode 100644 test/built-ins/TypedArrays/BigUint64Array/prototype/constructor.js create mode 100644 test/built-ins/TypedArrays/BigUint64Array/prototype/not-typedarray-object.js create mode 100644 test/built-ins/TypedArrays/BigUint64Array/prototype/proto.js diff --git a/test/built-ins/TypedArrays/BigInt64Array/BYTES_PER_ELEMENT.js b/test/built-ins/TypedArrays/BigInt64Array/BYTES_PER_ELEMENT.js new file mode 100644 index 0000000000..134d99ef71 --- /dev/null +++ b/test/built-ins/TypedArrays/BigInt64Array/BYTES_PER_ELEMENT.js @@ -0,0 +1,24 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray.bytes_per_element +description: BigInt64Array.BYTES_PER_ELEMENT property descriptor +info: > + 22.2.5.1 TypedArray.BYTES_PER_ELEMENT + + The value of TypedArray.BYTES_PER_ELEMENT is the Number value of the + Element Size value specified in Table 52 for TypedArray. + + This property has the attributes { [[Writable]]: false, + [[Enumerable]]: false, [[Configurable]]: false }. +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(BigInt64Array, "BYTES_PER_ELEMENT", { + value: 8, + writable: false, + enumerable: false, + configurable: false +}); diff --git a/test/built-ins/TypedArrays/BigInt64Array/constructor.js b/test/built-ins/TypedArrays/BigInt64Array/constructor.js new file mode 100644 index 0000000000..aa514f5396 --- /dev/null +++ b/test/built-ins/TypedArrays/BigInt64Array/constructor.js @@ -0,0 +1,19 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray-constructors +description: BigInt64Array is a constructor function +info: > + 22.2.4 The TypedArray Constructors + + [...] + + The TypedArray intrinsic constructor functions are single functions + whose behaviour is overloaded based upon the number and types of its + arguments. The actual behaviour of a call of TypedArray depends upon + the number and kind of arguments that are passed to it. +features: [BigInt] +---*/ + +assert.sameValue(typeof BigInt64Array, "function"); diff --git a/test/built-ins/TypedArrays/BigInt64Array/length.js b/test/built-ins/TypedArrays/BigInt64Array/length.js new file mode 100644 index 0000000000..843f54ff95 --- /dev/null +++ b/test/built-ins/TypedArrays/BigInt64Array/length.js @@ -0,0 +1,36 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray-constructors +description: BigInt64Array.length property descriptor +info: > + 22.2.4 The TypedArray Constructors + + [...] + + The length property of the TypedArray constructor function is 3. + + 17 ECMAScript Standard Built-in Objects + + Every built-in function object, including constructors, has a length + property whose value is an integer. Unless otherwise specified, this + value is equal to the largest number of named arguments shown in the + subclause headings for the function description. Optional parameters + (which are indicated with brackets: [ ]) or rest parameters (which + are shown using the form «...name») are not included in the default + argument count. + + Unless otherwise specified, the length property of a built-in + function object has the attributes { [[Writable]]: false, + [[Enumerable]]: false, [[Configurable]]: true }. +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(BigInt64Array, "length", { + value: 3, + writable: false, + enumerable: false, + configurable: true +}); diff --git a/test/built-ins/TypedArrays/BigInt64Array/name.js b/test/built-ins/TypedArrays/BigInt64Array/name.js new file mode 100644 index 0000000000..5a6374de08 --- /dev/null +++ b/test/built-ins/TypedArrays/BigInt64Array/name.js @@ -0,0 +1,36 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-properties-of-the-typedarray-constructors +description: BigInt64Array.name property descriptor +info: > + 22.2.5 Properties of the TypedArray Constructors + + [...] + + Each TypedArray constructor has a name property whose value is the + String value of the constructor name specified for it in Table 52. + + 17 ECMAScript Standard Built-in Objects + + Every built-in function object, including constructors, that is not + identified as an anonymous function has a name property whose value + is a String. Unless otherwise specified, this value is the name that + is given to the function in this specification. For functions that + are specified as properties of objects, the name value is the + property name string used to access the function. [...] + + Unless otherwise specified, the name property of a built-in function + object, if it exists, has the attributes { [[Writable]]: false, + [[Enumerable]]: false, [[Configurable]]: true }. +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(BigInt64Array, "name", { + value: "BigInt64Array", + writable: false, + enumerable: false, + configurable: true +}); diff --git a/test/built-ins/TypedArrays/BigInt64Array/prop-desc.js b/test/built-ins/TypedArrays/BigInt64Array/prop-desc.js new file mode 100644 index 0000000000..1253e81cdf --- /dev/null +++ b/test/built-ins/TypedArrays/BigInt64Array/prop-desc.js @@ -0,0 +1,17 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray-objects +description: BigInt64Array property descriptor +info: > + 17 ECMAScript Standard Built-in Objects +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(this, "BigInt64Array", { + writable: true, + enumerable: false, + configurable: true +}); diff --git a/test/built-ins/TypedArrays/BigInt64Array/proto.js b/test/built-ins/TypedArrays/BigInt64Array/proto.js new file mode 100644 index 0000000000..2201e30eea --- /dev/null +++ b/test/built-ins/TypedArrays/BigInt64Array/proto.js @@ -0,0 +1,16 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-properties-of-the-typedarray-constructors +description: BigInt64Array prototype internal slot +info: > + 22.2.5 Properties of the TypedArray Constructors + + The value of the [[Prototype]] internal slot of each TypedArray + constructor is the %TypedArray% intrinsic object. +includes: [testTypedArray.js] +features: [BigInt, TypedArray] +---*/ + +assert.sameValue(Object.getPrototypeOf(BigInt64Array), TypedArray); diff --git a/test/built-ins/TypedArrays/BigInt64Array/prototype.js b/test/built-ins/TypedArrays/BigInt64Array/prototype.js new file mode 100644 index 0000000000..1b8ca3ff25 --- /dev/null +++ b/test/built-ins/TypedArrays/BigInt64Array/prototype.js @@ -0,0 +1,24 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray.prototype +description: BigInt64Array.prototype property descriptor +info: > + 22.2.5.2 TypedArray.prototype + + The initial value of TypedArray.prototype is the corresponding + TypedArray prototype intrinsic object (22.2.6). + + This property has the attributes { [[Writable]]: false, + [[Enumerable]]: false, [[Configurable]]: false }. +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(BigInt64Array, "prototype", { + value: Object.getPrototypeOf(new BigInt64Array()), + writable: false, + enumerable: false, + configurable: false +}); diff --git a/test/built-ins/TypedArrays/BigInt64Array/prototype/BYTES_PER_ELEMENT.js b/test/built-ins/TypedArrays/BigInt64Array/prototype/BYTES_PER_ELEMENT.js new file mode 100644 index 0000000000..14106c83fe --- /dev/null +++ b/test/built-ins/TypedArrays/BigInt64Array/prototype/BYTES_PER_ELEMENT.js @@ -0,0 +1,24 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray.prototype.bytes_per_element +description: BigInt64Array.prototype.BYTES_PER_ELEMENT property descriptor +info: > + 22.2.5.1 TypedArray.prototype.BYTES_PER_ELEMENT + + The value of TypedArray.prototype.BYTES_PER_ELEMENT is the Number + value of the Element Size value specified in Table 52 for TypedArray. + + This property has the attributes { [[Writable]]: false, + [[Enumerable]]: false, [[Configurable]]: false }. +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(BigInt64Array.prototype, "BYTES_PER_ELEMENT", { + value: 8, + writable: false, + enumerable: false, + configurable: false +}); diff --git a/test/built-ins/TypedArrays/BigInt64Array/prototype/constructor.js b/test/built-ins/TypedArrays/BigInt64Array/prototype/constructor.js new file mode 100644 index 0000000000..8ff9c67ac7 --- /dev/null +++ b/test/built-ins/TypedArrays/BigInt64Array/prototype/constructor.js @@ -0,0 +1,23 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray.prototype.constructor +description: BigInt64Array.prototype.constructor property descriptor +info: > + 22.2.6.2 TypedArray.prototype.constructor + + The initial value of a TypedArray.prototype.constructor is the + corresponding %TypedArray% intrinsic object. + + 17 ECMAScript Standard Built-in Objects +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(BigInt64Array.prototype, "constructor", { + value: BigInt64Array, + writable: true, + enumerable: false, + configurable: true +}); diff --git a/test/built-ins/TypedArrays/BigInt64Array/prototype/not-typedarray-object.js b/test/built-ins/TypedArrays/BigInt64Array/prototype/not-typedarray-object.js new file mode 100644 index 0000000000..8163169c59 --- /dev/null +++ b/test/built-ins/TypedArrays/BigInt64Array/prototype/not-typedarray-object.js @@ -0,0 +1,19 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-properties-of-typedarray-prototype-objects +description: BigInt64Array.prototype is not a TypedArray instance +info: > + 22.2.6 Properties of TypedArray Prototype Objects + + [...] A TypedArray prototype object is an ordinary object. It does not + have a [[ViewedArrayBuffer]] or any other of the internal slots that + are specific to TypedArray instance objects. +includes: [testTypedArray.js] +features: [BigInt] +---*/ + +assert.throws(TypeError, function () { + BigInt64Array.prototype.buffer; +}); diff --git a/test/built-ins/TypedArrays/BigInt64Array/prototype/proto.js b/test/built-ins/TypedArrays/BigInt64Array/prototype/proto.js new file mode 100644 index 0000000000..f52dd35faf --- /dev/null +++ b/test/built-ins/TypedArrays/BigInt64Array/prototype/proto.js @@ -0,0 +1,17 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-properties-of-typedarray-prototype-objects +description: BigInt64Array.prototype prototype internal slot +info: > + 22.2.6 Properties of TypedArray Prototype Objects + + The value of the [[Prototype]] internal slot of a TypedArray prototype + object is the intrinsic object %TypedArrayPrototype%. [...] +includes: [testTypedArray.js] +features: [BigInt, TypedArray] +---*/ + +assert.sameValue(Object.getPrototypeOf(BigInt64Array.prototype), + TypedArray.prototype); diff --git a/test/built-ins/TypedArrays/BigUint64Array/BYTES_PER_ELEMENT.js b/test/built-ins/TypedArrays/BigUint64Array/BYTES_PER_ELEMENT.js new file mode 100644 index 0000000000..5b0a710c6a --- /dev/null +++ b/test/built-ins/TypedArrays/BigUint64Array/BYTES_PER_ELEMENT.js @@ -0,0 +1,24 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray.bytes_per_element +description: BigUint64Array.BYTES_PER_ELEMENT property descriptor +info: > + 22.2.5.1 TypedArray.BYTES_PER_ELEMENT + + The value of TypedArray.BYTES_PER_ELEMENT is the Number value of the + Element Size value specified in Table 52 for TypedArray. + + This property has the attributes { [[Writable]]: false, + [[Enumerable]]: false, [[Configurable]]: false }. +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(BigUint64Array, "BYTES_PER_ELEMENT", { + value: 8, + writable: false, + enumerable: false, + configurable: false +}); diff --git a/test/built-ins/TypedArrays/BigUint64Array/constructor.js b/test/built-ins/TypedArrays/BigUint64Array/constructor.js new file mode 100644 index 0000000000..a646dd91bb --- /dev/null +++ b/test/built-ins/TypedArrays/BigUint64Array/constructor.js @@ -0,0 +1,19 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray-constructors +description: BigUint64Array is a constructor function +info: > + 22.2.4 The TypedArray Constructors + + [...] + + The TypedArray intrinsic constructor functions are single functions + whose behaviour is overloaded based upon the number and types of its + arguments. The actual behaviour of a call of TypedArray depends upon + the number and kind of arguments that are passed to it. +features: [BigInt] +---*/ + +assert.sameValue(typeof BigUint64Array, "function"); diff --git a/test/built-ins/TypedArrays/BigUint64Array/length.js b/test/built-ins/TypedArrays/BigUint64Array/length.js new file mode 100644 index 0000000000..2c8efd3c2b --- /dev/null +++ b/test/built-ins/TypedArrays/BigUint64Array/length.js @@ -0,0 +1,36 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray-constructors +description: BigUint64Array.length property descriptor +info: > + 22.2.4 The TypedArray Constructors + + [...] + + The length property of the TypedArray constructor function is 3. + + 17 ECMAScript Standard Built-in Objects + + Every built-in function object, including constructors, has a length + property whose value is an integer. Unless otherwise specified, this + value is equal to the largest number of named arguments shown in the + subclause headings for the function description. Optional parameters + (which are indicated with brackets: [ ]) or rest parameters (which + are shown using the form «...name») are not included in the default + argument count. + + Unless otherwise specified, the length property of a built-in + function object has the attributes { [[Writable]]: false, + [[Enumerable]]: false, [[Configurable]]: true }. +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(BigUint64Array, "length", { + value: 3, + writable: false, + enumerable: false, + configurable: true +}); diff --git a/test/built-ins/TypedArrays/BigUint64Array/name.js b/test/built-ins/TypedArrays/BigUint64Array/name.js new file mode 100644 index 0000000000..73fb580d6a --- /dev/null +++ b/test/built-ins/TypedArrays/BigUint64Array/name.js @@ -0,0 +1,36 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-properties-of-the-typedarray-constructors +description: BigUint64Array.name property descriptor +info: > + 22.2.5 Properties of the TypedArray Constructors + + [...] + + Each TypedArray constructor has a name property whose value is the + String value of the constructor name specified for it in Table 52. + + 17 ECMAScript Standard Built-in Objects + + Every built-in function object, including constructors, that is not + identified as an anonymous function has a name property whose value + is a String. Unless otherwise specified, this value is the name that + is given to the function in this specification. For functions that + are specified as properties of objects, the name value is the + property name string used to access the function. [...] + + Unless otherwise specified, the name property of a built-in function + object, if it exists, has the attributes { [[Writable]]: false, + [[Enumerable]]: false, [[Configurable]]: true }. +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(BigUint64Array, "name", { + value: "BigUint64Array", + writable: false, + enumerable: false, + configurable: true +}); diff --git a/test/built-ins/TypedArrays/BigUint64Array/prop-desc.js b/test/built-ins/TypedArrays/BigUint64Array/prop-desc.js new file mode 100644 index 0000000000..9a2d4d6d68 --- /dev/null +++ b/test/built-ins/TypedArrays/BigUint64Array/prop-desc.js @@ -0,0 +1,17 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray-objects +description: BigUint64Array property descriptor +info: > + 17 ECMAScript Standard Built-in Objects +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(this, "BigUint64Array", { + writable: true, + enumerable: false, + configurable: true +}); diff --git a/test/built-ins/TypedArrays/BigUint64Array/proto.js b/test/built-ins/TypedArrays/BigUint64Array/proto.js new file mode 100644 index 0000000000..a9b3a3b9a2 --- /dev/null +++ b/test/built-ins/TypedArrays/BigUint64Array/proto.js @@ -0,0 +1,16 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-properties-of-the-typedarray-constructors +description: BigUint64Array prototype internal slot +info: > + 22.2.5 Properties of the TypedArray Constructors + + The value of the [[Prototype]] internal slot of each TypedArray + constructor is the %TypedArray% intrinsic object. +includes: [testTypedArray.js] +features: [BigInt, TypedArray] +---*/ + +assert.sameValue(Object.getPrototypeOf(BigUint64Array), TypedArray); diff --git a/test/built-ins/TypedArrays/BigUint64Array/prototype.js b/test/built-ins/TypedArrays/BigUint64Array/prototype.js new file mode 100644 index 0000000000..3083cdb288 --- /dev/null +++ b/test/built-ins/TypedArrays/BigUint64Array/prototype.js @@ -0,0 +1,24 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray.prototype +description: BigUint64Array.prototype property descriptor +info: > + 22.2.5.2 TypedArray.prototype + + The initial value of TypedArray.prototype is the corresponding + TypedArray prototype intrinsic object (22.2.6). + + This property has the attributes { [[Writable]]: false, + [[Enumerable]]: false, [[Configurable]]: false }. +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(BigUint64Array, "prototype", { + value: Object.getPrototypeOf(new BigUint64Array()), + writable: false, + enumerable: false, + configurable: false +}); diff --git a/test/built-ins/TypedArrays/BigUint64Array/prototype/BYTES_PER_ELEMENT.js b/test/built-ins/TypedArrays/BigUint64Array/prototype/BYTES_PER_ELEMENT.js new file mode 100644 index 0000000000..bc150f5af9 --- /dev/null +++ b/test/built-ins/TypedArrays/BigUint64Array/prototype/BYTES_PER_ELEMENT.js @@ -0,0 +1,24 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray.prototype.bytes_per_element +description: BigUint64Array.prototype.BYTES_PER_ELEMENT property descriptor +info: > + 22.2.5.1 TypedArray.prototype.BYTES_PER_ELEMENT + + The value of TypedArray.prototype.BYTES_PER_ELEMENT is the Number + value of the Element Size value specified in Table 52 for TypedArray. + + This property has the attributes { [[Writable]]: false, + [[Enumerable]]: false, [[Configurable]]: false }. +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(BigUint64Array.prototype, "BYTES_PER_ELEMENT", { + value: 8, + writable: false, + enumerable: false, + configurable: false +}); diff --git a/test/built-ins/TypedArrays/BigUint64Array/prototype/constructor.js b/test/built-ins/TypedArrays/BigUint64Array/prototype/constructor.js new file mode 100644 index 0000000000..3e664c543d --- /dev/null +++ b/test/built-ins/TypedArrays/BigUint64Array/prototype/constructor.js @@ -0,0 +1,23 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-typedarray.prototype.constructor +description: BigUint64Array.prototype.constructor property descriptor +info: > + 22.2.6.2 TypedArray.prototype.constructor + + The initial value of a TypedArray.prototype.constructor is the + corresponding %TypedArray% intrinsic object. + + 17 ECMAScript Standard Built-in Objects +includes: [propertyHelper.js] +features: [BigInt] +---*/ + +verifyProperty(BigUint64Array.prototype, "constructor", { + value: BigUint64Array, + writable: true, + enumerable: false, + configurable: true +}); diff --git a/test/built-ins/TypedArrays/BigUint64Array/prototype/not-typedarray-object.js b/test/built-ins/TypedArrays/BigUint64Array/prototype/not-typedarray-object.js new file mode 100644 index 0000000000..4c2e47e2cc --- /dev/null +++ b/test/built-ins/TypedArrays/BigUint64Array/prototype/not-typedarray-object.js @@ -0,0 +1,19 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-properties-of-typedarray-prototype-objects +description: BigUint64Array.prototype is not a TypedArray instance +info: > + 22.2.6 Properties of TypedArray Prototype Objects + + [...] A TypedArray prototype object is an ordinary object. It does not + have a [[ViewedArrayBuffer]] or any other of the internal slots that + are specific to TypedArray instance objects. +includes: [testTypedArray.js] +features: [BigInt] +---*/ + +assert.throws(TypeError, function () { + BigUint64Array.prototype.buffer; +}); diff --git a/test/built-ins/TypedArrays/BigUint64Array/prototype/proto.js b/test/built-ins/TypedArrays/BigUint64Array/prototype/proto.js new file mode 100644 index 0000000000..f193310204 --- /dev/null +++ b/test/built-ins/TypedArrays/BigUint64Array/prototype/proto.js @@ -0,0 +1,17 @@ +// Copyright (C) 2017 Igalia, S.L. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-properties-of-typedarray-prototype-objects +description: BigUint64Array.prototype prototype internal slot +info: > + 22.2.6 Properties of TypedArray Prototype Objects + + The value of the [[Prototype]] internal slot of a TypedArray prototype + object is the intrinsic object %TypedArrayPrototype%. [...] +includes: [testTypedArray.js] +features: [BigInt, TypedArray] +---*/ + +assert.sameValue(Object.getPrototypeOf(BigUint64Array.prototype), + TypedArray.prototype); From bd63b02e27b05bccd0237001ce7c6842d0e47b96 Mon Sep 17 00:00:00 2001 From: Robin Templeton <robin@igalia.com> Date: Tue, 24 Oct 2017 12:07:34 -0400 Subject: [PATCH 2/2] remove unnecessary include --- .../TypedArrays/BigInt64Array/prototype/not-typedarray-object.js | 1 - .../BigUint64Array/prototype/not-typedarray-object.js | 1 - 2 files changed, 2 deletions(-) diff --git a/test/built-ins/TypedArrays/BigInt64Array/prototype/not-typedarray-object.js b/test/built-ins/TypedArrays/BigInt64Array/prototype/not-typedarray-object.js index 8163169c59..24715cd6eb 100644 --- a/test/built-ins/TypedArrays/BigInt64Array/prototype/not-typedarray-object.js +++ b/test/built-ins/TypedArrays/BigInt64Array/prototype/not-typedarray-object.js @@ -10,7 +10,6 @@ info: > [...] A TypedArray prototype object is an ordinary object. It does not have a [[ViewedArrayBuffer]] or any other of the internal slots that are specific to TypedArray instance objects. -includes: [testTypedArray.js] features: [BigInt] ---*/ diff --git a/test/built-ins/TypedArrays/BigUint64Array/prototype/not-typedarray-object.js b/test/built-ins/TypedArrays/BigUint64Array/prototype/not-typedarray-object.js index 4c2e47e2cc..c45971b6d3 100644 --- a/test/built-ins/TypedArrays/BigUint64Array/prototype/not-typedarray-object.js +++ b/test/built-ins/TypedArrays/BigUint64Array/prototype/not-typedarray-object.js @@ -10,7 +10,6 @@ info: > [...] A TypedArray prototype object is an ordinary object. It does not have a [[ViewedArrayBuffer]] or any other of the internal slots that are specific to TypedArray instance objects. -includes: [testTypedArray.js] features: [BigInt] ---*/