From 2b45a5b452540e4f533fe7b7ae1f9c0bcb2b9b43 Mon Sep 17 00:00:00 2001 From: John Firebaugh Date: Fri, 18 Jan 2013 15:00:50 -0800 Subject: [PATCH] Use sinon's fake timers --- js/id/ui/flash.js | 2 +- test/spec/ui/flash.js | 19 ++++++++++++++----- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/js/id/ui/flash.js b/js/id/ui/flash.js index 7b3b00628..4ce6a3b0a 100644 --- a/js/id/ui/flash.js +++ b/js/id/ui/flash.js @@ -10,7 +10,7 @@ iD.ui.flash = function() { modal.on('click.flash', function() { modal.remove(); }); - d3.timer(function() { + setTimeout(function() { modal.remove(); return true; }, 1000); diff --git a/test/spec/ui/flash.js b/test/spec/ui/flash.js index 0426d1734..8e6272ffa 100644 --- a/test/spec/ui/flash.js +++ b/test/spec/ui/flash.js @@ -1,13 +1,22 @@ describe("iD.ui.flash", function () { + var clock; + + beforeEach(function () { + clock = sinon.useFakeTimers(); + }); + + afterEach(function () { + clock.restore(); + }); + it('can be instantiated', function () { var flash = iD.ui.flash(); expect(flash).to.be.ok; }); - it('leaves after 1000 ms', function (done) { + + it('leaves after 1000 ms', function () { var flash = iD.ui.flash(); - window.setTimeout(function() { - expect(flash.node().parentNode).to.be.null; - done(); - }, 1200); + clock.tick(1010); + expect(flash.node().parentNode).to.be.null; }); });