
PASS # AUDIT TASK RUNNER STARTED.
PASS Executing "test"
PASS Audit report
PASS > [test] Test event handler from resume() and suspend()
PASS   A new suspend has been scheduled at 0 second(s) did not throw an exception.
PASS   onstatechange event handler: context is suspended at 0 second(s) is true.
PASS   Scheduling a new suspend at 0.25 second(s) did not throw an exception.
PASS   onstatechange event handler: context is suspended at 0.25 second(s) is true.
PASS   Scheduling a new suspend at 0.5 second(s) did not throw an exception.
PASS   onstatechange event handler: context is suspended at 0.5 second(s) is true.
PASS   Scheduling a new suspend at 0.75 second(s) did not throw an exception.
PASS   onstatechange event handler: context is suspended at 0.75 second(s) is true.
PASS   Scheduling a new suspend at 1 second(s) did not throw an exception.
PASS   onstatechange event handler: context is suspended at 1 second(s) is true.
PASS   Scheduling a new suspend at 1.25 second(s) did not throw an exception.
PASS   onstatechange event handler: context is suspended at 1.25 second(s) is true.
PASS   Scheduling a new suspend at 1.5 second(s) did not throw an exception.
PASS   onstatechange event handler: context is suspended at 1.5 second(s) is true.
PASS   Scheduling a new suspend at 1.75 second(s) did not throw an exception.
PASS   onstatechange event handler: context is suspended at 1.75 second(s) is true.
PASS   Scheduling at 2 seconds rejected correctly with InvalidStateError: suspendTime cannot be greater than total rendering duration.
PASS   oncomplete event handler: context.state is equal to closed.
PASS < [test] All assertions passed. (total 18 assertions)
PASS # AUDIT TASK RUNNER FINISHED: 1 tasks ran successfully.

