| function timeout_trampoline(t, timeout, message) { |
| t.step_timeout(function() { |
| // Yield in case we managed to be called before the second interval callback. |
| t.step_timeout(function() { |
| assert_unreached(message); |
| }, timeout); |
| }, timeout); |
| } |
| |
| async_test(function(t) { |
| let ctr = 0; |
| let h = setInterval(t.step_func(function() { |
| if (++ctr == 2) { |
| clearInterval(h); |
| t.done(); |
| return; |
| } |
| }) /* no interval */); |
| |
| timeout_trampoline(t, 100, "Expected setInterval callback to be called two times"); |
| }, "Calling setInterval with no interval should be the same as if called with 0 interval"); |
| |
| async_test(function(t) { |
| let ctr = 0; |
| let h = setInterval(t.step_func(function() { |
| if (++ctr == 2) { |
| clearInterval(h); |
| t.done(); |
| return; |
| } |
| }), undefined); |
| |
| timeout_trampoline(t, 100, "Expected setInterval callback to be called two times"); |
| }, "Calling setInterval with undefined interval should be the same as if called with 0 interval"); |