| <?xml version="1.0" encoding="US-ASCII"?> |
| <testcase> |
| <info> |
| <keywords> |
| HTTP |
| HTTP proxy |
| HTTP Basic auth |
| HTTP proxy Basic auth |
| followlocation |
| --anyauth |
| </keywords> |
| </info> |
| |
| # Server-side |
| <reply> |
| <data1000 crlf="headers" nocheck="yes"> |
| HTTP/1.1 401 Authorization Required |
| WWW-Authenticate: Basic |
| Content-Type: text/plain |
| Content-Length: 0 |
| |
| </data1000> |
| <data1001 crlf="headers" nocheck="yes"> |
| HTTP/1.1 302 OK |
| Date: Tue, 09 Nov 2010 14:49:00 GMT |
| Server: test-server/fake swsclose |
| Content-Type: text/plain |
| Funny-head: yesyes |
| Location: http://goto.second.host.now/%TESTNUMBER1002 |
| Content-Length: 0 |
| Connection: close |
| |
| </data1001> |
| <data1002 crlf="headers" nocheck="yes"> |
| HTTP/1.1 200 OK |
| Date: Tue, 09 Nov 2010 14:49:00 GMT |
| Server: test-server/fake swsclose |
| Content-Type: text/plain |
| Funny-head: yesyes |
| Content-Length: 9 |
| |
| contents |
| </data1002> |
| |
| <datacheck crlf="headers"> |
| HTTP/1.1 401 Authorization Required |
| WWW-Authenticate: Basic |
| Content-Type: text/plain |
| Content-Length: 0 |
| |
| HTTP/1.1 302 OK |
| Date: Tue, 09 Nov 2010 14:49:00 GMT |
| Server: test-server/fake swsclose |
| Content-Type: text/plain |
| Funny-head: yesyes |
| Location: http://goto.second.host.now/%TESTNUMBER1002 |
| Content-Length: 0 |
| Connection: close |
| |
| HTTP/1.1 200 OK |
| Date: Tue, 09 Nov 2010 14:49:00 GMT |
| Server: test-server/fake swsclose |
| Content-Type: text/plain |
| Funny-head: yesyes |
| Content-Length: 9 |
| |
| contents |
| </datacheck> |
| </reply> |
| |
| # Client-side |
| <client> |
| <server> |
| http |
| </server> |
| <name> |
| HTTP, proxy with --anyauth and Location: to new host |
| </name> |
| <command> |
| http://first.host.it.is/we/want/that/page/%TESTNUMBER1000 -x %HOSTIP:%HTTPPORT --user iam:myself --location --anyauth |
| </command> |
| <features> |
| proxy |
| </features> |
| </client> |
| |
| # Verify data after the test has been "shot" |
| <verify> |
| <protocol crlf="headers"> |
| GET http://first.host.it.is/we/want/that/page/%TESTNUMBER1000 HTTP/1.1 |
| Host: first.host.it.is |
| User-Agent: curl/%VERSION |
| Accept: */* |
| Proxy-Connection: Keep-Alive |
| |
| GET http://first.host.it.is/we/want/that/page/%TESTNUMBER1000 HTTP/1.1 |
| Host: first.host.it.is |
| Authorization: Basic %b64[iam:myself]b64% |
| User-Agent: curl/%VERSION |
| Accept: */* |
| Proxy-Connection: Keep-Alive |
| |
| GET http://goto.second.host.now/%TESTNUMBER1002 HTTP/1.1 |
| Host: goto.second.host.now |
| User-Agent: curl/%VERSION |
| Accept: */* |
| Proxy-Connection: Keep-Alive |
| |
| </protocol> |
| </verify> |
| </testcase> |