1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/js/src/tests/test262/ch11/11.12/S11.12_A2.1_T1.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,49 @@ 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 + * Operator x ? y : z uses GetValue 1.9 + * 1.10 + * @path ch11/11.12/S11.12_A2.1_T1.js 1.11 + * @description Either Type is not Reference or GetBase is not null 1.12 + */ 1.13 + 1.14 +//CHECK#1 1.15 +if ((true ? false : true) !== false) { 1.16 + $ERROR('#1: (true ? false : true) === false'); 1.17 +} 1.18 + 1.19 +//CHECK#2 1.20 +if ((false ? false : true) !== true) { 1.21 + $ERROR('#2: (false ? false : true) === true'); 1.22 +} 1.23 + 1.24 +//CHECK#3 1.25 +var x = new Boolean(true); 1.26 +var y = new Boolean(false); 1.27 +if ((x ? y : true) !== y) { 1.28 + $ERROR('#3: var x = new Boolean(true); var y = new Boolean(false); (x ? y : true) === y'); 1.29 +} 1.30 + 1.31 +//CHECK#4 1.32 +var z = new Boolean(true); 1.33 +if ((false ? false : z) !== z) { 1.34 + $ERROR('#4: var z = new Boolean(true); (false ? false : z) === z'); 1.35 +} 1.36 + 1.37 +//CHECK#5 1.38 +var x = new Boolean(true); 1.39 +var y = new Boolean(false); 1.40 +var z = new Boolean(true); 1.41 +if ((x ? y : z) !== y) { 1.42 + $ERROR('#5: var x = new Boolean(true); var y = new Boolean(false); var z = new Boolean(true); (x ? y : z) === y'); 1.43 +} 1.44 + 1.45 +//CHECK#6 1.46 +var x = false; 1.47 +var y = new Boolean(false); 1.48 +var z = new Boolean(true); 1.49 +if ((x ? y : z) !== z) { 1.50 + $ERROR('#6: var x = false; var y = new Boolean(false); var z = new Boolean(true); (x ? y : z) === z'); 1.51 +} 1.52 +