Added some better queue order testing

This commit is contained in:
gnarf 2011-05-04 01:54:47 -05:00
parent d61e0656c5
commit 4dcfeee8d5

View File

@ -12,16 +12,34 @@ $.each( $.effects.effect, function( effect ) {
module( "effect."+effect );
test( "show/hide", function() {
var hidden = $( "div.hidden" );
expect( 3 );
expect( 8 );
stop();
hidden.show( effect, animateTime, function() {
var count = 0,
test = 0;
function queueTest( fn ) {
count++;
var point = count;
return function( next ) {
test++;
equals( point, test, "Queue function fired in order" );
if ( fn ) {
fn ()
} else {
setTimeout( next, animateTime );
}
}
}
hidden.queue( queueTest() ).show( effect, animateTime, queueTest(function() {
equal( hidden.css("display"), "block", "Hidden is shown after .show(\"" +effect+ "\", time)" );
}).hide( effect, animateTime, function() {
})).queue( queueTest() ).hide( effect, animateTime, queueTest(function() {
equal( hidden.css("display"), "none", "Back to hidden after .hide(\"" +effect+ "\", time)" );
}).queue( function(next) {
})).queue( queueTest(function(next) {
deepEqual( hidden.queue(), ["inprogress"], "Only the inprogress sentinel remains")
start();
});
}));
});
});