From ac2e731b2d219fd516a166a058831de1ff949d4a Mon Sep 17 00:00:00 2001 From: jaubourg Date: Mon, 17 Jan 2011 17:52:30 +0100 Subject: [PATCH] Added unit tests to check and demonstrate new jQuery.Deferred() works. --- test/unit/core.js | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/test/unit/core.js b/test/unit/core.js index 8e3756a9c..88f7609f2 100644 --- a/test/unit/core.js +++ b/test/unit/core.js @@ -1003,7 +1003,7 @@ test("jQuery._Deferred()", function() { test("jQuery.Deferred()", function() { - expect( 6 ); + expect( 10 ); jQuery.Deferred( function( defer ) { strictEqual( this , defer , "Defer passed as this & first argument" ); @@ -1024,6 +1024,25 @@ test("jQuery.Deferred()", function() { ok( true , "Error on reject" ); }); + ( new jQuery.Deferred( function( defer ) { + strictEqual( this , defer , "Defer passed as this & first argument (new)" ); + this.resolve( "done" ); + }) ).then( function( value ) { + strictEqual( value , "done" , "Passed function executed (new)" ); + }); + + ( new jQuery.Deferred() ).resolve().then( function() { + ok( true , "Success on resolve (new)" ); + }, function() { + ok( false , "Error on resolve (new)" ); + }); + + ( new jQuery.Deferred() ).reject().then( function() { + ok( false , "Success on reject (new)" ); + }, function() { + ok( true , "Error on reject (new)" ); + }); + var tmp = jQuery.Deferred(); strictEqual( tmp.promise() , tmp.promise() , "Test deferred always return same promise" );