From a90e208867e8ceb5a8d3379a5bce08f47817e622 Mon Sep 17 00:00:00 2001 From: Ron Buckton Date: Mon, 29 Jul 2024 20:28:59 +0200 Subject: [PATCH] Adds property descriptor tests for explicit resource management objects These are all the prop-desc.js tests from @rbuckton's PR #3866 to make reviewing easier. --- .../AsyncDisposableStack/prop-desc.js | 22 ++++++++++++++++ .../prototype/adopt/prop-desc.js | 24 +++++++++++++++++ .../prototype/defer/prop-desc.js | 24 +++++++++++++++++ .../prototype/disposeAsync/prop-desc.js | 24 +++++++++++++++++ .../prototype/move/prop-desc.js | 24 +++++++++++++++++ .../prototype/prop-desc.js | 18 +++++++++++++ .../prototype/use/prop-desc.js | 24 +++++++++++++++++ .../Symbol.asyncDispose/prop-desc.js | 23 ++++++++++++++++ test/built-ins/DisposableStack/prop-desc.js | 22 ++++++++++++++++ .../prototype/adopt/prop-desc.js | 24 +++++++++++++++++ .../prototype/defer/prop-desc.js | 24 +++++++++++++++++ .../prototype/dispose/prop-desc.js | 24 +++++++++++++++++ .../prototype/move/prop-desc.js | 24 +++++++++++++++++ .../DisposableStack/prototype/prop-desc.js | 18 +++++++++++++ .../prototype/use/prop-desc.js | 24 +++++++++++++++++ .../prototype/Symbol.dispose/prop-desc.js | 23 ++++++++++++++++ .../NativeErrors/SuppressedError/prop-desc.js | 26 +++++++++++++++++++ .../SuppressedError/prototype/prop-desc.js | 24 +++++++++++++++++ .../Symbol/asyncDispose/prop-desc.js | 17 ++++++++++++ test/built-ins/Symbol/dispose/prop-desc.js | 17 ++++++++++++ 20 files changed, 450 insertions(+) create mode 100644 test/built-ins/AsyncDisposableStack/prop-desc.js create mode 100644 test/built-ins/AsyncDisposableStack/prototype/adopt/prop-desc.js create mode 100644 test/built-ins/AsyncDisposableStack/prototype/defer/prop-desc.js create mode 100644 test/built-ins/AsyncDisposableStack/prototype/disposeAsync/prop-desc.js create mode 100644 test/built-ins/AsyncDisposableStack/prototype/move/prop-desc.js create mode 100644 test/built-ins/AsyncDisposableStack/prototype/prop-desc.js create mode 100644 test/built-ins/AsyncDisposableStack/prototype/use/prop-desc.js create mode 100644 test/built-ins/AsyncIteratorPrototype/Symbol.asyncDispose/prop-desc.js create mode 100644 test/built-ins/DisposableStack/prop-desc.js create mode 100644 test/built-ins/DisposableStack/prototype/adopt/prop-desc.js create mode 100644 test/built-ins/DisposableStack/prototype/defer/prop-desc.js create mode 100644 test/built-ins/DisposableStack/prototype/dispose/prop-desc.js create mode 100644 test/built-ins/DisposableStack/prototype/move/prop-desc.js create mode 100644 test/built-ins/DisposableStack/prototype/prop-desc.js create mode 100644 test/built-ins/DisposableStack/prototype/use/prop-desc.js create mode 100644 test/built-ins/Iterator/prototype/Symbol.dispose/prop-desc.js create mode 100644 test/built-ins/NativeErrors/SuppressedError/prop-desc.js create mode 100644 test/built-ins/NativeErrors/SuppressedError/prototype/prop-desc.js create mode 100644 test/built-ins/Symbol/asyncDispose/prop-desc.js create mode 100644 test/built-ins/Symbol/dispose/prop-desc.js diff --git a/test/built-ins/AsyncDisposableStack/prop-desc.js b/test/built-ins/AsyncDisposableStack/prop-desc.js new file mode 100644 index 00000000000..bcea356ffd9 --- /dev/null +++ b/test/built-ins/AsyncDisposableStack/prop-desc.js @@ -0,0 +1,22 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-asyncdisposablestack-constructor +description: > + Property descriptor of AsyncDisposableStack +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] +features: [explicit-resource-management] +---*/ + +verifyProperty(this, 'AsyncDisposableStack', { + enumerable: false, + writable: true, + configurable: true +}); diff --git a/test/built-ins/AsyncDisposableStack/prototype/adopt/prop-desc.js b/test/built-ins/AsyncDisposableStack/prototype/adopt/prop-desc.js new file mode 100644 index 00000000000..1149943413f --- /dev/null +++ b/test/built-ins/AsyncDisposableStack/prototype/adopt/prop-desc.js @@ -0,0 +1,24 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-asyncdisposablestack.prototype.adopt +description: > + Property descriptor of AsyncDisposableStack.prototype.adopt +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] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof AsyncDisposableStack.prototype.adopt, 'function'); + +verifyProperty(AsyncDisposableStack.prototype, 'adopt', { + enumerable: false, + writable: true, + configurable: true +}); diff --git a/test/built-ins/AsyncDisposableStack/prototype/defer/prop-desc.js b/test/built-ins/AsyncDisposableStack/prototype/defer/prop-desc.js new file mode 100644 index 00000000000..4669bb66fd6 --- /dev/null +++ b/test/built-ins/AsyncDisposableStack/prototype/defer/prop-desc.js @@ -0,0 +1,24 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-asyncdisposablestack.prototype.defer +description: > + Property descriptor of AsyncDisposableStack.prototype.defer +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] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof AsyncDisposableStack.prototype.defer, 'function'); + +verifyProperty(AsyncDisposableStack.prototype, 'defer', { + enumerable: false, + writable: true, + configurable: true +}); diff --git a/test/built-ins/AsyncDisposableStack/prototype/disposeAsync/prop-desc.js b/test/built-ins/AsyncDisposableStack/prototype/disposeAsync/prop-desc.js new file mode 100644 index 00000000000..dbdc2af42d3 --- /dev/null +++ b/test/built-ins/AsyncDisposableStack/prototype/disposeAsync/prop-desc.js @@ -0,0 +1,24 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-asyncdisposablestack.prototype.disposeAsync +description: > + Property descriptor of AsyncDisposableStack.prototype.disposeAsync +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] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof AsyncDisposableStack.prototype.disposeAsync, 'function'); + +verifyProperty(AsyncDisposableStack.prototype, 'disposeAsync', { + enumerable: false, + writable: true, + configurable: true +}); diff --git a/test/built-ins/AsyncDisposableStack/prototype/move/prop-desc.js b/test/built-ins/AsyncDisposableStack/prototype/move/prop-desc.js new file mode 100644 index 00000000000..1b84f1bb5f4 --- /dev/null +++ b/test/built-ins/AsyncDisposableStack/prototype/move/prop-desc.js @@ -0,0 +1,24 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-asyncdisposablestack.prototype.move +description: > + Property descriptor of AsyncDisposableStack.prototype.move +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] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof AsyncDisposableStack.prototype.move, 'function'); + +verifyProperty(AsyncDisposableStack.prototype, 'move', { + enumerable: false, + writable: true, + configurable: true +}); diff --git a/test/built-ins/AsyncDisposableStack/prototype/prop-desc.js b/test/built-ins/AsyncDisposableStack/prototype/prop-desc.js new file mode 100644 index 00000000000..e4f4a212ccf --- /dev/null +++ b/test/built-ins/AsyncDisposableStack/prototype/prop-desc.js @@ -0,0 +1,18 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +description: The property descriptor AsyncDisposableStack.prototype +esid: sec-properties-of-the-asyncdisposablestack-constructor +info: | + This property has the attributes { [[Writable]]: false, [[Enumerable]]: false, + [[Configurable]]: false }. +features: [explicit-resource-management] +includes: [propertyHelper.js] +---*/ + +verifyProperty(AsyncDisposableStack, 'prototype', { + writable: false, + enumerable: false, + configurable: false +}); diff --git a/test/built-ins/AsyncDisposableStack/prototype/use/prop-desc.js b/test/built-ins/AsyncDisposableStack/prototype/use/prop-desc.js new file mode 100644 index 00000000000..7613715c5f2 --- /dev/null +++ b/test/built-ins/AsyncDisposableStack/prototype/use/prop-desc.js @@ -0,0 +1,24 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-asyncdisposablestack.prototype.use +description: > + Property descriptor of AsyncDisposableStack.prototype.use +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] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof AsyncDisposableStack.prototype.use, 'function'); + +verifyProperty(AsyncDisposableStack.prototype, 'use', { + enumerable: false, + writable: true, + configurable: true +}); diff --git a/test/built-ins/AsyncIteratorPrototype/Symbol.asyncDispose/prop-desc.js b/test/built-ins/AsyncIteratorPrototype/Symbol.asyncDispose/prop-desc.js new file mode 100644 index 00000000000..3523d8d851c --- /dev/null +++ b/test/built-ins/AsyncIteratorPrototype/Symbol.asyncDispose/prop-desc.js @@ -0,0 +1,23 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. +/*--- +esid: sec-%asynciteratorprototype%-@@asyncDispose +description: Property descriptor +info: | + ES6 Section 17 + + 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. +features: [explicit-resource-management] +includes: [propertyHelper.js] +---*/ + +async function* generator() {} +const AsyncIteratorPrototype = Object.getPrototypeOf(Object.getPrototypeOf(generator.prototype)) + +verifyProperty(AsyncIteratorPrototype, Symbol.asyncDispose, { + writable: true, + enumerable: false, + configurable: true, +}); diff --git a/test/built-ins/DisposableStack/prop-desc.js b/test/built-ins/DisposableStack/prop-desc.js new file mode 100644 index 00000000000..ec66e902c95 --- /dev/null +++ b/test/built-ins/DisposableStack/prop-desc.js @@ -0,0 +1,22 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-disposablestack-constructor +description: > + Property descriptor of DisposableStack +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] +features: [explicit-resource-management] +---*/ + +verifyProperty(this, 'DisposableStack', { + enumerable: false, + writable: true, + configurable: true +}); diff --git a/test/built-ins/DisposableStack/prototype/adopt/prop-desc.js b/test/built-ins/DisposableStack/prototype/adopt/prop-desc.js new file mode 100644 index 00000000000..5fdd90d000a --- /dev/null +++ b/test/built-ins/DisposableStack/prototype/adopt/prop-desc.js @@ -0,0 +1,24 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-disposablestack.prototype.adopt +description: > + Property descriptor of DisposableStack.prototype.adopt +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] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof DisposableStack.prototype.adopt, 'function'); + +verifyProperty(DisposableStack.prototype, 'adopt', { + enumerable: false, + writable: true, + configurable: true +}); diff --git a/test/built-ins/DisposableStack/prototype/defer/prop-desc.js b/test/built-ins/DisposableStack/prototype/defer/prop-desc.js new file mode 100644 index 00000000000..ae9b9f38c26 --- /dev/null +++ b/test/built-ins/DisposableStack/prototype/defer/prop-desc.js @@ -0,0 +1,24 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-disposablestack.prototype.defer +description: > + Property descriptor of DisposableStack.prototype.defer +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] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof DisposableStack.prototype.defer, 'function'); + +verifyProperty(DisposableStack.prototype, 'defer', { + enumerable: false, + writable: true, + configurable: true +}); diff --git a/test/built-ins/DisposableStack/prototype/dispose/prop-desc.js b/test/built-ins/DisposableStack/prototype/dispose/prop-desc.js new file mode 100644 index 00000000000..200ad059f0d --- /dev/null +++ b/test/built-ins/DisposableStack/prototype/dispose/prop-desc.js @@ -0,0 +1,24 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-disposablestack.prototype.dispose +description: > + Property descriptor of DisposableStack.prototype.dispose +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] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof DisposableStack.prototype.dispose, 'function'); + +verifyProperty(DisposableStack.prototype, 'dispose', { + enumerable: false, + writable: true, + configurable: true +}); diff --git a/test/built-ins/DisposableStack/prototype/move/prop-desc.js b/test/built-ins/DisposableStack/prototype/move/prop-desc.js new file mode 100644 index 00000000000..b6088e6ddc4 --- /dev/null +++ b/test/built-ins/DisposableStack/prototype/move/prop-desc.js @@ -0,0 +1,24 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-disposablestack.prototype.move +description: > + Property descriptor of DisposableStack.prototype.move +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] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof DisposableStack.prototype.move, 'function'); + +verifyProperty(DisposableStack.prototype, 'move', { + enumerable: false, + writable: true, + configurable: true +}); diff --git a/test/built-ins/DisposableStack/prototype/prop-desc.js b/test/built-ins/DisposableStack/prototype/prop-desc.js new file mode 100644 index 00000000000..12858c22259 --- /dev/null +++ b/test/built-ins/DisposableStack/prototype/prop-desc.js @@ -0,0 +1,18 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +description: The property descriptor DisposableStack.prototype +esid: sec-properties-of-the-disposablestack-constructor +info: | + This property has the attributes { [[Writable]]: false, [[Enumerable]]: false, + [[Configurable]]: false }. +features: [explicit-resource-management] +includes: [propertyHelper.js] +---*/ + +verifyProperty(DisposableStack, 'prototype', { + writable: false, + enumerable: false, + configurable: false +}); diff --git a/test/built-ins/DisposableStack/prototype/use/prop-desc.js b/test/built-ins/DisposableStack/prototype/use/prop-desc.js new file mode 100644 index 00000000000..cf5c3a2592e --- /dev/null +++ b/test/built-ins/DisposableStack/prototype/use/prop-desc.js @@ -0,0 +1,24 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-disposablestack.prototype.use +description: > + Property descriptor of DisposableStack.prototype.use +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] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof DisposableStack.prototype.use, 'function'); + +verifyProperty(DisposableStack.prototype, 'use', { + enumerable: false, + writable: true, + configurable: true +}); diff --git a/test/built-ins/Iterator/prototype/Symbol.dispose/prop-desc.js b/test/built-ins/Iterator/prototype/Symbol.dispose/prop-desc.js new file mode 100644 index 00000000000..1926548eb82 --- /dev/null +++ b/test/built-ins/Iterator/prototype/Symbol.dispose/prop-desc.js @@ -0,0 +1,23 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. +/*--- +esid: sec-%iteratorprototype%-@@dispose +description: Property descriptor +info: | + ES6 Section 17 + + 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. +features: [explicit-resource-management] +includes: [propertyHelper.js] +---*/ +const IteratorPrototype = Object.getPrototypeOf( + Object.getPrototypeOf([][Symbol.iterator]()) +); + +verifyProperty(IteratorPrototype, Symbol.dispose, { + writable: true, + enumerable: false, + configurable: true, +}); diff --git a/test/built-ins/NativeErrors/SuppressedError/prop-desc.js b/test/built-ins/NativeErrors/SuppressedError/prop-desc.js new file mode 100644 index 00000000000..17d880f29ef --- /dev/null +++ b/test/built-ins/NativeErrors/SuppressedError/prop-desc.js @@ -0,0 +1,26 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-suppressederror-objects +description: > + Property descriptor of SuppressedError +info: | + SuppressedError Objects + + 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] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof SuppressedError, 'function'); + +verifyProperty(this, 'SuppressedError', { + enumerable: false, + writable: true, + configurable: true +}); diff --git a/test/built-ins/NativeErrors/SuppressedError/prototype/prop-desc.js b/test/built-ins/NativeErrors/SuppressedError/prototype/prop-desc.js new file mode 100644 index 00000000000..178f226c320 --- /dev/null +++ b/test/built-ins/NativeErrors/SuppressedError/prototype/prop-desc.js @@ -0,0 +1,24 @@ +// Copyright (C) 2023 Ron Buckton. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-aggregate-error.prototype +description: > + Property descriptor of SuppressedError.prototype +info: | + SuppressedError.prototype + + The initial value of SuppressedError.prototype is the intrinsic object %AggregateErrorPrototype%. + + This property has the attributes { [[Writable]]: false, [[Enumerable]]: false, [[Configurable]]: false }. +includes: [propertyHelper.js] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof SuppressedError.prototype, 'object'); + +verifyProperty(SuppressedError, 'prototype', { + enumerable: false, + writable: false, + configurable: false +}); diff --git a/test/built-ins/Symbol/asyncDispose/prop-desc.js b/test/built-ins/Symbol/asyncDispose/prop-desc.js new file mode 100644 index 00000000000..84452236799 --- /dev/null +++ b/test/built-ins/Symbol/asyncDispose/prop-desc.js @@ -0,0 +1,17 @@ +// Copyright (C) 2015 the V8 project authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. +/*--- +esid: pending +description: > + `Symbol.asyncDispose` property descriptor +info: | + This property has the attributes { [[Writable]]: false, [[Enumerable]]: + false, [[Configurable]]: false }. +includes: [propertyHelper.js] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof Symbol.asyncDispose, 'symbol'); +verifyNotEnumerable(Symbol, 'asyncDispose'); +verifyNotWritable(Symbol, 'asyncDispose'); +verifyNotConfigurable(Symbol, 'asyncDispose'); diff --git a/test/built-ins/Symbol/dispose/prop-desc.js b/test/built-ins/Symbol/dispose/prop-desc.js new file mode 100644 index 00000000000..3a23a7a02f6 --- /dev/null +++ b/test/built-ins/Symbol/dispose/prop-desc.js @@ -0,0 +1,17 @@ +// Copyright (C) 2015 the V8 project authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. +/*--- +esid: pending +description: > + `Symbol.dispose` property descriptor +info: | + This property has the attributes { [[Writable]]: false, [[Enumerable]]: + false, [[Configurable]]: false }. +includes: [propertyHelper.js] +features: [explicit-resource-management] +---*/ + +assert.sameValue(typeof Symbol.dispose, 'symbol'); +verifyNotEnumerable(Symbol, 'dispose'); +verifyNotWritable(Symbol, 'dispose'); +verifyNotConfigurable(Symbol, 'dispose');