aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES5
-rw-r--r--tests/data/DISABLED1
-rw-r--r--tests/data/Makefile.am2
-rw-r--r--tests/data/test1051103
-rw-r--r--tests/server/sws.c6
5 files changed, 113 insertions, 4 deletions
diff --git a/CHANGES b/CHANGES
index 9374eb3bd..fbfeb019b 100644
--- a/CHANGES
+++ b/CHANGES
@@ -10,6 +10,11 @@ Daniel Fandrich (29 Jul 2008)
- Fixed --use-ascii to properly convert text files on Symbian OS, MS-DOS
and OS/2.
+- Added test case 1051 to test Location: following with PUT, as reported
+ by Ben Sutcliffe. The test when run manually shows a problem in curl,
+ but the test harness web server doesn't run the test correctly so it's
+ disabled for now.
+
Daniel Fandrich (28 Jul 2008)
- Fixed display of the interface bind address in the trace output when it's
an IPv6 address.
diff --git a/tests/data/DISABLED b/tests/data/DISABLED
index b220fb713..562ee823b 100644
--- a/tests/data/DISABLED
+++ b/tests/data/DISABLED
@@ -4,3 +4,4 @@
# per line.
# Lines starting with '#' letters are treated as comments.
1041
+1051
diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am
index e3312d1f4..c47ee476a 100644
--- a/tests/data/Makefile.am
+++ b/tests/data/Makefile.am
@@ -54,7 +54,7 @@ EXTRA_DIST = test1 test108 test117 test127 test20 test27 test34 test46 \
test556 test1031 test628 test629 test630 test631 test632 test1032 \
test1033 test539 test1034 test1035 test1036 test1037 test1038 test1039 \
test1040 test1041 test1042 test1043 test1044 test1045 test1046 test1047 \
- test1048 test1049 test1050
+ test1048 test1049 test1050 test1051
filecheck:
@mkdir test-place; \
diff --git a/tests/data/test1051 b/tests/data/test1051
new file mode 100644
index 000000000..4aa31c1d6
--- /dev/null
+++ b/tests/data/test1051
@@ -0,0 +1,103 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP PUT
+followlocation
+</keywords>
+
+</info>
+# Server-side
+<reply>
+<data>
+HTTP/1.1 301 Redirect swsclose
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Location: data/10510002.txt?coolsite=yes
+Content-Length: 0
+Connection: close
+
+</data>
+<data2>
+HTTP/1.1 100 Continue
+
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 51
+
+If this is received, the location following worked
+</data2>
+<datacheck>
+HTTP/1.1 301 Redirect
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Location: data/10510002.txt?coolsite=yes
+Content-Length: 0
+Connection: Keep-Alive
+
+HTTP/1.1 100 Continue
+
+HTTP/1.1 200 Followed here fine swsclose
+Date: Thu, 29 Jul 2008 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 51
+
+If this is received, the location following worked
+</datacheck>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP PUT with Location: following
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/want/1051 -L -T log/test1051.txt
+</command>
+<file name="log/test1051.txt">
+Weird
+ file
+ to
+ upload
+for
+ testing
+the
+ PUT
+ feature
+</file>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+</strip>
+<protocol>
+PUT /want/1051 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+Content-Length: 78
+Expect: 100-continue
+
+PUT /want/data/10510002.txt?coolsite=yes HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+Content-Length: 78
+Expect: 100-continue
+
+Weird
+ file
+ to
+ upload
+for
+ testing
+the
+ PUT
+ feature
+</protocol>
+</verify>
+</testcase>
diff --git a/tests/server/sws.c b/tests/server/sws.c
index 023fe270e..a114cac43 100644
--- a/tests/server/sws.c
+++ b/tests/server/sws.c
@@ -351,7 +351,7 @@ int ProcessRequest(struct httprequest *req)
headers, for the pipelining case mostly */
req->checkindex += (end - line) + strlen(END_OF_HEADERS);
- /* **** Persistancy ****
+ /* **** Persistency ****
*
* If the request is a HTTP/1.0 one, we close the connection unconditionally
* when we're done.
@@ -539,7 +539,7 @@ static int get_request(curl_socket_t sock, struct httprequest *req)
pipereq_length = req->offset - req->checkindex;
}
- /*** Init the httpreqest structure properly for the upcoming request ***/
+ /*** Init the httprequest structure properly for the upcoming request ***/
req->checkindex = 0;
req->offset = 0;
@@ -1049,7 +1049,7 @@ int main(int argc, char *argv[])
send_doc(msgsock, &req);
if((req.testno < 0) && (req.testno != DOCNUMBER_CONNECT)) {
- logmsg("special request received, no persistancy");
+ logmsg("special request received, no persistency");
break;
}
if(!req.open) {