15.2.3.6-4-82-22.js (1165B)
1 // Copyright (c) 2012 Ecma International. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 4 /*--- 5 es5id: 15.2.3.6-4-82-22 6 description: > 7 Object.defineProperty - Update [[Configurable]] attribute of 8 'name' property to false successfully when [[Enumerable]] and 9 [[Configurable]] attributes of 'name' property are true, the 10 'desc' is a generic descriptor which contains [[Enumerable]] 11 attribute as true and [[Configurable]] attribute is false, 'name' 12 property is an index accessor property (8.12.9 step 8) 13 includes: [propertyHelper.js] 14 ---*/ 15 16 17 var obj = {}; 18 obj.verifySetFunction = "data"; 19 var get_func = function() { 20 return obj.verifySetFunction; 21 }; 22 var set_func = function(value) { 23 obj.verifySetFunction = value; 24 }; 25 Object.defineProperty(obj, "0", { 26 get: get_func, 27 set: set_func, 28 enumerable: true, 29 configurable: true 30 }); 31 32 Object.defineProperty(obj, "0", { 33 enumerable: true, 34 configurable: false 35 }); 36 37 verifyEqualTo(obj, "0", get_func()); 38 39 verifyWritable(obj, "0", "verifySetFunction"); 40 41 verifyProperty(obj, "0", { 42 enumerable: true, 43 configurable: false, 44 }); 45 46 reportCompare(0, 0);