<testcase>
<info>
<keywords>
HTTP
HTTP FORMPOST
HTTP proxy
HTTP proxy Digest auth
--proxy-anyauth
</keywords>
</info>
# Server-side
<reply>
# The stupid test server doesn't response anything at all until the full
# request has been sent, and then of course the full POST has already been
# sent!
<data>
HTTP/1.1 407 no, tell me who you are first
Date: Tue, 09 Nov 2010 14:49:00 GMT
Server: test-server/fake
Proxy-Authenticate: Digest realm="many secrets", nonce="911"
Content-Length: 0

</data>
<data1000>
HTTP/1.1 200 A OK
Server: Microsoft-IIS/6.0
Content-Type: text/html; charset=iso-8859-1
Content-Length: 3

ok
</data1000>
<datacheck>
HTTP/1.1 407 no, tell me who you are first
Date: Tue, 09 Nov 2010 14:49:00 GMT
Server: test-server/fake
Proxy-Authenticate: Digest realm="many secrets", nonce="911"
Content-Length: 0

HTTP/1.1 200 A OK
Server: Microsoft-IIS/6.0
Content-Type: text/html; charset=iso-8859-1
Content-Length: 3

ok
</datacheck>

</reply>

# Client-side
<client>
<server>
http
</server>
<features>
Mime
!SSPI
crypto
proxy
</features>
<name>
HTTP POST multipart with Expect: header using proxy anyauth (Digest)
</name>
<command>
-x http://%HOSTIP:%HTTPPORT http://remotehost:54321/we/want/%TESTNUMBER -F name=daniel -F tool=curl -F file=@%LOGDIR/test%TESTNUMBER.txt -U uuuser:pppassword --proxy-anyauth -H "Expect: 100-continue"
</command>
# We create this file before the command is invoked!
<file name="%LOGDIR/test%TESTNUMBER.txt">
foo-
This is a moo-
bar
</file>
</client>

# Verify data after the test has been "shot"
<verify>
<strip>
^(Content-Type: multipart/form-data;|------).*
</strip>
<protocol>
POST http://remotehost:54321/we/want/%TESTNUMBER HTTP/1.1
Host: remotehost:54321
User-Agent: curl/%VERSION
Accept: */*
Proxy-Connection: Keep-Alive
Expect: 100-continue
Content-Length: 433
Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce

------------------------------7c633d5c27ce
Content-Disposition: form-data; name="name"

daniel
------------------------------7c633d5c27ce
Content-Disposition: form-data; name="tool"

curl
------------------------------7c633d5c27ce
Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt"
Content-Type: text/plain

foo-
This is a moo-
bar

------------------------------7c633d5c27ce--
POST http://remotehost:54321/we/want/%TESTNUMBER HTTP/1.1
Host: remotehost:54321
Proxy-Authorization: Digest username="uuuser", realm="many secrets", nonce="911", uri="/we/want/%TESTNUMBER", response="b479994d13e60f3aa192a67c5892ddc5"
User-Agent: curl/%VERSION
Accept: */*
Proxy-Connection: Keep-Alive
Expect: 100-continue
Content-Length: 433
Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce

------------------------------7c633d5c27ce
Content-Disposition: form-data; name="name"

daniel
------------------------------7c633d5c27ce
Content-Disposition: form-data; name="tool"

curl
------------------------------7c633d5c27ce
Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt"
Content-Type: text/plain

foo-
This is a moo-
bar

------------------------------7c633d5c27ce--
</protocol>
</verify>
</testcase>
