<testcase> <info> <keywords> HTTP HTTPS HTTP GET followlocation </keywords> </info> # Server-side <reply> <data> HTTP/1.1 301 This is a weirdo text message swsclose Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake Location: https://127.0.0.1:8991/data/3090002.txt?coolsite=yes Connection: close This server reply is for testing a simple Location: following to HTTPS URL </data> <data2> HTTP/1.1 200 Followed here fine swsclose Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake Content-Length: 52 If this is received, the location following worked </data2> <datacheck> HTTP/1.1 301 This is a weirdo text message swsclose Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake Location: https://127.0.0.1:8991/data/3090002.txt?coolsite=yes Connection: close HTTP/1.1 200 Followed here fine swsclose Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake Content-Length: 52 If this is received, the location following worked </datacheck> </reply> # Client-side <client> <features> SSL </features> <server> http https </server> <name> HTTP Location: redirect to HTTPS URL </name> <command> -k http://%HOSTIP:%HTTPPORT/want/309 -L </command> # The data section doesn't do variable substitution, so we must assert this <precheck> perl -e "print 'Test requires default test server host and port' if ( '%HOSTIP' ne '127.0.0.1' || '%HTTPSPORT' ne '8991' );" </precheck> </client> # Verify data after the test has been "shot" <verify> <strip> ^User-Agent:.* </strip> <protocol> GET /want/309 HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* GET /data/3090002.txt?coolsite=yes HTTP/1.1 Host: %HOSTIP:%HTTPSPORT Accept: */* </protocol> </verify> </testcase>