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: * 1. Evaluate Expression michael@0: * michael@0: * @path ch12/12.13/S12.13_A3_T6.js michael@0: * @description Evaluating functions michael@0: */ michael@0: michael@0: // CHECK#1 michael@0: var i=0; michael@0: function adding1(){ michael@0: i++; michael@0: return 1; michael@0: } michael@0: try{ michael@0: throw (adding1()); michael@0: } michael@0: catch(e){ michael@0: if (e!==1) $ERROR('#1: Exception ===1. Actual: Exception ==='+ e); michael@0: } michael@0: michael@0: // CHECK#2 michael@0: var i=0; michael@0: function adding2(){ michael@0: i++; michael@0: return i; michael@0: } michael@0: try{ michael@0: throw adding2(); michael@0: } michael@0: catch(e){} michael@0: if (i!==1) $ERROR('#2: i===1. Actual: i==='+ i); michael@0: michael@0: // CHECK#3 michael@0: var i=0; michael@0: function adding3(){ michael@0: i++; michael@0: } michael@0: try{ michael@0: throw adding3(); michael@0: } michael@0: catch(e){} michael@0: if (i!==1) $ERROR('#3: i===1. Actual: i==='+i); michael@0: michael@0: // CHECK#4 michael@0: function adding4(i){ michael@0: i++; michael@0: return i; michael@0: } michael@0: try{ michael@0: throw (adding4(1)); michael@0: } michael@0: catch(e){ michael@0: if (e!==2) $ERROR('#4: Exception ===2. Actual: Exception ==='+ e); michael@0: } michael@0: