v8/test/mjsunit/harmony/index-fields-nonextensible-global-proxy.js

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

26 lines
622 B
JavaScript
Raw Normal View History

2022-03-23 15:41:18 +00:00
// Copyright 2022 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
class Base {
constructor(arg) {
return arg;
}
}
class ClassNonExtensibleWithIndexField extends Base {
[0] = (() => {
Object.preventExtensions(this);
return 'defined';
})();
['nonExtensible'] = 4;
constructor(arg) {
super(arg);
}
}
assertThrows(() => {
new ClassNonExtensibleWithIndexField(globalThis);
}, TypeError, /Cannot define property 0, object is not extensible/);
assertEquals("undefined", typeof nonExtensible);