diff --git a/test/built-ins/ArrayBuffer/length.js b/test/built-ins/ArrayBuffer/length.js new file mode 100644 index 0000000000000000000000000000000000000000..12b7e904ca78fc2ae311d4c502bfc097d12519de --- /dev/null +++ b/test/built-ins/ArrayBuffer/length.js @@ -0,0 +1,31 @@ +// Copyright (C) 2017 Rick Waldron. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-arraybuffer-constructor +description: > + ArrayBuffer.length is 1. +info: > + ArrayBuffer ( length ) + + 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, including optional + parameters. However, rest parameters 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] +---*/ + +assert.sameValue(ArrayBuffer.length, 1); + +verifyProperty(ArrayBuffer, "length", { + writable: false, + enumerable: false, + configurable: true, +}); diff --git a/test/built-ins/ArrayBuffer/name.js b/test/built-ins/ArrayBuffer/name.js new file mode 100644 index 0000000000000000000000000000000000000000..f833b03220748ab287f69b47e53254c011bb8c64 --- /dev/null +++ b/test/built-ins/ArrayBuffer/name.js @@ -0,0 +1,28 @@ +// Copyright (C) 2017 Rick Waldron. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-arraybuffer-constructor +description: > + ArrayBuffer.name is "ArrayBuffer". +info: > + 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, the name property of a built-in Function object, + if it exists, has the attributes { [[Writable]]: false, [[Enumerable]]: + false, [[Configurable]]: true }. + +includes: [propertyHelper.js] +---*/ + +assert.sameValue(ArrayBuffer.name, "ArrayBuffer"); + +verifyProperty(ArrayBuffer, "name", { + writable: false, + enumerable: false, + configurable: true, +}); diff --git a/test/built-ins/ArrayBuffer/prop-desc.js b/test/built-ins/ArrayBuffer/prop-desc.js new file mode 100644 index 0000000000000000000000000000000000000000..84edc21a0998b246b1887f8b04f8c4ec6121818f --- /dev/null +++ b/test/built-ins/ArrayBuffer/prop-desc.js @@ -0,0 +1,23 @@ +// Copyright (C) 2017 Rick Waldron. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-arraybuffer-constructor +description: > + Property descriptor of ArrayBuffer +info: > + 17 ECMAScript Standard Built-in Objects: + + Every other data property described in clauses 18 through 26 and in Annex B.2 + has the attributes { [[Writable]]: true, [[Enumerable]]: false, + [[Configurable]]: true } unless otherwise specified. +includes: [propertyHelper.js] +---*/ + +assert.sameValue(typeof ArrayBuffer, "function", "`typeof ArrayBuffer` is `'function'`"); + +verifyProperty(this, "ArrayBuffer", { + writable: true, + enumerable: false, + configurable: true, +});