aboutsummaryrefslogtreecommitdiffstats
path: root/test/suite/ch13/13.0/S13_A17_T1.js
diff options
context:
space:
mode:
Diffstat (limited to 'test/suite/ch13/13.0/S13_A17_T1.js')
-rw-r--r--test/suite/ch13/13.0/S13_A17_T1.js45
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);
+}
+//
+//////////////////////////////////////////////////////////////////////////////
+