Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 // Labeled break tests.
2 function f1() {
3 foo:
4 if ([1]) {
5 bar:
6 for (var i=0; i<100; i++) {
7 if (i > 60)
8 break foo;
9 }
10 assertEq(0, 1);
11 }
12 assertEq(i, 61);
13 return true;
14 }
15 assertEq(f1(), true);
17 // Label with no breaks.
18 function f2() {
19 foo:
20 if ([1]) {
21 for (var i=0; i<100; i++) {
22 }
23 }
24 assertEq(i, 100);
25 return true;
26 }
27 assertEq(f2(), true);
29 // No breaks and early return.
30 function f3() {
31 foo: {
32 if (true) {
33 for (var i=0; i<100; i++) {
34 }
35 }
36 return false;
37 }
38 assertEq(i, 100);
39 return true;
40 }
41 assertEq(f3(), false);
43 // Multiple breaks.
44 function f4() {
45 foo: {
46 if (true) {
47 for (var i=0; i<100; i++)
48 if (i > 70)
49 break foo;
50 if (i > 80)
51 break foo;
52 }
53 break foo;
54 }
55 assertEq(i, 71);
56 return true;
57 }
58 assertEq(f4(), true);