aboutsummaryrefslogtreecommitdiff
path: root/tests/data/test1517
diff options
context:
space:
mode:
authorKarlson2k <k2k@narod.ru>2016-03-17 20:04:20 +0300
committerDaniel Stenberg <daniel@haxx.se>2016-04-20 10:02:22 +0200
commit4fbd57693054eb14499cde2ace2dc7890800598b (patch)
treec7af14a123feab868e79749ba01f655b602cf61c /tests/data/test1517
parent72d5e144fbc6a9db264ae425bb788af218f25d9e (diff)
tests: added test1517
... for checking ability to receive full HTTP response when POST request is used with slow read callback function. This test checks for bug #657 and verifies the work-around from 72d5e144fbc6. Closes #720
Diffstat (limited to 'tests/data/test1517')
-rw-r--r--tests/data/test151769
1 files changed, 69 insertions, 0 deletions
diff --git a/tests/data/test1517 b/tests/data/test1517
new file mode 100644
index 000000000..d0a4aeca3
--- /dev/null
+++ b/tests/data/test1517
@@ -0,0 +1,69 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+POST
+POST callback
+slow callback
+early response
+</keywords>
+</info>
+#
+# This reproduces issue #657, fixed with PR #668 - on Windows
+#
+# Server-side
+<reply>
+# Force server reply right after request headers, not waiting for request body
+<servercmd>
+skip: 45
+</servercmd>
+<data>
+HTTP/1.1 500 Internal Server Error
+Date: Thu, 17 Mar 2016 14:41:00 GMT
+Server: test-server/fake
+Content-Type: text/plain; charset=US-ASCII
+X-Special: swsclose
+Content-Length: 55
+Connection: close
+
+This is a virtual description of server virtual error.
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# tool is what to use instead of 'curl'
+<tool>
+lib1517
+</tool>
+
+ <name>
+HTTP POST, server responds before completed send
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/1517
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<strippart>
+s/^(this is what we post to the silly web server)(\r)?\n//
+</strippart>
+<protocol>
+POST /1517 HTTP/1.1
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+Content-Length: 45
+Content-Type: application/x-www-form-urlencoded
+
+</protocol>
+<errorcode>
+0
+</errorcode>
+</verify>
+</testcase>