<?xml version="1.0" encoding="US-ASCII"?>
<testcase>
<info>
<keywords>
HTTP
HTTP GET
HTTP proxy
HTTP proxy Digest auth
multi
</keywords>
</info>

# Server-side
<reply>
<servercmd>
connection-monitor
</servercmd>

# this is returned first since we get no proxy-auth
<data crlf="headers">
HTTP/1.1 407 Authorization Required to proxy me my dear
Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"
Content-Length: 33

And you should ignore this data.
</data>

# then this is returned when we get proxy-auth
<data1000 crlf="headers">
HTTP/1.1 200 OK
Content-Length: 21
Server: no

Nice proxy auth sir!
</data1000>

<datacheck crlf="headers">
HTTP/1.1 407 Authorization Required to proxy me my dear
Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"
Content-Length: 33

HTTP/1.1 200 OK
Content-Length: 21
Server: no

Nice proxy auth sir!
HTTP/1.1 407 Authorization Required to proxy me my dear
Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"
Content-Length: 33

HTTP/1.1 200 OK
Content-Length: 21
Server: no

Nice proxy auth sir!
</datacheck>
</reply>

# Client-side
<client>
<server>
http
</server>
# tool is what to use instead of 'curl'
<tool>
lib%TESTNUMBER
</tool>
<features>
!SSPI
crypto
proxy
digest
</features>
<name>
HTTP proxy auth Digest multi API reusing connection
</name>
<command>
http://test.remote.example.com/path/%TESTNUMBER http://%HOSTIP:%HTTPPORT silly:person custom.set.host.name
</command>
</client>

# Verify data after the test has been "shot"
<verify>
<protocol crlf="headers">
GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1
Host: custom.set.host.name
Accept: */*
Proxy-Connection: Keep-Alive

GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1
Host: custom.set.host.name
Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="/path/%TESTNUMBER", response="ca507dcf189196b6a5374d3233042261"
Accept: */*
Proxy-Connection: Keep-Alive

GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1
Host: custom.set.host.name
Accept: */*
Proxy-Connection: Keep-Alive

GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1
Host: custom.set.host.name
Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="/path/%TESTNUMBER", response="ca507dcf189196b6a5374d3233042261"
Accept: */*
Proxy-Connection: Keep-Alive

[DISCONNECT]
</protocol>
</verify>
</testcase>
