summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilson Page <wilsonpage@me.com>2013-10-05 12:46:30 +0100
committerWilson Page <wilsonpage@me.com>2013-10-05 12:46:30 +0100
commit44a1c25e2ef7ea019a1d68605134e77257df2a14 (patch)
treeee77d593bb61176c9dc672f1de5d2f30bd64b03b
parentc0b9e7b9d75aa80028b1e28654713f98f0884800 (diff)
downloadfastdom-44a1c25e2ef7ea019a1d68605134e77257df2a14.zip
fastdom-44a1c25e2ef7ea019a1d68605134e77257df2a14.tar.gz
fastdom-44a1c25e2ef7ea019a1d68605134e77257df2a14.tar.bz2
Add tests to check refs are being cleaned up
-rw-r--r--test/test.clear.js18
-rw-r--r--test/test.defer.js15
2 files changed, 33 insertions, 0 deletions
diff --git a/test/test.clear.js b/test/test.clear.js
index 0e5a0f8..ee60f2e 100644
--- a/test/test.clear.js
+++ b/test/test.clear.js
@@ -76,4 +76,22 @@ suite('Clear', function(){
});
});
+ test("Should remove reference to the job if cleared", function(done) {
+ var fastdom = new FastDom();
+ var write = sinon.spy();
+ var id = fastdom.defer(2, write);
+
+ fastdom.clear(id);
+
+ raf(function() {
+ raf(function() {
+ raf(function() {
+ assert(!write.called);
+ assert(!fastdom.jobs[id]);
+ done();
+ });
+ });
+ });
+ });
+
}); \ No newline at end of file
diff --git a/test/test.defer.js b/test/test.defer.js
index a1045e1..c1ae179 100644
--- a/test/test.defer.js
+++ b/test/test.defer.js
@@ -32,4 +32,19 @@ suite('defer', function(){
done();
}, ctx);
});
+
+ test("Should remove the reference to the job once run", function(done) {
+ var fastdom = new FastDom();
+ var callback = sinon.spy();
+ var id = fastdom.defer(2, callback);
+
+ raf(function() {
+ raf(function() {
+ raf(function() {
+ assert(!fastdom.jobs[id]);
+ done();
+ });
+ });
+ });
+ });
});