mirror of https://github.com/tc39/test262.git
38 lines
974 B
JavaScript
38 lines
974 B
JavaScript
|
// Copyright (C) 2015 the V8 project authors. All rights reserved.
|
||
|
// This code is governed by the BSD license found in the LICENSE file.
|
||
|
|
||
|
/*---
|
||
|
description: >
|
||
|
Objects that do not define all of the specified "own" properties as
|
||
|
configurable do not satisfy the assertion.
|
||
|
includes: [testBuiltInObject.js]
|
||
|
---*/
|
||
|
|
||
|
var threw = false;
|
||
|
var obj = {};
|
||
|
Object.defineProperty(obj, 'a', {
|
||
|
writable: true, enumerable: false, configurable: true
|
||
|
});
|
||
|
Object.defineProperty(obj, 'b', {
|
||
|
writable: true, enumerable: false, configurable: false
|
||
|
});
|
||
|
Object.defineProperty(obj, 'c', {
|
||
|
writable: true, enumerable: false, configurable: true
|
||
|
});
|
||
|
|
||
|
try {
|
||
|
testBuiltInObject(obj, false, false, ['a', 'b', 'c']);
|
||
|
} catch(err) {
|
||
|
threw = true;
|
||
|
if (err.constructor !== Test262Error) {
|
||
|
$ERROR(
|
||
|
'Expected a Test262Error, but a "' + err.constructor.name +
|
||
|
'" was thrown.'
|
||
|
);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (threw === false) {
|
||
|
$ERROR('Expected a Test262Error, but no error was thrown.');
|
||
|
}
|