<testcase>
<info>
<keywords>
CURLOPT_CURLU
CURLOPT_PORT
</keywords>
</info>

# Server-side
<reply>
<data nocheck="yes">
HTTP/1.1 200 OK
Date: Tue, 09 Nov 2010 14:49:00 GMT
Server: test-server/fake
Content-Type: text/html
Funny-head: yesyes swsclose

</data>
</reply>

# Client-side
<client>
<server>
http
</server>
<name>
CURLOPT_CURLU and CURLOPT_PORT
</name>
<tool>
lib%TESTNUMBER
</tool>

# The tool does two requests, the first sets CURLOPT_PORT to 1
# the second resets the port again and expects that request to work.
<command>
http://%HOSTIP:%HTTPPORT/%TESTNUMBER
</command>
</client>

# Verify data after the test has been "shot"
<verify>
<protocol>
GET /%TESTNUMBER HTTP/1.1
Host: %HOSTIP:%HTTPPORT
Accept: */*

</protocol>
</verify>
</testcase>
