Backed out 3 changesets (bug 1892041) for causing failures on async-module-does-not...
[gecko.git] / js / src / tests / test262 / built-ins / Object / defineProperty / 15.2.3.6-4-317.js
blob77ca0ba862e7888b156856ed8b94d9c200b57d48
1 // Copyright (c) 2012 Ecma International.  All rights reserved.
2 // This code is governed by the BSD license found in the LICENSE file.
4 /*---
5 es5id: 15.2.3.6-4-317
6 description: >
7     Object.defineProperty - 'O' is an Arguments object, 'P' is generic
8     own data property of 'O', test TypeError is thrown when updating
9     the [[Value]] attribute value of 'P' which is not writable and not
10     configurable (10.6 [[DefineOwnProperty]] step 4)
11 includes: [propertyHelper.js]
12 ---*/
14 (function() {
15   Object.defineProperty(arguments, "genericProperty", {
16     value: 1001,
17     writable: false,
18     configurable: false
19   });
20   try {
21     Object.defineProperty(arguments, "genericProperty", {
22       value: 1002
23     });
24     throw new Test262Error("Expected an exception.");
25   } catch (e) {
26     verifyEqualTo(arguments, "genericProperty", 1001);
28     verifyNotWritable(arguments, "genericProperty");
30     verifyNotEnumerable(arguments, "genericProperty");
32     verifyNotConfigurable(arguments, "genericProperty");
34     if (!(e instanceof TypeError)) {
35       throw new Test262Error("Expected TypeError, got " + e);
36     }
38   }
39 }(1, 2, 3));
41 reportCompare(0, 0);