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();
});
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",
});
test("jQuery.ajax() - script by content-type", function() {
- expect(1);
+ expect(2);
stop();
- jQuery.ajax({
- url: "data/script.php",
- data: { header: "script" },
- success: function() {
- start();
- }
- });
+ jQuery.when(
+
+ jQuery.ajax({
+ url: "data/script.php",
+ data: { header: "script" }
+ }),
+
+ jQuery.ajax({
+ url: "data/script.php",
+ data: { header: "ecma" }
+ })
+
+ ).then( start, start );
});
test("jQuery.ajax() - json by content-type", 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({
jQuery.ajax( url("data/json.php") , {
converters: {
- "json myjson": function( data ) {
+ "json myJson": function( data ) {
ok( true , "converter called" );
return data;
}
},
- dataType: "myjson",
+ dataType: "myJson",
success: function() {
ok( true , "Transitive conversion worked" );
strictEqual( this.dataTypes[0] , "text" , "response was retrieved as text" );
jQuery.ajax( url("data/json.php") , {
converters: {
- "json myjson": function( data ) {
+ "json myJson": function( data ) {
ok( true , "converter called (*)" );
return data;
}
},
contents: false, /* headers are wrong so we ignore them */
- dataType: "* myjson",
+ dataType: "* myJson",
success: function() {
ok( true , "Transitive conversion worked (*)" );
strictEqual( this.dataTypes[0] , "text" , "response was retrieved as text (*)" );