js/src/tests/ecma_5/misc/line-paragraph-separator-parse-as-lineterminator.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:8ed8cf16b021
1 /*
2 * Any copyright is dedicated to the Public Domain.
3 * http://creativecommons.org/licenses/publicdomain/
4 */
5
6 //-----------------------------------------------------------------------------
7 var BUGNUMBER = 663331;
8 var summary =
9 "U+2028 LINE SEPARATOR and U+2029 PARAGRAPH SEPARATOR must match the " +
10 "LineTerminator production when parsing code";
11
12 print(BUGNUMBER + ": " + summary);
13
14 /**************
15 * BEGIN TEST *
16 **************/
17
18 var hidden = 17;
19 var assigned;
20
21 assigned = 42;
22 assertEq(eval('"use strict"; var hidden\u2028assigned = 5; typeof hidden'),
23 "undefined");
24 assertEq(assigned, 5);
25
26 assigned = 42;
27 function t1()
28 {
29 assertEq(eval('var hidden\u2028assigned = 5; typeof hidden'), "undefined");
30 assertEq(assigned, 5);
31 }
32 t1();
33
34 assigned = 42;
35 assertEq(eval('"use strict"; var hidden\u2029assigned = 5; typeof hidden'),
36 "undefined");
37 assertEq(assigned, 5);
38
39 assigned = 42;
40 function t2()
41 {
42 assertEq(eval('var hidden\u2029assigned = 5; typeof hidden'), "undefined");
43 assertEq(assigned, 5);
44 }
45 t2();
46
47 /******************************************************************************/
48
49 reportCompare(true, true);
50
51 print("All tests passed!");

mercurial