| <testcase> |
| <info> |
| <keywords> |
| HTTP |
| HTTP GET |
| followlocation |
| FTP |
| PASV |
| FILE |
| </keywords> |
| </info> |
| |
| # |
| # Server-side |
| <reply> |
| <data1> |
| HTTP/1.1 302 OK
|
| Date: Thu, 09 Nov 2010 14:49:00 GMT
|
| Server: test-server/fake swsclose
|
| Content-Type: text/html
|
| Funny-head: yesyes
|
| Location: ftp://127.0.0.1:8992/10280002
|
| Content-Length: 0
|
| Connection: close
|
|
|
| </data1> |
| <data2> |
| data |
| to |
| see |
| that FTP |
| works |
| so does it? |
| </data2> |
| </reply> |
| |
| # |
| # Client-side |
| <client> |
| <server> |
| http |
| ftp |
| </server> |
| <name> |
| HTTP Location: redirect to FTP URL |
| </name> |
| <command> |
| http://%HOSTIP:%HTTPPORT/10280001 -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' || '%FTPPORT' ne '8992' );" |
| </precheck> |
| </client> |
| |
| # |
| # Verify data after the test has been "shot" |
| <verify> |
| <strip> |
| ^User-Agent:.* |
| </strip> |
| <protocol> |
| GET /10280001 HTTP/1.1
|
| Host: %HOSTIP:%HTTPPORT
|
| Accept: */*
|
|
|
| USER anonymous
|
| PASS ftp@example.com
|
| PWD
|
| EPSV
|
| TYPE I
|
| SIZE 10280002
|
| RETR 10280002
|
| QUIT
|
| </protocol> |
| <stdout> |
| HTTP/1.1 302 OK
|
| Date: Thu, 09 Nov 2010 14:49:00 GMT
|
| Server: test-server/fake swsclose
|
| Content-Type: text/html
|
| Funny-head: yesyes
|
| Location: ftp://%HOSTIP:%FTPPORT/10280002
|
| Content-Length: 0
|
| Connection: close
|
|
|
| data |
| to |
| see |
| that FTP |
| works |
| so does it? |
| </stdout> |
| </verify> |
| </testcase> |