diff options
Diffstat (limited to 'test/suite/ch13/13.0/S13_A17_T1.js')
-rw-r--r-- | test/suite/ch13/13.0/S13_A17_T1.js | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/test/suite/ch13/13.0/S13_A17_T1.js b/test/suite/ch13/13.0/S13_A17_T1.js new file mode 100644 index 000000000..935c419c9 --- /dev/null +++ b/test/suite/ch13/13.0/S13_A17_T1.js @@ -0,0 +1,45 @@ +// Copyright 2009 the Sputnik authors. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/** + * Function call cannot appear in the program before the FunctionExpression appears + * + * @path ch13/S13_A17_T1.js + * @description Trying to call a function before the FunctionExpression appears + */ + +////////////////////////////////////////////////////////////////////////////// +//CHECK#1 +try{ + var __result = __func(); + $FAIL("#1.1: var __result = __func() lead to throwing exception"); +} catch(e) { + if ((e instanceof TypeError) !== true) { + $ERROR('#1.2: func should throw a TypeError Actual: ' + (e)); + } +} +// +////////////////////////////////////////////////////////////////////////////// + +var __func = function (){return "ONE";}; + +////////////////////////////////////////////////////////////////////////////// +//CHECK#2 +var __result = __func(); +if (__result !== "ONE") { + $ERROR('#2: __result === "ONE". Actual: __result ==='+__result); +} +// +////////////////////////////////////////////////////////////////////////////// + +__func = function (){return "TWO";}; + +////////////////////////////////////////////////////////////////////////////// +//CHECK#3 +var __result = __func(); +if (__result !== "TWO") { + $ERROR('#3: __result === "TWO". Actual: __result ==='+__result); +} +// +////////////////////////////////////////////////////////////////////////////// + |