mirror of
https://github.com/curl/curl.git
synced 2025-03-01 15:15:34 +08:00
Stop checking the timeout used by the client under test (for most tests). The timeout will change if the TFTP test server is slow (such as happens on an overprovisioned CI server) because the client will retry and reduce its timeout, and the actual value is not important for most tests. test285 is changed a different way, by increasing the connect timeout. This improves test coverage by allowing the changed timeout value to be checked, but improves reliability with a carefully-chosen timeout that not only allows twice the time to respond as before, but also allows several retries before the client will change its timeout value. Ref: #11328
118 lines
1.6 KiB
Plaintext
118 lines
1.6 KiB
Plaintext
<testcase>
|
|
<info>
|
|
<keywords>
|
|
HTTP
|
|
HTTP GET
|
|
FTP
|
|
PASV
|
|
FILE
|
|
TFTP
|
|
TFTP RRQ
|
|
multiprotocol
|
|
</keywords>
|
|
</info>
|
|
|
|
#
|
|
# Server-side
|
|
<reply>
|
|
<data1 nocheck="yes">
|
|
HTTP/1.1 200 OK
|
|
Date: Tue, 09 Nov 2010 14:49:00 GMT
|
|
Server: test-server/fake
|
|
Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
|
|
ETag: "21025-dc7-39462498"
|
|
Accept-Ranges: bytes
|
|
Content-Length: 6
|
|
Connection: close
|
|
Content-Type: text/html
|
|
Funny-head: yesyes
|
|
|
|
-foo-
|
|
</data1>
|
|
<data2 nocheck="yes">
|
|
data
|
|
to
|
|
see
|
|
that FTP
|
|
works
|
|
so does it?
|
|
</data2>
|
|
<data3 nocheck="yes">
|
|
a chunk of
|
|
data
|
|
returned
|
|
to TFTP client
|
|
</data3>
|
|
</reply>
|
|
|
|
#
|
|
# Client-side
|
|
<client>
|
|
<server>
|
|
http
|
|
ftp
|
|
file
|
|
tftp
|
|
</server>
|
|
<name>
|
|
HTTP GET followed by FTP RETR followed by FILE followed by TFTP RRQ
|
|
</name>
|
|
<command option="no-include">
|
|
http://%HOSTIP:%HTTPPORT/%TESTNUMBER0001 ftp://%HOSTIP:%FTPPORT/%TESTNUMBER0002 file://localhost%FILE_PWD/%LOGDIR/test%TESTNUMBER.txt tftp://%HOSTIP:%TFTPPORT//%TESTNUMBER0003
|
|
</command>
|
|
<file name="%LOGDIR/test%TESTNUMBER.txt">
|
|
foo
|
|
bar
|
|
bar
|
|
foo
|
|
moo
|
|
</file>
|
|
</client>
|
|
|
|
#
|
|
# Verify data after the test has been "shot"
|
|
<verify>
|
|
<strip>
|
|
^timeout = [5-6]$
|
|
</strip>
|
|
<protocol>
|
|
GET /%TESTNUMBER0001 HTTP/1.1
|
|
Host: %HOSTIP:%HTTPPORT
|
|
User-Agent: curl/%VERSION
|
|
Accept: */*
|
|
|
|
USER anonymous
|
|
PASS ftp@example.com
|
|
PWD
|
|
EPSV
|
|
TYPE I
|
|
SIZE %TESTNUMBER0002
|
|
RETR %TESTNUMBER0002
|
|
opcode = 1
|
|
mode = octet
|
|
tsize = 0
|
|
blksize = 512
|
|
filename = /%TESTNUMBER0003
|
|
QUIT
|
|
</protocol>
|
|
<stdout>
|
|
-foo-
|
|
data
|
|
to
|
|
see
|
|
that FTP
|
|
works
|
|
so does it?
|
|
foo
|
|
bar
|
|
bar
|
|
foo
|
|
moo
|
|
a chunk of
|
|
data
|
|
returned
|
|
to TFTP client
|
|
</stdout>
|
|
</verify>
|
|
</testcase>
|