initial import
[vuplus_webkit] / Source / JavaScriptCore / tests / mozilla / js1_2 / function / function-001-n.js
1 /* The contents of this file are subject to the Netscape Public
2  * License Version 1.1 (the "License"); you may not use this file
3  * except in compliance with the License. You may obtain a copy of
4  * the License at http://www.mozilla.org/NPL/
5  *
6  * Software distributed under the License is distributed on an "AS
7  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
8  * implied. See the License for the specific language governing
9  * rights and limitations under the License.
10  *
11  * The Original Code is Mozilla Communicator client code, released March
12  * 31, 1998.
13  *
14  * The Initial Developer of the Original Code is Netscape Communications
15  * Corporation. Portions created by Netscape are
16  * Copyright (C) 1998 Netscape Communications Corporation. All
17  * Rights Reserved.
18  *
19  * Contributor(s): 
20  * 
21  */
22 /**
23  *  File Name:          boolean-001.js
24  *  Description:
25  *
26  *  http://scopus.mcom.com/bugsplat/show_bug.cgi?id=99232
27  *
28  *  eval("function f(){}function g(){}") at top level is an error for JS1.2
29  *     and above (missing ; between named function expressions), but declares f
30  *     and g as functions below 1.2.
31  *
32  * Fails to produce error regardless of version:
33  * js> version(100)
34  * 120
35  * js> eval("function f(){}function g(){}")
36  * js> version(120);
37  * 100
38  * js> eval("function f(){}function g(){}")
39  * js>
40  *  Author:             christine@netscape.com
41  *  Date:               11 August 1998
42  */
43     var SECTION = "function-001.js";
44     var VERSION = "JS1_1";
45     startTest();
46     var TITLE   = "functions not separated by semicolons are errors in version 120 and higher";
47     var BUGNUMBER="99232";
48
49     writeHeaderToLog( SECTION + " "+ TITLE);
50
51     var testcases = new Array();
52
53     testcases[tc++] = new TestCase(
54         SECTION,
55         "eval(\"function f(){}function g(){}\")",
56         "error",
57         eval("function f(){}function g(){}") );
58
59     test();
60
61
62 function test() {
63     for ( tc=0; tc < testcases.length; tc++ ) {
64         testcases[tc].passed = writeTestCaseResult(
65                             testcases[tc].expect,
66                             testcases[tc].actual,
67                             testcases[tc].description +" = "+
68                             testcases[tc].actual );
69
70         testcases[tc].reason += ( testcases[tc].passed ) ? "" : "wrong value ";
71     }
72     stopTest();
73     return ( testcases );
74 }