diff options
author | Daniel Stenberg <daniel@haxx.se> | 2011-07-11 23:24:45 +0200 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2011-07-20 00:08:41 +0200 |
commit | 3f9b4afdfd7dd3ea16e07af98bb324b9f4277696 (patch) | |
tree | 264a369b6475ea128c1d2949ab31d172abb34395 /tests/data/test1131 | |
parent | d007c3ca76cf0587a3222279ebda0f3a8727807f (diff) |
http error response: stop sending when error is received
When libcurl has said to the server that there's a POST or PUT coming
(with a content-length and all) it has to either deliver that amount of
data or it needs to close the connection before trying a second request.
Adds test case 1129, 1130 and 1131
The bug report is about when used with 100-continue, but the change is
more generic.
Bug: http://curl.haxx.se/mail/lib-2011-06/0191.html
Reported by: Steven Parkes
Diffstat (limited to 'tests/data/test1131')
-rw-r--r-- | tests/data/test1131 | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/tests/data/test1131 b/tests/data/test1131 new file mode 100644 index 000000000..96843af54 --- /dev/null +++ b/tests/data/test1131 @@ -0,0 +1,95 @@ +<testcase> +<info> +<keywords> +HTTP +HTTP PUT +Expect: 100-continue +</keywords> +</info> + +# +# Server-side +<reply> +<data nocheck="yes"> +HTTP/1.1 400 NOOOOOOOOO +Date: Thu, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 9 +Content-Type: text/html + +FAILURE1 +</data> + +<data1> +HTTP/1.1 400 NEITHER +Date: Thu, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 9 +Content-Type: text/html + +FAILURE2 +</data1> + +# we use skip to make the test server never read the full payload off +# the socket and instead return the response at once +<servercmd> +skip: 100 +</servercmd> +</reply> + +# +# Client-side +<client> +# 100 x 'x' +<file name="log/file1131"> +XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +</file> +<server> +http +</server> + <name> +HTTP PUT expect 100-continue with a 400 + </name> + <command option="no-output"> +-T log/file1131 http://%HOSTIP:%HTTPPORT/1131 -T log/file1131 http://%HOSTIP:%HTTPPORT/11310001 +</command> +</client> + +# +# Verify data after the test has been "shot" +<verify> +<stdout> +HTTP/1.1 400 NOOOOOOOOO +Date: Thu, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 9 +Content-Type: text/html + +FAILURE1 +HTTP/1.1 400 NEITHER +Date: Thu, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 9 +Content-Type: text/html + +FAILURE2 +</stdout> +<strip> +^User-Agent:.* +</strip> +<protocol> +PUT /1131 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+Content-Length: 100
+Expect: 100-continue
+
+PUT /11310001 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+Content-Length: 100
+Expect: 100-continue
+
+</protocol> +</verify> +</testcase> |