S11.12_A2.1_T1.js (1374B)
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: "Operator x ? y : z uses GetValue" 6 es5id: 11.12_A2.1_T1 7 description: Either Type is not Reference or GetBase is not null 8 ---*/ 9 10 //CHECK#1 11 if ((true ? false : true) !== false) { 12 throw new Test262Error('#1: (true ? false : true) === false'); 13 } 14 15 //CHECK#2 16 if ((false ? false : true) !== true) { 17 throw new Test262Error('#2: (false ? false : true) === true'); 18 } 19 20 //CHECK#3 21 var x = new Boolean(true); 22 var y = new Boolean(false); 23 if ((x ? y : true) !== y) { 24 throw new Test262Error('#3: var x = new Boolean(true); var y = new Boolean(false); (x ? y : true) === y'); 25 } 26 27 //CHECK#4 28 var z = new Boolean(true); 29 if ((false ? false : z) !== z) { 30 throw new Test262Error('#4: var z = new Boolean(true); (false ? false : z) === z'); 31 } 32 33 //CHECK#5 34 var x = new Boolean(true); 35 var y = new Boolean(false); 36 var z = new Boolean(true); 37 if ((x ? y : z) !== y) { 38 throw new Test262Error('#5: var x = new Boolean(true); var y = new Boolean(false); var z = new Boolean(true); (x ? y : z) === y'); 39 } 40 41 //CHECK#6 42 var x = false; 43 var y = new Boolean(false); 44 var z = new Boolean(true); 45 if ((x ? y : z) !== z) { 46 throw new Test262Error('#6: var x = false; var y = new Boolean(false); var z = new Boolean(true); (x ? y : z) === z'); 47 } 48 49 reportCompare(0, 0);