Stack tagging API works Running test: simpleTaskLogsCorrectAsyncTrace ---------- console.trace: Inside run ---------- runner (simpleTaskLogsCorrectAsyncTrace.js:4:14) simpleTaskLogsCorrectAsyncTrace (simpleTaskLogsCorrectAsyncTrace.js:3:9) (anonymous) (simpleTaskLogsCorrectAsyncTrace.js:6:4) -- Task -- foo (simpleTaskLogsCorrectAsyncTrace.js:1:36) simpleTaskLogsCorrectAsyncTrace (simpleTaskLogsCorrectAsyncTrace.js:2:17) (anonymous) (simpleTaskLogsCorrectAsyncTrace.js:6:4) Running test: nestedTasksLogCorrectAsyncTrace ---------- console.trace: Inside runInner ---------- runInner (nestedTasksLogCorrectAsyncTrace.js:5:16) runOuter (nestedTasksLogCorrectAsyncTrace.js:4:16) nestedTasksLogCorrectAsyncTrace (nestedTasksLogCorrectAsyncTrace.js:2:14) (anonymous) (nestedTasksLogCorrectAsyncTrace.js:8:4) -- Inner Task -- runOuter (nestedTasksLogCorrectAsyncTrace.js:3:32) nestedTasksLogCorrectAsyncTrace (nestedTasksLogCorrectAsyncTrace.js:2:14) (anonymous) (nestedTasksLogCorrectAsyncTrace.js:8:4) -- Outer Task -- nestedTasksLogCorrectAsyncTrace (nestedTasksLogCorrectAsyncTrace.js:1:30) (anonymous) (nestedTasksLogCorrectAsyncTrace.js:8:4) Running test: setTimeoutWorksCorrectly ---------- console.trace: Inside runInner ---------- runInner (setTimeoutWorksCorrectly.js:6:18) (anonymous) (setTimeoutWorksCorrectly.js:5:18) -- Inner Task -- (anonymous) (setTimeoutWorksCorrectly.js:4:34) -- setTimeout -- (anonymous) (setTimeoutWorksCorrectly.js:3:30) runOuter (setTimeoutWorksCorrectly.js:3:13) setTimeoutWorksCorrectly (setTimeoutWorksCorrectly.js:2:20) (anonymous) (setTimeoutWorksCorrectly.js:11:4) -- Outer Task -- setTimeoutWorksCorrectly (setTimeoutWorksCorrectly.js:1:30) (anonymous) (setTimeoutWorksCorrectly.js:11:4) Running test: runForwardsTheReturnValue ---------- console.log: 42 ---------- runForwardsTheReturnValue (runForwardsTheReturnValue.js:3:12) (anonymous) (runForwardsTheReturnValue.js:4:4) Running test: runWorksWithAsyncPayloads ---------- console.log: 42 ---------- runWorksWithAsyncPayloads (runWorksWithAsyncPayloads.js:3:12) Running test: runWorksWithGenerators ---------- console.log: 42 ---------- runWorksWithGenerators (runWorksWithGenerators.js:3:12) (anonymous) (runWorksWithGenerators.js:4:4) Running test: runCanBeCalledMultipleTimes ---------- console.log: First run ---------- (anonymous) (runCanBeCalledMultipleTimes.js:2:27) runCanBeCalledMultipleTimes (runCanBeCalledMultipleTimes.js:2:9) (anonymous) (runCanBeCalledMultipleTimes.js:4:4) ---------- console.log: Second run ---------- (anonymous) (runCanBeCalledMultipleTimes.js:3:27) runCanBeCalledMultipleTimes (runCanBeCalledMultipleTimes.js:3:9) (anonymous) (runCanBeCalledMultipleTimes.js:4:4) Running test: runForwardsExceptions Expected exception: { className : Error description : Error: Thrown from task.run at runForwardsExceptions.js:4:13 at runForwardsExceptions (runForwardsExceptions.js:3:10) at runForwardsExceptions.js:6:5 objectId : subtype : error type : object } Running test: recursivelyCalledRunDoesntCrash ---------- console.trace: Inside nestedRunOuter ---------- nestedRunOuter (recursivelyCalledRunDoesntCrash.js:6:18) runInner (recursivelyCalledRunDoesntCrash.js:5:18) runOuter (recursivelyCalledRunDoesntCrash.js:4:16) recursivelyCalledRunDoesntCrash (recursivelyCalledRunDoesntCrash.js:2:14) (anonymous) (recursivelyCalledRunDoesntCrash.js:10:4) -- Outer Task -- recursivelyCalledRunDoesntCrash (recursivelyCalledRunDoesntCrash.js:1:30) (anonymous) (recursivelyCalledRunDoesntCrash.js:10:4) Running test: scheduleThrowsAnErrorWhenCalledWithoutAnArgument Expected exception: { className : Error description : Error: First argument must be a non-empty string. at scheduleThrowsAnErrorWhenCalledWithoutAnArgument (scheduleThrowsAnErrorWhenCalledWithoutAnArgument.js:2:13) at scheduleThrowsAnErrorWhenCalledWithoutAnArgument.js:3:5 objectId : subtype : error type : object } Running test: scheduleThrowsAnErrorWhenCalledWithAnEmptyString Expected exception: { className : Error description : Error: First argument must be a non-empty string. at scheduleThrowsAnErrorWhenCalledWithAnEmptyString (scheduleThrowsAnErrorWhenCalledWithAnEmptyString.js:2:13) at scheduleThrowsAnErrorWhenCalledWithAnEmptyString.js:3:5 objectId : subtype : error type : object } Running test: runThrowsAnErrorWhenCalledWithoutAnArgument Expected exception: { className : Error description : Error: First argument must be a function. at runThrowsAnErrorWhenCalledWithoutAnArgument (runThrowsAnErrorWhenCalledWithoutAnArgument.js:3:10) at runThrowsAnErrorWhenCalledWithoutAnArgument.js:4:5 objectId : subtype : error type : object } Running test: runThrowsAnErrorWhenCalledWithNonFunction Expected exception: { className : Error description : Error: First argument must be a function. at runThrowsAnErrorWhenCalledWithNonFunction (runThrowsAnErrorWhenCalledWithNonFunction.js:3:10) at runThrowsAnErrorWhenCalledWithNonFunction.js:4:5 objectId : subtype : error type : object } Running test: runThrowsAnErrorWhenCalledWithNullReceiver Expected exception: { className : Error description : Error: 'run' called with illegal receiver. at runThrowsAnErrorWhenCalledWithNullReceiver (runThrowsAnErrorWhenCalledWithNullReceiver.js:3:14) at runThrowsAnErrorWhenCalledWithNullReceiver.js:4:5 objectId : subtype : error type : object } Running test: runThrowsAnErrorWhenCalledWithIllegalReceiver Expected exception: { className : Error description : Error: 'run' called with illegal receiver. at runThrowsAnErrorWhenCalledWithIllegalReceiver (runThrowsAnErrorWhenCalledWithIllegalReceiver.js:3:14) at runThrowsAnErrorWhenCalledWithIllegalReceiver.js:4:5 objectId : subtype : error type : object }