| describe("Manually ticking the Jasmine Mock Clock", function() { |
| var timerCallback; |
| |
| beforeEach(function() { |
| timerCallback = jasmine.createSpy('timerCallback'); |
| jasmine.Clock.useMock(); |
| }); |
| |
| it("causes a timeout to be called synchronously", function() { |
| setTimeout(timerCallback, 100); |
| |
| expect(timerCallback).not.toHaveBeenCalled(); |
| |
| jasmine.Clock.tick(101); |
| |
| expect(timerCallback).toHaveBeenCalled(); |
| }); |
| |
| it("causes an interval to be called synchronously", function() { |
| setInterval(timerCallback, 100); |
| |
| expect(timerCallback).not.toHaveBeenCalled(); |
| |
| jasmine.Clock.tick(102); |
| expect(timerCallback).toHaveBeenCalled(); |
| expect(timerCallback.callCount).toEqual(1); |
| |
| jasmine.Clock.tick(50); |
| expect(timerCallback.callCount).toEqual(1); |
| |
| jasmine.Clock.tick(50); |
| expect(timerCallback.callCount).toEqual(2); |
| }); |
| }); |