1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/js/src/tests/test262/ch12/12.2/S12.2_A2.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,47 @@ 1.4 +// Copyright 2009 the Sputnik authors. All rights reserved. 1.5 +// This code is governed by the BSD license found in the LICENSE file. 1.6 + 1.7 +/** 1.8 + * Variables are defined with global scope (that is, they are created as members of the global object, as described in 10.1.3) using property attributes { DontDelete} 1.9 + * 1.10 + * @path ch12/12.2/S12.2_A2.js 1.11 + * @description Checking if deleting global variables that have the attributes {DontDelete} fails 1.12 + */ 1.13 + 1.14 +////////////////////////////////////////////////////////////////////////////// 1.15 +//CHECK#1 1.16 +if (delete(__variable)) { 1.17 + $ERROR('#1: delete(__variable)===false'); 1.18 +} 1.19 +// 1.20 +////////////////////////////////////////////////////////////////////////////// 1.21 + 1.22 +////////////////////////////////////////////////////////////////////////////// 1.23 +//CHECK#2 1.24 +if (delete(this["__variable"])) { 1.25 + $ERROR('#2: delete(this["__variable"])===false'); 1.26 +} 1.27 +// 1.28 +////////////////////////////////////////////////////////////////////////////// 1.29 + 1.30 + 1.31 +var __variable; 1.32 +var __variable = "defined"; 1.33 + 1.34 +////////////////////////////////////////////////////////////////////////////// 1.35 +//CHECK#3 1.36 +if (delete(__variable) | delete(this["__variable"])) { 1.37 + $ERROR('#3: (delete(__variable) | delete(this["__variable"]))===false' ); 1.38 +} 1.39 +// 1.40 +////////////////////////////////////////////////////////////////////////////// 1.41 + 1.42 +////////////////////////////////////////////////////////////////////////////// 1.43 +//CHECK#4 1.44 +if ((__variable !== "defined")|(this["__variable"] !=="defined")) { 1.45 + $ERROR('#4: __variable === "defined" and this["__variable"] ==="defined"'); 1.46 +} 1.47 +// 1.48 +////////////////////////////////////////////////////////////////////////////// 1.49 + 1.50 +