2015-04-21 21:22:35 +02:00
|
|
|
// 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 whose specified property is not writable do not satisfy the
|
|
|
|
assertion in strict mode.
|
|
|
|
|
2018-10-07 20:43:56 +02:00
|
|
|
includes: [propertyHelper.js]
|
2017-06-23 03:25:35 +02:00
|
|
|
flags: [onlyStrict]
|
|
|
|
---*/
|
2015-04-21 21:22:35 +02:00
|
|
|
var threw = false;
|
|
|
|
var obj = {};
|
|
|
|
Object.defineProperty(obj, 'a', {
|
|
|
|
writable: false
|
|
|
|
});
|
|
|
|
|
|
|
|
try {
|
|
|
|
verifyWritable(obj, 'a');
|
|
|
|
} 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.');
|
|
|
|
}
|