michael@0: // Copyright 2009 the Sputnik authors. All rights reserved. michael@0: // This code is governed by the BSD license found in the LICENSE file. michael@0: michael@0: /** michael@0: * If ToBoolean(x) is true, return x michael@0: * michael@0: * @path ch11/11.11/11.11.2/S11.11.2_A4_T3.js michael@0: * @description Type(x) and Type(y) vary between primitive string and String object michael@0: */ michael@0: michael@0: //CHECK#1 michael@0: if (("-1" || "1") !== "-1") { michael@0: $ERROR('#-1: ("-1" || "1") === "-1"'); michael@0: } michael@0: michael@0: //CHECK#2 michael@0: if (("-1" || "x") !== "-1") { michael@0: $ERROR('#2: ("-1" || "x") === "-1"'); michael@0: } michael@0: michael@0: //CHECK#3 michael@0: var x = new String("-1"); michael@0: if ((x || new String(-1)) !== x) { michael@0: $ERROR('#3: (var x = new String("-1"); (x || new String(-1)) === x'); michael@0: } michael@0: michael@0: //CHECK#4 michael@0: var x = new String(NaN); michael@0: if ((x || new String("1")) !== x) { michael@0: $ERROR('#4: (var x = new String(NaN); (x || new String("1")) === x'); michael@0: } michael@0: michael@0: //CHECK#5 michael@0: var x = new String("-x"); michael@0: if ((x || new String("x")) !== x) { michael@0: $ERROR('#5: (var x = new String("-x"); (x || new String("x")) === x'); michael@0: } michael@0: michael@0: //CHECK#6 michael@0: var x = new String(0); michael@0: if ((x || new String(NaN)) !== x) { michael@0: $ERROR('#6: (var x = new String(0); (x || new String(NaN)) === x'); michael@0: } michael@0: