Tests asynchronous call stacks for Promises. Set timer for test function. Captured call stacks in no particular order: Call stack: 0) afterJSONStringifyAndParse (async-callstack-promises.js:102) [Promise.then] 0) doTestChainedPromises (async-callstack-promises.js:101) 1) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...> Call stack: 0) catchCallback (async-callstack-promises.js:123) [Promise.catch] 0) doTestThrowFromChain (async-callstack-promises.js:122) 1) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...> Call stack: 0) catchCallback (async-callstack-promises.js:135) [Promise.catch] 0) doTestThrowFromChain (async-callstack-promises.js:134) 1) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...> Call stack: 0) chained1 (async-callstack-promises.js:85) [Promise.then] 0) doTestChainedPromises (async-callstack-promises.js:84) 1) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...> Call stack: 0) chained2 (async-callstack-promises.js:88) [Promise.then] 0) doTestChainedPromises (async-callstack-promises.js:87) 1) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...> Call stack: 0) chained3 (async-callstack-promises.js:91) [Promise.then] 0) doTestChainedPromises (async-callstack-promises.js:90) 1) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...> Call stack: 0) chained4 (async-callstack-promises.js:94) [Promise.then] 0) doTestChainedPromises (async-callstack-promises.js:93) 1) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...> Call stack: 0) errorCallback (async-callstack-promises.js:65) [Promise.then] 0) doTestPromiseResolveAndReject (async-callstack-promises.js:142) 1) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...> Call stack: 0) errorCallback (async-callstack-promises.js:65) [Promise.then] 0) doTestSettledPromises (async-callstack-promises.js:79) 1) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...> Call stack: 0) promiseCallback (async-callstack-promises.js:72) 1) doTestPromiseConstructor (async-callstack-promises.js:70) 2) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...> Call stack: 0) thenCallback (async-callstack-promises.js:60) [Promise.then] 0) doTestChainedPromises (async-callstack-promises.js:96) 1) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...> Call stack: 0) thenCallback (async-callstack-promises.js:60) [Promise.then] 0) doTestPromiseAll (async-callstack-promises.js:109) 1) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...> Call stack: 0) thenCallback (async-callstack-promises.js:60) [Promise.then] 0) doTestPromiseResolveAndReject (async-callstack-promises.js:141) 1) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...> Call stack: 0) thenCallback (async-callstack-promises.js:60) [Promise.then] 0) doTestSettledPromises (async-callstack-promises.js:78) 1) testFunctionTimeout (async-callstack-promises.js:55) [setTimeout] 0) testFunction (async-callstack-promises.js:48) [setTimeout] 0) scheduleTestFunction <... skipped remaining frames ...>