X-Git-Url: http://git.asbjorn.biz/?p=jquery.git;a=blobdiff_plain;f=test%2Funit%2Fajax.js;fp=test%2Funit%2Fajax.js;h=31b319c370aabbe23d976c5741105cbfdf7a8c6c;hp=9d088f3c72348a6e8e642729dc2468f517655555;hb=f286a716d5e5836b8508eb5771624de0aafdb235;hpb=7c9a5e6016c2fcd38872367a891e5b3887d3df53 diff --git a/test/unit/ajax.js b/test/unit/ajax.js index 9d088f3..31b319c 100644 --- a/test/unit/ajax.js +++ b/test/unit/ajax.js @@ -1221,10 +1221,10 @@ test("jQuery.getScript(String, Function) - no callback", function() { jQuery.each( [ "Same Domain", "Cross Domain" ] , function( crossDomain , label ) { test("jQuery.ajax() - JSONP, " + label, function() { - expect(16); + expect(20); var count = 0; - function plus(){ if ( ++count == 16 ) start(); } + function plus(){ if ( ++count == 18 ) start(); } stop(); @@ -1365,6 +1365,38 @@ jQuery.each( [ "Same Domain", "Cross Domain" ] , function( crossDomain , label ) }); jQuery.ajax({ + url: "data/jsonp.php", + dataType: "jsonp", + crossDomain: crossDomain, + jsonpCallback: "functionToCleanUp", + success: function(data){ + ok( data.data, "JSON results returned (GET, custom callback name to be cleaned up)" ); + strictEqual( window.functionToCleanUp, undefined, "Callback was removed (GET, custom callback name to be cleaned up)" ); + plus(); + var xhr; + jQuery.ajax({ + url: "data/jsonp.php", + dataType: "jsonp", + crossDomain: crossDomain, + jsonpCallback: "functionToCleanUp", + beforeSend: function( jXHR ) { + xhr = jXHR; + return false; + } + }); + xhr.error(function() { + ok( true, "Ajax error JSON (GET, custom callback name to be cleaned up)" ); + strictEqual( window.functionToCleanUp, undefined, "Callback was removed after early abort (GET, custom callback name to be cleaned up)" ); + plus(); + }); + }, + error: function(data){ + ok( false, "Ajax error JSON (GET, custom callback name to be cleaned up)" ); + plus(); + } + }); + + jQuery.ajax({ type: "POST", url: "data/jsonp.php", dataType: "jsonp", @@ -1647,7 +1679,7 @@ test("jQuery.post - data", 3, function() { jQuery( 'math', xml ).each( function() { equals( jQuery( 'calculation', this ).text(), '5-2', 'Check for XML' ); equals( jQuery( 'result', this ).text(), '3', 'Check for XML' ); - }) + }); }), jQuery.ajax({