mirror of
https://github.com/curl/curl.git
synced 2024-12-15 06:40:09 +08:00
82180643f4
There's a new 'http-proxy' server for tests that runs on a separate port and lets clients do HTTP CONNECT to other ports on the same host to allow us to test HTTP "tunneling" properly. Test cases now have a <proxy> section in <verify> to check that the proxy protocol part matches correctly. Test case 80, 83, 95, 275, 503 and 1078 have been converted. Test 1316 was added.
82 lines
1.5 KiB
Plaintext
82 lines
1.5 KiB
Plaintext
<testcase>
|
|
<info>
|
|
<keywords>
|
|
HTTP
|
|
HTTP GET
|
|
HTTP CONNECT
|
|
HTTP Basic auth
|
|
HTTP proxy
|
|
HTTP proxy Basic auth
|
|
proxytunnel
|
|
</keywords>
|
|
</info>
|
|
|
|
#
|
|
# Server-side
|
|
<reply>
|
|
<data>
|
|
HTTP/1.1 200 OK
|
|
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
|
Server: test-server/fake
|
|
Content-Type: text/html
|
|
Content-Length: 9
|
|
|
|
contents
|
|
</data>
|
|
<datacheck>
|
|
HTTP/1.1 200 Mighty fine indeed
|
|
|
|
HTTP/1.1 200 OK
|
|
Date: Thu, 09 Nov 2010 14:49:00 GMT
|
|
Server: test-server/fake
|
|
Content-Type: text/html
|
|
Content-Length: 9
|
|
|
|
contents
|
|
</datacheck>
|
|
</reply>
|
|
|
|
#
|
|
# Client-side
|
|
<client>
|
|
<server>
|
|
http
|
|
http-proxy
|
|
</server>
|
|
<name>
|
|
HTTP CONNECT with proxytunnel getting two URLs from the same host
|
|
</name>
|
|
<command>
|
|
http://remotesite.com:%HTTPPORT/we/want/that/page/275 -p -x %HOSTIP:%PROXYPORT --user iam:myself --proxy-user youare:yourself http://remotesite.com:%HTTPPORT/we/want/that/page/275
|
|
</command>
|
|
</client>
|
|
|
|
#
|
|
# Verify data after the test has been "shot"
|
|
<verify>
|
|
<strip>
|
|
^User-Agent:.*
|
|
</strip>
|
|
<proxy>
|
|
CONNECT remotesite.com:%HTTPPORT HTTP/1.1
|
|
Host: remotesite.com:%HTTPPORT
|
|
Proxy-Authorization: Basic eW91YXJlOnlvdXJzZWxm
|
|
User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3
|
|
Proxy-Connection: Keep-Alive
|
|
|
|
</proxy>
|
|
<protocol>
|
|
GET /we/want/that/page/275 HTTP/1.1
|
|
Authorization: Basic aWFtOm15c2VsZg==
|
|
Host: remotesite.com:%HTTPPORT
|
|
Accept: */*
|
|
|
|
GET /we/want/that/page/275 HTTP/1.1
|
|
Authorization: Basic aWFtOm15c2VsZg==
|
|
Host: remotesite.com:%HTTPPORT
|
|
Accept: */*
|
|
|
|
</protocol>
|
|
</verify>
|
|
</testcase>
|