Fixing request data param issue. Thanks to mislav for the patch. Fixes #5123.
[jquery.git] / test / unit / ajax.js
index ce257f8..8e3c4b6 100644 (file)
@@ -774,7 +774,7 @@ test("jQuery.ajax() - JSONP, Remote", function() {
        var count = 0;
        function plus(){ if ( ++count == 4 ) start(); }
 
-       var base = window.location.href.replace(/\?.*$/, "");
+       var base = window.location.href.replace(/[^\/]*$/, "");
 
        stop();
 
@@ -836,7 +836,7 @@ test("jQuery.ajax() - JSONP, Remote", function() {
 test("jQuery.ajax() - script, Remote", function() {
        expect(2);
 
-       var base = window.location.href.replace(/\?.*$/, "");
+       var base = window.location.href.replace(/[^\/]*$/, "");
 
        stop();
 
@@ -853,7 +853,7 @@ test("jQuery.ajax() - script, Remote", function() {
 test("jQuery.ajax() - script, Remote with POST", function() {
        expect(3);
 
-       var base = window.location.href.replace(/\?.*$/, "");
+       var base = window.location.href.replace(/[^\/]*$/, "");
 
        stop();
 
@@ -876,7 +876,7 @@ test("jQuery.ajax() - script, Remote with POST", function() {
 test("jQuery.ajax() - script, Remote with scheme-less URL", function() {
        expect(2);
 
-       var base = window.location.href.replace(/\?.*$/, "");
+       var base = window.location.href.replace(/[^\/]*$/, "");
        base = base.replace(/^.*?\/\//, "//");
 
        stop();
@@ -991,7 +991,7 @@ test("jQuery.getJSON - Using Native JSON", function() {
 test("jQuery.getJSON(String, Function) - JSON object with absolute url to local content", function() {
        expect(2);
 
-       var base = window.location.href.replace(/\?.*$/, "");
+       var base = window.location.href.replace(/[^\/]*$/, "");
 
        stop();
        jQuery.getJSON(url(base + "data/json.php"), function(json) {
@@ -1163,6 +1163,19 @@ test("data option: evaluate function values (#2806)", function() {
        })
 });
 
+test("data option: empty bodies for non-GET requests", function() {
+       stop();
+       jQuery.ajax({
+               url: "data/echoData.php",
+               data: undefined,
+               type: "post",
+               success: function(result) {
+                       equals( result, "" );
+                       start();
+               }
+       })
+});
+
 test("jQuery.ajax - If-Modified-Since support", function() {
        expect( 3 );
 
@@ -1225,6 +1238,12 @@ test("jQuery.ajax - Etag support", function() {
        });
 });
 
+
+test("jQuery.ajax - active counter", function() {
+    ok( jQuery.ajax.active == 0, "ajax active counter should be zero: " + jQuery.ajax.active );
+});
+
+
 }
 
 //}