From fa3ebc8c0fa5011a5fb8a8d686b84cd3405af519 Mon Sep 17 00:00:00 2001 From: Nathan Sobo Date: Tue, 20 May 2014 14:03:44 -0600 Subject: [PATCH] Fix interval cancellation in specs --- spec/spec-helper.coffee | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/spec/spec-helper.coffee b/spec/spec-helper.coffee index 80af7fcac..fcb052962 100644 --- a/spec/spec-helper.coffee +++ b/spec/spec-helper.coffee @@ -261,7 +261,9 @@ window.waitsForPromise = (args...) -> window.resetTimeouts = -> window.now = 0 window.timeoutCount = 0 + window.intervalCount = 0 window.timeouts = [] + window.intervalTimeouts = {} window.fakeSetTimeout = (callback, ms) -> id = ++window.timeoutCount @@ -272,13 +274,15 @@ window.fakeClearTimeout = (idToClear) -> window.timeouts = window.timeouts.filter ([id]) -> id != idToClear window.fakeSetInterval = (callback, ms) -> + id = ++window.intervalCount action = -> callback() - window.fakeSetTimeout(action, ms) - window.fakeSetTimeout(action, ms) + window.intervalTimeouts[id] = window.fakeSetTimeout(action, ms) + window.intervalTimeouts[id] = window.fakeSetTimeout(action, ms) + id window.fakeClearInterval = (idToClear) -> - window.fakeClearTimeout(idToClear) + window.fakeClearTimeout(@intervalTimeouts[idToClear]) window.advanceClock = (delta=1) -> window.now += delta