| Tests breakable locations in await expression. |
| |
| Running test: testBreakLocations |
| |
| function testFunction() { |
| async function f1() { |
| for (let x = |_|0; x |_|< 1; ++|_|x) |_|await x; |
| |_|return |_|await Promise.|C|resolve(2);|R| |
| |R|} |
| |
| async function f2() { |
| let r = |_|await |C|f1() + |_|await |C|f1(); |
| |_|await |C|f1(); |
| |_|await |C|f1().|C|then(x => x |_|* 2|R|); |
| |_|await [1].|C|map(x => Promise.|C|resolve(x)|R|)[0]; |
| |_|await Promise.|C|resolve().|C|then(x => x |_|* 2|R|); |
| let p = |_|Promise.|C|resolve(42); |
| |_|await p; |
| |_|return r;|R| |
| |R|} |
| |
| return |C|f2();|R| |
| } |
| |
| |
| Running test: testStepInto |
| (anonymous) (expr.js:0:0) |
| |
| |
| testFunction (test.js:18:9) |
| (anonymous) (expr.js:0:0) |
| |
| return #f2(); |
| } |
| |
| f2 (test.js:8:12) |
| testFunction (test.js:18:9) |
| (anonymous) (expr.js:0:0) |
| async function f2() { |
| let r = #await f1() + await f1(); |
| await f1(); |
| |
| f1 (test.js:3:17) |
| f2 (test.js:8:18) |
| testFunction (test.js:18:9) |
| (anonymous) (expr.js:0:0) |
| async function f1() { |
| for (let x = #0; x < 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:22) |
| f2 (test.js:8:18) |
| testFunction (test.js:18:9) |
| (anonymous) (expr.js:0:0) |
| async function f1() { |
| for (let x = 0; x #< 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:32) |
| f2 (test.js:8:18) |
| testFunction (test.js:18:9) |
| (anonymous) (expr.js:0:0) |
| async function f1() { |
| for (let x = 0; x < 1; ++x) #await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:29) |
| async function f1() { |
| for (let x = 0; x < 1; ++#x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:22) |
| async function f1() { |
| for (let x = 0; x #< 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:4:4) |
| for (let x = 0; x < 1; ++x) await x; |
| #return await Promise.resolve(2); |
| } |
| |
| f1 (test.js:4:36) |
| for (let x = 0; x < 1; ++x) await x; |
| return await Promise.resolve(2);# |
| } |
| |
| f2 (test.js:8:31) |
| async function f2() { |
| let r = await f1() + await #f1(); |
| await f1(); |
| |
| f1 (test.js:3:17) |
| f2 (test.js:8:31) |
| async function f1() { |
| for (let x = #0; x < 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:22) |
| f2 (test.js:8:31) |
| async function f1() { |
| for (let x = 0; x #< 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:32) |
| f2 (test.js:8:31) |
| async function f1() { |
| for (let x = 0; x < 1; ++x) #await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:29) |
| async function f1() { |
| for (let x = 0; x < 1; ++#x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:22) |
| async function f1() { |
| for (let x = 0; x #< 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:4:4) |
| for (let x = 0; x < 1; ++x) await x; |
| #return await Promise.resolve(2); |
| } |
| |
| f1 (test.js:4:36) |
| for (let x = 0; x < 1; ++x) await x; |
| return await Promise.resolve(2);# |
| } |
| |
| f2 (test.js:9:4) |
| let r = await f1() + await f1(); |
| #await f1(); |
| await f1().then(x => x * 2); |
| |
| f1 (test.js:3:17) |
| f2 (test.js:9:10) |
| async function f1() { |
| for (let x = #0; x < 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:22) |
| f2 (test.js:9:10) |
| async function f1() { |
| for (let x = 0; x #< 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:32) |
| f2 (test.js:9:10) |
| async function f1() { |
| for (let x = 0; x < 1; ++x) #await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:29) |
| async function f1() { |
| for (let x = 0; x < 1; ++#x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:22) |
| async function f1() { |
| for (let x = 0; x #< 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:4:4) |
| for (let x = 0; x < 1; ++x) await x; |
| #return await Promise.resolve(2); |
| } |
| |
| f1 (test.js:4:36) |
| for (let x = 0; x < 1; ++x) await x; |
| return await Promise.resolve(2);# |
| } |
| |
| f2 (test.js:10:4) |
| await f1(); |
| #await f1().then(x => x * 2); |
| await [1].map(x => Promise.resolve(x))[0]; |
| |
| f1 (test.js:3:17) |
| f2 (test.js:10:10) |
| async function f1() { |
| for (let x = #0; x < 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:22) |
| f2 (test.js:10:10) |
| async function f1() { |
| for (let x = 0; x #< 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:32) |
| f2 (test.js:10:10) |
| async function f1() { |
| for (let x = 0; x < 1; ++x) #await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:29) |
| async function f1() { |
| for (let x = 0; x < 1; ++#x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:22) |
| async function f1() { |
| for (let x = 0; x #< 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:4:4) |
| for (let x = 0; x < 1; ++x) await x; |
| #return await Promise.resolve(2); |
| } |
| |
| f1 (test.js:4:36) |
| for (let x = 0; x < 1; ++x) await x; |
| return await Promise.resolve(2);# |
| } |
| |
| (anonymous) (test.js:10:27) |
| await f1(); |
| await f1().then(x => x #* 2); |
| await [1].map(x => Promise.resolve(x))[0]; |
| |
| (anonymous) (test.js:10:30) |
| await f1(); |
| await f1().then(x => x * 2#); |
| await [1].map(x => Promise.resolve(x))[0]; |
| |
| f2 (test.js:11:4) |
| await f1().then(x => x * 2); |
| #await [1].map(x => Promise.resolve(x))[0]; |
| await Promise.resolve().then(x => x * 2); |
| |
| (anonymous) (test.js:11:31) |
| f2 (test.js:11:14) |
| await f1().then(x => x * 2); |
| await [1].map(x => Promise.#resolve(x))[0]; |
| await Promise.resolve().then(x => x * 2); |
| |
| (anonymous) (test.js:11:41) |
| f2 (test.js:11:14) |
| await f1().then(x => x * 2); |
| await [1].map(x => Promise.resolve(x)#)[0]; |
| await Promise.resolve().then(x => x * 2); |
| |
| f2 (test.js:12:4) |
| await [1].map(x => Promise.resolve(x))[0]; |
| #await Promise.resolve().then(x => x * 2); |
| let p = Promise.resolve(42); |
| |
| f2 (test.js:13:12) |
| await Promise.resolve().then(x => x * 2); |
| let p = #Promise.resolve(42); |
| await p; |
| |
| f2 (test.js:14:4) |
| let p = Promise.resolve(42); |
| #await p; |
| return r; |
| |
| f2 (test.js:15:4) |
| await p; |
| #return r; |
| } |
| |
| f2 (test.js:15:13) |
| await p; |
| return r;# |
| } |
| |
| |
| Running test: testStepOver |
| f2 (test.js:8:12) |
| testFunction (test.js:18:9) |
| (anonymous) (expr.js:0:0) |
| async function f2() { |
| let r = #await f1() + await f1(); |
| await f1(); |
| |
| f2 (test.js:8:31) |
| async function f2() { |
| let r = await f1() + await #f1(); |
| await f1(); |
| |
| f2 (test.js:9:4) |
| let r = await f1() + await f1(); |
| #await f1(); |
| await f1().then(x => x * 2); |
| |
| f2 (test.js:10:4) |
| await f1(); |
| #await f1().then(x => x * 2); |
| await [1].map(x => Promise.resolve(x))[0]; |
| |
| f2 (test.js:11:4) |
| await f1().then(x => x * 2); |
| #await [1].map(x => Promise.resolve(x))[0]; |
| await Promise.resolve().then(x => x * 2); |
| |
| f2 (test.js:12:4) |
| await [1].map(x => Promise.resolve(x))[0]; |
| #await Promise.resolve().then(x => x * 2); |
| let p = Promise.resolve(42); |
| |
| f2 (test.js:13:12) |
| await Promise.resolve().then(x => x * 2); |
| let p = #Promise.resolve(42); |
| await p; |
| |
| f2 (test.js:14:4) |
| let p = Promise.resolve(42); |
| #await p; |
| return r; |
| |
| f2 (test.js:15:4) |
| await p; |
| #return r; |
| } |
| |
| f2 (test.js:15:13) |
| await p; |
| return r;# |
| } |
| |
| |
| Running test: testStepIntoAfterBreakpoint |
| f2 (test.js:9:4) |
| let r = await f1() + await f1(); |
| #await f1(); |
| await f1().then(x => x * 2); |
| |
| f1 (test.js:3:17) |
| f2 (test.js:9:10) |
| async function f1() { |
| for (let x = #0; x < 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:22) |
| f2 (test.js:9:10) |
| async function f1() { |
| for (let x = 0; x #< 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:32) |
| f2 (test.js:9:10) |
| async function f1() { |
| for (let x = 0; x < 1; ++x) #await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:29) |
| async function f1() { |
| for (let x = 0; x < 1; ++#x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:3:22) |
| async function f1() { |
| for (let x = 0; x #< 1; ++x) await x; |
| return await Promise.resolve(2); |
| |
| f1 (test.js:4:4) |
| for (let x = 0; x < 1; ++x) await x; |
| #return await Promise.resolve(2); |
| } |
| |