Checks that async chains for for-await-of are correct.

Running test: testBasic
Debugger (test.js:10:2)
Basic (test.js:48:4)
-- async function --
Basic (test.js:47:17)
(anonymous) (testBasic.js:0:0)


Running test: testUncaughtReject
Debugger (test.js:10:2)
-- Promise.catch --
UncaughtReject (test.js:58:21)
(anonymous) (testUncaughtReject.js:0:0)


Running test: testUncaughtThrow
Debugger (test.js:10:2)
-- Promise.catch --
UncaughtThrow (test.js:67:21)
(anonymous) (testUncaughtThrow.js:0:0)


Running test: testCaughtReject
Debugger (test.js:10:2)
CaughtReject (test.js:76:4)
-- async function --
CaughtReject (test.js:72:19)
(anonymous) (testCaughtReject.js:0:0)


Running test: testCaughtThrow
Debugger (test.js:10:2)
CaughtThrow (test.js:86:4)
-- async function --
CaughtThrow (test.js:82:19)
(anonymous) (testCaughtThrow.js:0:0)


Running test: testUncaughtRejectOnBreak

Running test: testUncaughtThrowOnBreak
Debugger (test.js:10:2)
-- Promise.catch --
UncaughtThrowOnBreak (test.js:105:21)
(anonymous) (testUncaughtThrowOnBreak.js:0:0)


Running test: testCaughtRejectOnBreak

Running test: testCaughtThrowOnBreak
Debugger (test.js:10:2)
CaughtThrowOnBreak (test.js:124:4)
-- async function --
CaughtThrowOnBreak (test.js:120:19)
(anonymous) (testCaughtThrowOnBreak.js:0:0)