S11.4.9_A2.2_T1.js (2350B)
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 uses [[Default Value]] 6 es5id: 11.4.9_A2.2_T1 7 description: If Type(value) is Object, return false 8 ---*/ 9 10 //CHECK#1 11 var object = {valueOf: function() {return 1}}; 12 if (!object !== false) { 13 throw new Test262Error('#1: var object = {valueOf: function() {return 1}}; !object === false. Actual: ' + (!object)); 14 } 15 16 //CHECK#2 17 var object = {valueOf: function() {return 1}, toString: function() {return 0}}; 18 if (!object !== false) { 19 throw new Test262Error('#2: var object = {valueOf: function() {return 1}, toString: function() {return 0}}; !object === false. Actual: ' + (!object)); 20 } 21 22 //CHECK#3 23 var object = {valueOf: function() {return 1}, toString: function() {return {}}}; 24 if (!object !== false) { 25 throw new Test262Error('#3: var object = {valueOf: function() {return 1}, toString: function() {return {}}}; !object === false. Actual: ' + (!object)); 26 } 27 28 //CHECK#4 29 var object = {valueOf: function() {return 1}, toString: function() {throw "error"}}; 30 if (!object !== false) { 31 throw new Test262Error('#4: var object = {valueOf: function() {return 1}, toString: function() {throw "error"}}; !object === false. Actual: ' + (!object)); 32 } 33 34 //CHECK#5 35 var object = {toString: function() {return 1}}; 36 if (!object !== false) { 37 throw new Test262Error('#5: var object = {toString: function() {return 1}}; !object === false. Actual: ' + (!object)); 38 } 39 40 //CHECK#6 41 var object = {valueOf: function() {return {}}, toString: function() {return 1}} 42 if (!object !== false) { 43 throw new Test262Error('#6: var object = {valueOf: function() {return {}}, toString: function() {return 1}}; !object === false. Actual: ' + (!object)); 44 } 45 46 //CHECK#7 47 var object = {valueOf: function() {throw "error"}, toString: function() {return 1}}; 48 if (!object !== false) { 49 throw new Test262Error('#7: var object = {valueOf: function() {throw "error"}, toString: function() {return 1}}; !object === false. Actual: ' + (!object)); 50 } 51 52 //CHECK#8 53 var object = {valueOf: function() {return {}}, toString: function() {return {}}}; 54 if (!object !== false) { 55 throw new Test262Error('#8: var object = {valueOf: function() {return {}}, toString: function() {return {}}}; !object === false. Actual: ' + (!object)); 56 } 57 58 reportCompare(0, 0);