Fixes a bug that prevented headers from being set in an ajaxSend callback. Unit test...
[jquery.git] / test / unit / ajax.js
index 57e6512..59159c3 100644 (file)
@@ -348,10 +348,14 @@ test(".ajax() - headers" , function() {
 
        stop();
 
+       jQuery('#foo').ajaxSend(function( evt, xhr ) {
+               xhr.setRequestHeader( "ajax-send", "test" );
+       });
+
        var requestHeaders = {
-               siMPle: "value",
-               "SometHing-elsE": "other value",
-               OthEr: "something else"
+                       siMPle: "value",
+                       "SometHing-elsE": "other value",
+                       OthEr: "something else"
                },
                list = [],
                i;
@@ -359,22 +363,25 @@ test(".ajax() - headers" , function() {
        for( i in requestHeaders ) {
                list.push( i );
        }
+       list.push( "ajax-send" );
 
        jQuery.ajax(url("data/headers.php?keys="+list.join( "_" ) ), {
+
                headers: requestHeaders,
                success: function( data , _ , xhr ) {
                        var tmp = [];
                        for ( i in requestHeaders ) {
                                tmp.push( i , ": " , requestHeaders[ i ] , "\n" );
                        }
+                       tmp.push(  "ajax-send: test\n" );
                        tmp = tmp.join( "" );
 
                        equals( data , tmp , "Headers were sent" );
                        equals( xhr.getResponseHeader( "Sample-Header" ) , "Hello World" , "Sample header received" );
-                       start();
                },
                error: function(){ ok(false, "error"); }
-       });
+
+       }).then( start, start );
 
 });
 
@@ -524,22 +531,7 @@ test("jQuery ajax - cross-domain detection", function() {
 
 });
 
-test(".ajax() - 304", function() {
-       expect( 1 );
-       stop();
-
-       jQuery.ajax({
-               url: url("data/notmodified.php"),
-               success: function(){ ok(true, "304 ok"); },
-               // Do this because opera simply refuses to implement 304 handling :(
-               // A feature-driven way of detecting this would be appreciated
-               // See: http://gist.github.com/599419
-               error: function(){ ok(jQuery.browser.opera, "304 not ok "); },
-               complete: function(xhr){ start(); }
-       });
-});
-
-test(".load()) - 404 error callbacks", function() {
+test(".load() - 404 error callbacks", function() {
        expect( 6 );
        stop();