tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

S12.14_A18_T6.js (1503B)


      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: Catching objects with try/catch/finally statement
      6 es5id: 12.14_A18_T6
      7 description: Catching Object
      8 ---*/
      9 
     10 var myObj = {p1: 'a', 
     11             p2: 'b', 
     12             p3: 'c',
     13             value: 'myObj_value',
     14             valueOf : function(){return 'obj_valueOf';},
     15             parseInt : function(){return 'obj_parseInt';},
     16             NaN : 'obj_NaN',
     17             Infinity : 'obj_Infinity',
     18             eval     : function(){return 'obj_eval';},
     19             parseFloat : function(){return 'obj_parseFloat';},
     20             isNaN      : function(){return 'obj_isNaN';},
     21             isFinite   : function(){return 'obj_isFinite';},
     22             i:7,
     23 }
     24 
     25 try{
     26  throw myObj;
     27 }
     28 catch(e){	
     29 // CHECK#1
     30  if (e.p1!=="a") throw new Test262Error('#1: e.p1==="a". Actual:  e.p1==='+ e.p1 );
     31 // CHECK#2
     32  if (e.value!=='myObj_value') throw new Test262Error('#2: e.value===\'myObj_value\'. Actual:  e.value==='+ e.value );
     33 // CHECK#3
     34  if (e.eval()!=='obj_eval') throw new Test262Error('#3: e.eval()===\'obj_eval\'. Actual:  e.eval()==='+ e.eval() );
     35 }
     36 
     37 // CHECK#4
     38 myObj.i=6;
     39 try{
     40  throw myObj;
     41 }
     42 catch(e){}
     43 if (myObj.i!==6) throw new Test262Error('#4: Handling of catch must be correct');
     44 
     45 // CHECK#5
     46 myObj.i=6;
     47 try{
     48  throw myObj;
     49 }
     50 catch(e){
     51  e.i=10;
     52 }
     53 if (myObj.i!==10) throw new Test262Error('#5: Handling of catch must be correct');
     54 
     55 reportCompare(0, 0);