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        undefined,
57        eval("function f(){}function g(){}") );
58
59    test();
60
61
62function 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}
75