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-324-1.js
blob949102ee2f5098bc71e1733695a1991d622eee05
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-324-1
6 description: >
7     Object.defineProperty - 'O' is an Arguments object of a function
8     that has formal parameters, 'P' is own accessor property of 'O',
9     test TypeError is thrown when updating the [[Configurable]]
10     attribute value of 'P' which is not configurable (10.6
11     [[DefineOwnProperty]] step 4)
12 includes: [propertyHelper.js]
13 ---*/
15 (function(a, b, c) {
16   function setFunc(value) {
17     this.genericPropertyString = value;
18   }
19   Object.defineProperty(arguments, "genericProperty", {
20     set: setFunc,
21     configurable: false
22   });
23   try {
24     Object.defineProperty(arguments, "genericProperty", {
25       configurable: true
26     });
27     throw new Test262Error("Expected an exception.");
28   } catch (e) {
29     verifyWritable(arguments, "genericProperty", "genericPropertyString");
31     verifyNotEnumerable(arguments, "genericProperty");
33     verifyNotConfigurable(arguments, "genericProperty");
35     if (!(e instanceof TypeError)) {
36       throw new Test262Error("Expected TypeError, got " + e);
37     }
39   }
40 }(1, 2, 3));
42 reportCompare(0, 0);