<testcase>
<info>
<keywords>
HTTP
HTTP POST
FORM
</keywords>
</info>

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

# Client-side
<client>
<features>
form-api
</features>
<server>
http
</server>
# tool is what to use instead of 'curl'
<tool>
lib%TESTNUMBER
</tool>

<name>
HTTP multi-part formpost using read callback for the file part
</name>
<command>
http://%HOSTIP:%HTTPPORT/%TESTNUMBER
</command>
</client>

#
# Verify data after the test has been "shot"
<verify>
<strippart>
s/^--------------------------[A-Za-z0-9]*/------------------------------/
s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
</strippart>
# Note that the stripping above removes 12 bytes from every occurrence of the
# boundary string and since 5 of them are in the body contents, we see
# (5*12) == 60 bytes less
<protocol>
POST /%TESTNUMBER HTTP/1.1
Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 780
Content-Type: multipart/form-data; boundary=----------------------------

------------------------------
Content-Disposition: form-data; name="sendfile"; filename="postit2.c"

this is what we post to the silly web server

------------------------------
Content-Disposition: form-data; name="callbackdata"

this is what we post to the silly web server

------------------------------
Content-Disposition: form-data; name="filename"

postit2.c
------------------------------
Content-Disposition: form-data; name="submit"
Content-Type: text/plain

send
------------------------------
Content-Disposition: form-data; name="somename"; filename="somefile.txt"
Content-Type: text/plain

blah blah
--------------------------------
POST /%TESTNUMBER HTTP/1.1
Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 794
Content-Type: multipart/form-data; boundary=----------------------------

------------------------------
Content-Disposition: form-data; name="sendfile alternative"; filename="file name 2"

this is what we post to the silly web server

------------------------------
Content-Disposition: form-data; name="callbackdata"

this is what we post to the silly web server

------------------------------
Content-Disposition: form-data; name="filename"

postit2.c
------------------------------
Content-Disposition: form-data; name="submit"
Content-Type: text/plain

send
------------------------------
Content-Disposition: form-data; name="somename"; filename="somefile.txt"
Content-Type: text/plain

blah blah
--------------------------------
</protocol>
</verify>
</testcase>
