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-306.js
bloba33eff559b62701fa14082b79b2849e413bef3ad
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-306
6 description: >
7     Object.defineProperty - 'O' is an Arguments object, 'name' is an
8     index named data property of 'O' but not defined in
9     [[ParameterMap]] of 'O', test TypeError is thrown when updating
10     the [[Writable]] attribute value of 'name' which is not
11     configurable (10.6 [[DefineOwnProperty]] step 4)
12 includes: [propertyHelper.js]
13 ---*/
15 (function() {
16   Object.defineProperty(arguments, "0", {
17     value: 0,
18     writable: false,
19     enumerable: false,
20     configurable: false
21   });
22   try {
23     Object.defineProperty(arguments, "0", {
24       writable: true
25     });
26     throw new Test262Error("Expected an exception.");
27   } catch (e) {
28     verifyEqualTo(arguments, "0", 0);
30     verifyNotWritable(arguments, "0");
32     verifyNotEnumerable(arguments, "0");
34     verifyNotConfigurable(arguments, "0");
36     if (!(e instanceof TypeError)) {
37       throw new Test262Error("Expected TypeError, got " + e);
38     }
40   }
41 }());
43 reportCompare(0, 0);