aboutsummaryrefslogtreecommitdiffstats
path: root/test/unit/fx.js
diff options
context:
space:
mode:
authorAriel Flesler <aflesler@gmail.com>2009-01-14 23:09:52 +0000
committerAriel Flesler <aflesler@gmail.com>2009-01-14 23:09:52 +0000
commit34a9f8a210cfa0aabccc40a974646127d1871d1a (patch)
tree6fc4286aa9916b44efe8e65d83b848ece9bf2ef8 /test/unit/fx.js
parentf649acd8abcd3ccd86de331737f42d0d85efbc0c (diff)
downloadjquery-34a9f8a210cfa0aabccc40a974646127d1871d1a.tar.gz
jquery-34a9f8a210cfa0aabccc40a974646127d1871d1a.zip
jquery fx: sync animations were being left on jQuery.timers (double callback)
jQuery.timerId is now a local var and it's not null'ed anymore.
Diffstat (limited to 'test/unit/fx.js')
-rw-r--r--test/unit/fx.js33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/unit/fx.js b/test/unit/fx.js
index 6de42546e..db6210e80 100644
--- a/test/unit/fx.js
+++ b/test/unit/fx.js
@@ -34,6 +34,39 @@ test("animate option (queue === false)", function () {
});
});
+test("animate duration 0", function() {
+ expect(5);
+
+ stop();
+
+ var $elems = jQuery([{ a:0 },{ a:0 }]),
+ counter = 0,
+ count = function(){
+ counter++;
+ };
+
+ equals( jQuery.timers.length, 0, "Make sure no animation was running from another test" );
+
+ $elems.eq(0).animate( {a:1}, 0, count );
+
+ // Failed until [6115]
+ equals( jQuery.timers.length, 0, "Make sure synchronic animations are not left on jQuery.timers" );
+
+ equals( counter, 1, "One synchronic animations" );
+
+ $elems.animate( { a:2 }, 0, count );
+
+ equals( counter, 3, "Multiple synchronic animations" );
+
+ $elems.eq(0).animate( {a:3}, 0, count );
+ $elems.eq(1).animate( {a:3}, 20, function(){
+ count();
+ // Failed until [6115]
+ equals( counter, 5, "One synchronic and one asynchronic" );
+ start();
+ });
+});
+
test("animate non-element", function(){
expect(1);
stop();