1<testcase>
2<info>
3<keywords>
4HTTP
5HTTP GET
6followlocation
7</keywords>
8</info>
9# Server-side
10<reply>
11<data>
12HTTP/1.1 301 This is a weirdo text message swsclose
13Date: Tue, 09 Nov 2010 14:49:00 GMT
14Server: test-server/fake
15Location: data/%TESTNUMBER0002.txt?coolsite=http://anotherurl/?a_second/%TESTNUMBER0002
16Connection: close
17
18This server reply is for testing a simple Location: following
19
20</data>
21<data2>
22HTTP/1.1 200 Followed here fine swsclose
23Date: Tue, 09 Nov 2010 14:49:00 GMT
24Server: test-server/fake
25Content-Length: 52
26
27If this is received, the location following worked
28
29</data2>
30<datacheck>
31HTTP/1.1 301 This is a weirdo text message swsclose
32Date: Tue, 09 Nov 2010 14:49:00 GMT
33Server: test-server/fake
34Location: data/%TESTNUMBER0002.txt?coolsite=http://anotherurl/?a_second/%TESTNUMBER0002
35Connection: close
36
37HTTP/1.1 200 Followed here fine swsclose
38Date: Tue, 09 Nov 2010 14:49:00 GMT
39Server: test-server/fake
40Content-Length: 52
41
42If this is received, the location following worked
43
44</datacheck>
45</reply>
46
47# Client-side
48<client>
49<server>
50http
51</server>
52 <name>
53HTTP Location: following with multiple question marks in URLs
54 </name>
55 <command>
56"http://%HOSTIP:%HTTPPORT/want?uri=http://anything/%TESTNUMBER?secondq/%TESTNUMBER" -L
57</command>
58</client>
59
60# Verify data after the test has been "shot"
61<verify>
62<protocol>
63GET /want?uri=http://anything/%TESTNUMBER?secondq/%TESTNUMBER HTTP/1.1
64Host: %HOSTIP:%HTTPPORT
65User-Agent: curl/%VERSION
66Accept: */*
67
68GET /data/%TESTNUMBER0002.txt?coolsite=http://anotherurl/?a_second/%TESTNUMBER0002 HTTP/1.1
69Host: %HOSTIP:%HTTPPORT
70User-Agent: curl/%VERSION
71Accept: */*
72
73</protocol>
74</verify>
75</testcase>
76