( function ( $ ) {
QUnit.asyncTest( 'jquery.delayedBind with data option', 2, function ( assert ) {
var $fixture = $( '
' ).appendTo( '#qunit-fixture' ),
data = {
magic: 'beeswax'
},
delay = 50;
$fixture.delayedBind( delay, 'testevent', data, function ( e ) {
assert.ok( true, 'testevent fired' );
assert.ok( e.data === data, 'data is passed through delayedBind' );
QUnit.start();
} );
// We'll trigger it thrice, but it should only happen once.
$fixture.trigger( 'testevent', {} );
$fixture.trigger( 'testevent', {} );
$fixture.trigger( 'testevent', {} );
$fixture.trigger( 'testevent', {} );
} );
QUnit.asyncTest( 'jquery.delayedBind without data option', 1, function ( assert ) {
var $fixture = $( '
' ).appendTo( '#qunit-fixture' ),
delay = 50;
$fixture.delayedBind( delay, 'testevent', function () {
assert.ok( true, 'testevent fired' );
QUnit.start();
} );
// We'll trigger it thrice, but it should only happen once.
$fixture.trigger( 'testevent', {} );
$fixture.trigger( 'testevent', {} );
$fixture.trigger( 'testevent', {} );
$fixture.trigger( 'testevent', {} );
} );
}( jQuery ) );