From 5fb2468f9f3e30e8d5d606bd404c1a9a3ec03e84 Mon Sep 17 00:00:00 2001 From: gnarf Date: Mon, 16 May 2011 17:19:57 -0500 Subject: [PATCH] Unit Tests: Cleaning up some code in effects unit tests, removing magic numbers used for animation durations --- tests/unit/effects/effects_core.js | 37 ++++++++++++++++++------------ 1 file changed, 22 insertions(+), 15 deletions(-) diff --git a/tests/unit/effects/effects_core.js b/tests/unit/effects/effects_core.js index 044cc1695..8d2e8f8df 100644 --- a/tests/unit/effects/effects_core.js +++ b/tests/unit/effects/effects_core.js @@ -8,7 +8,14 @@ function notPresent( value, array, message ) { QUnit.push( jQuery.inArray( value, array ) === -1 , value, array, message ); } -var animateTime = 15; +// minDuration is used for "short" animate tests where we are only concerned about the final +var minDuration = 15, + + // duration is used for "long" animates where we plan on testing properties during animation + duration = 200, + + // mid is used for testing in the "middle" of the "duration" animations + mid = duration / 2; module( "effects.core" ); @@ -31,16 +38,16 @@ $.each( $.effects.effect, function( effect ) { test++; equal( point, test, "Queue function fired in order" ); if ( fn ) { - fn (); + fn(); } else { - setTimeout( next, animateTime ); + setTimeout( next, minDuration ); } }; } - - hidden.queue( queueTest() ).show( effect, animateTime, queueTest(function() { + + hidden.queue( queueTest() ).show( effect, minDuration, queueTest(function() { equal( hidden.css("display"), "block", "Hidden is shown after .show(\"" +effect+ "\", time)" ); - })).queue( queueTest() ).hide( effect, animateTime, queueTest(function() { + })).queue( queueTest() ).hide( effect, minDuration, queueTest(function() { equal( hidden.css("display"), "none", "Back to hidden after .hide(\"" +effect+ "\", time)" ); })).queue( queueTest(function(next) { deepEqual( hidden.queue(), ["inprogress"], "Only the inprogress sentinel remains"); @@ -55,8 +62,8 @@ asyncTest( "animateClass works with borderStyle", function() { var test = $("div.animateClass"), count = 0; expect(3); - test.toggleClass("testAddBorder", 20, function() { - test.toggleClass("testAddBorder", 20, function() { + test.toggleClass("testAddBorder", minDuration, function() { + test.toggleClass("testAddBorder", minDuration, function() { equal( test.css("borderLeftStyle"), "none", "None border set" ); start(); }); @@ -69,7 +76,7 @@ asyncTest( "animateClass works with colors", function() { var test = $("div.animateClass"), count = 0; expect(2); - test.toggleClass("testChangeBackground", 100, function() { + test.toggleClass("testChangeBackground", duration, function() { present( test.css("backgroundColor"), [ "#ffffff", "rgb(255, 255, 255)" ], "Color is final" ); start(); }); @@ -77,27 +84,27 @@ asyncTest( "animateClass works with colors", function() { var color = test.css("backgroundColor"); notPresent( color, [ "#000000", "#ffffff", "rgb(0, 0, 0)", "rgb(255,255,255)" ], "Color is not endpoints in middle." ); - }, 50); + }, mid); }); asyncTest( "animateClass works with children", function() { var test = $("div.animateClass"), h2 = test.find("h2"); - + expect(4); - test.toggleClass("testChildren", { children: true, duration: 100, complete: function() { + test.toggleClass("testChildren", { children: true, duration: duration, complete: function() { equal( h2.css("fontSize"), "20px", "Text size is final during complete"); - test.toggleClass("testChildren", 100, function() { + test.toggleClass("testChildren", duration, function() { equal( h2.css("fontSize"), "10px", "Text size revertted after class removed"); start(); }); setTimeout(function() { equal( h2.css("fontSize"), "20px", "Text size unchanged with children: undefined" ); - }, 50); + }, mid); }}); setTimeout(function() { notPresent( h2.css("fontSize"), ["10px","20px"], "Font size is neither endpoint when in middle."); - }, 50); + }, mid); }); })(jQuery); -- 2.39.5