3f9b4afdfd
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
98 lines
1.7 KiB
Plaintext
98 lines
1.7 KiB
Plaintext
<testcase>
|
|
<info>
|
|
<keywords>
|
|
HTTP
|
|
HTTP POST
|
|
Expect: 100-continue
|
|
</keywords>
|
|
</info>
|
|
|
|
#
|
|
# Server-side
|
|
<reply>
|
|
<data nocheck="yes">
|
|
HTTP/1.1 404 NOOOOOOOOO
|
|
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
|
Server: test-server/fake
|
|
Content-Length: 6
|
|
Content-Type: text/html
|
|
|
|
-foo-
|
|
</data>
|
|
|
|
<data1>
|
|
HTTP/1.1 404 NEITHER
|
|
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
|
Server: test-server/fake
|
|
Content-Length: 6
|
|
Content-Type: text/html
|
|
|
|
-foo-
|
|
</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/file1130">
|
|
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
|
</file>
|
|
<server>
|
|
http
|
|
</server>
|
|
<name>
|
|
HTTP POST forced expect 100-continue with a 404
|
|
</name>
|
|
<command option="no-output">
|
|
-d @log/file1130 http://%HOSTIP:%HTTPPORT/1130 http://%HOSTIP:%HTTPPORT/11300001 -H "Expect: 100-continue"
|
|
</command>
|
|
</client>
|
|
|
|
#
|
|
# Verify data after the test has been "shot"
|
|
<verify>
|
|
<stdout>
|
|
HTTP/1.1 404 NOOOOOOOOO
|
|
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
|
Server: test-server/fake
|
|
Content-Length: 6
|
|
Content-Type: text/html
|
|
|
|
-foo-
|
|
HTTP/1.1 404 NEITHER
|
|
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
|
Server: test-server/fake
|
|
Content-Length: 6
|
|
Content-Type: text/html
|
|
|
|
-foo-
|
|
</stdout>
|
|
<strip>
|
|
^User-Agent:.*
|
|
</strip>
|
|
<protocol>
|
|
POST /1130 HTTP/1.1
|
|
Host: %HOSTIP:%HTTPPORT
|
|
Accept: */*
|
|
Expect: 100-continue
|
|
Content-Length: 100
|
|
Content-Type: application/x-www-form-urlencoded
|
|
|
|
POST /11300001 HTTP/1.1
|
|
Host: %HOSTIP:%HTTPPORT
|
|
Accept: */*
|
|
Expect: 100-continue
|
|
Content-Length: 100
|
|
Content-Type: application/x-www-form-urlencoded
|
|
|
|
</protocol>
|
|
</verify>
|
|
</testcase>
|