S15.5.5.1_A3.js (1731B)
1 // Copyright 2009 the Sputnik authors. All rights reserved. 2 // This code is governed by the BSD license found in the LICENSE file. 3 4 /*--- 5 info: length property has the attributes {DontDelete} 6 es5id: 15.5.5.1_A3 7 description: Checking if deleting the length property of String fails 8 includes: [propertyHelper.js] 9 ---*/ 10 11 var __str__instance = new String("globglob"); 12 13 ////////////////////////////////////////////////////////////////////////////// 14 //CHECK#1 15 if (!(__str__instance.hasOwnProperty("length"))) { 16 throw new Test262Error('#1: var __str__instance = new String("globglob"); __str__instance.hasOwnProperty("length") return true. Actual: ' + __str__instance.hasOwnProperty("length")); 17 } 18 // 19 ////////////////////////////////////////////////////////////////////////////// 20 21 verifyNotConfigurable(__str__instance, "length"); 22 23 ////////////////////////////////////////////////////////////////////////////// 24 //CHECK#2 25 try { 26 if (delete __str__instance.length === true) { 27 throw new Test262Error('#2: var __str__instance = new String("globglob"); delete __str__instance.length !== true'); 28 } 29 } catch (e) { 30 if (e instanceof Test262Error) throw e; 31 assert(e instanceof TypeError); 32 } 33 // 34 ////////////////////////////////////////////////////////////////////////////// 35 36 ////////////////////////////////////////////////////////////////////////////// 37 //CHECK#3 38 if (!(__str__instance.hasOwnProperty("length"))) { 39 throw new Test262Error('#3: var __str__instance = new String("globglob"); delete __str__instance.length; __str__instance.hasOwnProperty("length") return true. Actual: ' + __str__instance.hasOwnProperty("length")); 40 } 41 // 42 ////////////////////////////////////////////////////////////////////////////// 43 44 reportCompare(0, 0);