95 строки
1.4 KiB
Plaintext
95 строки
1.4 KiB
Plaintext
<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>
|