|
1 |
|
2 // Test setting return value; |
|
3 |
|
4 function bail() { bailout(); } |
|
5 function bail2() { bailout(); return 2; } |
|
6 |
|
7 // Test 1: Test setting/getting return value in ionmonkey |
|
8 function test() { |
|
9 return evalcx("1;"); |
|
10 } |
|
11 assertEq(test(), 1) |
|
12 |
|
13 // Test 3: Test ion -> baseline |
|
14 function test2() { |
|
15 return evaluate("1; bail2();"); |
|
16 } |
|
17 assertEq(test2(), 2) |
|
18 |
|
19 // Test 3: Test ion -> baseline |
|
20 function test3() { |
|
21 return evaluate("1; bail2(); 3"); |
|
22 } |
|
23 assertEq(test3(), 3) |
|
24 |
|
25 // Test4: Test baseline -> ion entering (very fragile, since iterations need to be precise, before it gets tested) |
|
26 function test4() { |
|
27 return evaluate("1; for(var i=0; i<1097; i++) { 3; };"); |
|
28 } |
|
29 assertEq(test4(), 3) |