Checks that async chains for promises are correct.

Running test: testPromise
foo1 (test.js:9:2)
-- Promise.then --
promise (test.js:12:14)
(anonymous) (testPromise.js:0:0)


Running test: testPromiseResolvedBySetTimeout
foo1 (test.js:9:2)
-- Promise.then --
promiseResolvedBySetTimeout (test.js:20:14)
(anonymous) (testPromiseResolvedBySetTimeout.js:0:0)


Running test: testPromiseAll
foo1 (test.js:9:2)
-- Promise.then --
promiseAll (test.js:30:35)
(anonymous) (testPromiseAll.js:0:0)


Running test: testPromiseAllReverseOrder
foo1 (test.js:9:2)
-- Promise.then --
promiseAllReverseOrder (test.js:41:35)
(anonymous) (testPromiseAllReverseOrder.js:0:0)


Running test: testPromiseRace
foo1 (test.js:9:2)
-- Promise.then --
promiseRace (test.js:52:36)
(anonymous) (testPromiseRace.js:0:0)


Running test: testTwoChainedCallbacks
foo1 (test.js:9:2)
-- Promise.then --
twoChainedCallbacks (test.js:61:14)
(anonymous) (testTwoChainedCallbacks.js:0:0)

foo2 (test.js:13:2)
-- Promise.then --
twoChainedCallbacks (test.js:61:25)
(anonymous) (testTwoChainedCallbacks.js:0:0)


Running test: testPromiseResolve
foo1 (test.js:9:2)
-- Promise.then --
promiseResolve (test.js:67:27)
(anonymous) (testPromiseResolve.js:0:0)

foo2 (test.js:13:2)
-- Promise.then --
promiseResolve (test.js:67:38)
(anonymous) (testPromiseResolve.js:0:0)


Running test: testThenableJobResolvedInSetTimeout
foo1 (test.js:9:2)
-- Promise.then --
thenableJobResolvedInSetTimeout (test.js:79:40)
(anonymous) (testThenableJobResolvedInSetTimeout.js:0:0)


Running test: testThenableJobResolvedInSetTimeoutWithStack
foo1 (test.js:9:2)
-- Promise.then --
thenableJobResolvedInSetTimeoutWithStack (test.js:97:40)
(anonymous) (testThenableJobResolvedInSetTimeoutWithStack.js:0:0)


Running test: testThenableJobResolvedByPromise
foo1 (test.js:9:2)
-- Promise.then --
thenableJobResolvedByPromise (test.js:111:40)
(anonymous) (testThenableJobResolvedByPromise.js:0:0)


Running test: testThenableJobResolvedByPromiseWithStack
foo1 (test.js:9:2)
-- Promise.then --
thenableJobResolvedByPromiseWithStack (test.js:129:40)
(anonymous) (testThenableJobResolvedByPromiseWithStack.js:0:0)


Running test: testLateThenCallback
foo1 (test.js:9:2)
-- Promise.then --
lateThenCallback (test.js:138:12)
(anonymous) (testLateThenCallback.js:0:0)


Running test: testComplex
inner1 (test.js:154:6)
foo1 (test.js:156:4)
-- Promise.then --
complex (test.js:195:5)
(anonymous) (testComplex.js:0:0)

(anonymous) (test.js:207:8)
-- Promise.then --
(anonymous) (test.js:199:8)
-- Promise.then --
(anonymous) (test.js:198:6)
-- setTimeout --
complex (test.js:197:2)
(anonymous) (testComplex.js:0:0)


Running test: testReject
foo1 (test.js:9:2)
-- Promise.catch --
reject (test.js:210:31)
(anonymous) (testReject.js:0:0)


Running test: testFinally1
foo1 (test.js:9:2)
-- Promise.finally --
finally1 (test.js:214:33)
(anonymous) (testFinally1.js:0:0)


Running test: testFinally2
foo1 (test.js:9:2)
-- Promise.finally --
finally2 (test.js:218:34)
(anonymous) (testFinally2.js:0:0)

