<testcase>
<info>
<keywords>
HTTP
POST
POST callback
</keywords>
</info>
#
# Server-side
<reply>
<data>
HTTP/1.1 200 OK
Date: Thu, 09 Nov 2010 14:49:00 GMT
Server: test-server/fake swsclose
Connection: close
Content-Type: text/html

hello
</data>
</reply>

# Client-side
<client>
<server>
http
</server>
# tool is what to use instead of 'curl'
<tool>
lib508
</tool>

 <name>
send HTTP POST using read callback
 </name>
 <command>
http://%HOSTIP:%HTTPPORT/508
</command>
</client>

#
# Verify data after the test has been "shot"
<verify>
<strippart>
# remove CR that CURLOPT_TRANSFERTEXT added, when CharConv enabled:
s/^(this is what we post to the silly web server)\r\n/$1\n/ if($has_charconv)
</strippart>
<protocol>
POST /508 HTTP/1.1
Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 45
Content-Type: application/x-www-form-urlencoded

this is what we post to the silly web server
</protocol>
</verify>
</testcase>
