Imported Upstream version 7.59.0
[platform/upstream/curl.git] / tests / data / test309
1 <testcase>
2 <info>
3 <keywords>
4 HTTP
5 HTTPS
6 HTTP GET
7 followlocation
8 </keywords>
9 </info>
10
11 # Server-side
12 <reply>
13 <data>
14 HTTP/1.1 301 This is a weirdo text message swsclose
15 Date: Thu, 09 Nov 2010 14:49:00 GMT
16 Server: test-server/fake
17 Location: https://127.0.0.1:8991/data/3090002.txt?coolsite=yes
18 Connection: close
19
20 This server reply is for testing a simple Location: following to HTTPS URL
21
22 </data>
23 <data2>
24 HTTP/1.1 200 Followed here fine swsclose
25 Date: Thu, 09 Nov 2010 14:49:00 GMT
26 Server: test-server/fake
27 Content-Length: 52
28
29 If this is received, the location following worked
30
31 </data2>
32 <datacheck>
33 HTTP/1.1 301 This is a weirdo text message swsclose
34 Date: Thu, 09 Nov 2010 14:49:00 GMT
35 Server: test-server/fake
36 Location: https://127.0.0.1:8991/data/3090002.txt?coolsite=yes
37 Connection: close
38
39 HTTP/1.1 200 Followed here fine swsclose
40 Date: Thu, 09 Nov 2010 14:49:00 GMT
41 Server: test-server/fake
42 Content-Length: 52
43
44 If this is received, the location following worked
45
46 </datacheck>
47 </reply>
48
49 # Client-side
50 <client>
51 <features>
52 SSL
53 </features>
54 <server>
55 http
56 https
57 </server>
58  <name>
59 HTTP Location: redirect to HTTPS URL
60  </name>
61  <command>
62 -k http://%HOSTIP:%HTTPPORT/want/309 -L
63 </command>
64 # The data section doesn't do variable substitution, so we must assert this
65 <precheck>
66 perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%HTTPSPORT' ne '8991' );"
67 </precheck>
68 </client>
69
70 # Verify data after the test has been "shot"
71 <verify>
72 <strip>
73 ^User-Agent:.*
74 </strip>
75 <protocol>
76 GET /want/309 HTTP/1.1
77 Host: %HOSTIP:%HTTPPORT
78 Accept: */*
79
80 GET /data/3090002.txt?coolsite=yes HTTP/1.1
81 Host: %HOSTIP:%HTTPSPORT
82 Accept: */*
83
84 </protocol>
85 </verify>
86 </testcase>