From 966f76b48198098c0865e4f5a6751ce6b4d3b2d5 Mon Sep 17 00:00:00 2001 From: Sheel Choksi Date: Tue, 29 Oct 2013 17:28:41 -0700 Subject: [PATCH] Add in missing clock uninstall --- spec/core/QueueRunnerSpec.js | 48 +++++++++++++++++++++--------------- 1 file changed, 28 insertions(+), 20 deletions(-) diff --git a/spec/core/QueueRunnerSpec.js b/spec/core/QueueRunnerSpec.js index 641269ae..71a0f1cb 100644 --- a/spec/core/QueueRunnerSpec.js +++ b/spec/core/QueueRunnerSpec.js @@ -36,11 +36,20 @@ describe("QueueRunner", function() { expect(asyncContext).toBe(context); }); - it("supports asynchronous functions, only advancing to next function after a done() callback", function() { - //TODO: it would be nice if spy arity could match the fake, so we could do something like: - //createSpy('asyncfn').and.callFake(function(done) {}); + describe("with an asynchronous function", function() { + beforeEach(function() { + jasmine.clock().install(); + }); - var onComplete = jasmine.createSpy('onComplete'), + afterEach(function() { + jasmine.clock().uninstall(); + }); + + it("supports asynchronous functions, only advancing to next function after a done() callback", function() { + //TODO: it would be nice if spy arity could match the fake, so we could do something like: + //createSpy('asyncfn').and.callFake(function(done) {}); + + var onComplete = jasmine.createSpy('onComplete'), beforeCallback = jasmine.createSpy('beforeCallback'), fnCallback = jasmine.createSpy('fnCallback'), afterCallback = jasmine.createSpy('afterCallback'), @@ -67,29 +76,28 @@ describe("QueueRunner", function() { onComplete: onComplete }); - jasmine.clock().install(); + queueRunner.execute(); - queueRunner.execute(); + expect(beforeCallback).toHaveBeenCalled(); + expect(fnCallback).not.toHaveBeenCalled(); + expect(afterCallback).not.toHaveBeenCalled(); + expect(onComplete).not.toHaveBeenCalled(); - expect(beforeCallback).toHaveBeenCalled(); - expect(fnCallback).not.toHaveBeenCalled(); - expect(afterCallback).not.toHaveBeenCalled(); - expect(onComplete).not.toHaveBeenCalled(); + jasmine.clock().tick(100); - jasmine.clock().tick(100); + expect(fnCallback).toHaveBeenCalled(); + expect(afterCallback).not.toHaveBeenCalled(); + expect(onComplete).not.toHaveBeenCalled(); - expect(fnCallback).toHaveBeenCalled(); - expect(afterCallback).not.toHaveBeenCalled(); - expect(onComplete).not.toHaveBeenCalled(); + jasmine.clock().tick(100); - jasmine.clock().tick(100); + expect(afterCallback).toHaveBeenCalled(); + expect(onComplete).not.toHaveBeenCalled(); - expect(afterCallback).toHaveBeenCalled(); - expect(onComplete).not.toHaveBeenCalled(); + jasmine.clock().tick(100); - jasmine.clock().tick(100); - - expect(onComplete).toHaveBeenCalled(); + expect(onComplete).toHaveBeenCalled(); + }); }); it("calls an exception handler when an exception is thrown in a fn", function() {