js/src/tests/test262/ch13/13.2/S13.2.1_A7_T3.js

Wed, 31 Dec 2014 13:27:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 13:27:57 +0100
branch
TOR_BUG_3246
changeset 6
8bccb770b82d
permissions
-rw-r--r--

Ignore runtime configuration files generated during quality assurance.

michael@0 1 // Copyright 2009 the Sputnik authors. All rights reserved.
michael@0 2 // This code is governed by the BSD license found in the LICENSE file.
michael@0 3
michael@0 4 /**
michael@0 5 * When the [[Call]] property for a Function object F is called, the following steps are taken:
michael@0 6 * 2. Evaluate F's FunctionBody;
michael@0 7 * if Result.type is returned then Result.value is returned too
michael@0 8 *
michael@0 9 * @path ch13/13.2/S13.2.1_A7_T3.js
michael@0 10 * @description Returning number. Declaring a function with "function __func()"
michael@0 11 */
michael@0 12
michael@0 13 function __func(){
michael@0 14 x = 1;
michael@0 15 return x;
michael@0 16 }
michael@0 17
michael@0 18 //////////////////////////////////////////////////////////////////////////////
michael@0 19 //CHECK#
michael@0 20 try {
michael@0 21 x=x;
michael@0 22 $ERROR('#0: "x=x" lead to throwing exception');
michael@0 23 } catch (e) {
michael@0 24 if (e instanceof Test262Error) throw e;
michael@0 25 }
michael@0 26 //
michael@0 27 //////////////////////////////////////////////////////////////////////////////
michael@0 28
michael@0 29 //////////////////////////////////////////////////////////////////////////////
michael@0 30 //CHECK#1
michael@0 31 try{
michael@0 32 var __x=__func();
michael@0 33 } catch(e){
michael@0 34 $ERROR('#1: var __x=__func() does not lead to throwing exception. Actual: exception is '+e);
michael@0 35 }
michael@0 36 //
michael@0 37 //////////////////////////////////////////////////////////////////////////////
michael@0 38
michael@0 39 //////////////////////////////////////////////////////////////////////////////
michael@0 40 //CHECK#2
michael@0 41 if (__x !== 1) {
michael@0 42 $ERROR('#2: __x === 1. Actual: __x ==='+__x);
michael@0 43 }
michael@0 44 //
michael@0 45 //////////////////////////////////////////////////////////////////////////////
michael@0 46
michael@0 47 //////////////////////////////////////////////////////////////////////////////
michael@0 48 //CHECK#3
michael@0 49 if (x !== 1) {
michael@0 50 $ERROR('#3: x === 1. Actual: x ==='+x);
michael@0 51 }
michael@0 52 //
michael@0 53 //////////////////////////////////////////////////////////////////////////////
michael@0 54
michael@0 55

mercurial