1
0
mirror of https://github.com/moparisthebest/curl synced 2024-12-23 16:48:49 -05:00
curl/tests/data/test1131
Daniel Stenberg 3f9b4afdfd 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
2011-07-20 00:08:41 +02:00

96 lines
1.6 KiB
Plaintext

<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>