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
66 lines
2.3 KiB
Plaintext
66 lines
2.3 KiB
Plaintext
<testcase>
|
|
<info>
|
|
<keywords>
|
|
TFTP
|
|
TFTP RRQ
|
|
timeout
|
|
FAILURE
|
|
DELAY
|
|
</keywords>
|
|
</info>
|
|
|
|
#
|
|
# Server-side
|
|
<reply>
|
|
<servercmd>
|
|
writedelay: 2000
|
|
</servercmd>
|
|
# ~1200 bytes (so that they don't fit in two 512 byte chunks)
|
|
<data nocheck="yes">
|
|
012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
|
|
</data>
|
|
</reply>
|
|
|
|
#
|
|
# Client-side
|
|
<client>
|
|
<server>
|
|
tftp
|
|
</server>
|
|
# Always kill the TFTP server to not affect following tests, due
|
|
# to this test potentially keeping the TFTP server busy waiting
|
|
# for another 5 seconds after this test has already terminated.
|
|
# On some platforms and CI not enough time passes between this
|
|
# test and the next tests 1242 and 1243, causing them to fail.
|
|
<killserver>
|
|
tftp
|
|
</killserver>
|
|
<name>
|
|
slow TFTP retrieve cancel due to -Y and -y
|
|
</name>
|
|
# if less than 1000 bytes/sec within 2 seconds, abort!
|
|
<command>
|
|
tftp://%HOSTIP:%TFTPPORT//%TESTNUMBER -Y1000 -y2
|
|
</command>
|
|
</client>
|
|
|
|
#
|
|
# Verify pseudo protocol after the test has been "shot"
|
|
<verify>
|
|
<strip>
|
|
^timeout = [5-6]$
|
|
</strip>
|
|
<protocol>
|
|
opcode = 1
|
|
mode = octet
|
|
tsize = 0
|
|
blksize = 512
|
|
filename = /%TESTNUMBER
|
|
</protocol>
|
|
# 28 = CURLE_OPERATION_TIMEDOUT
|
|
<errorcode>
|
|
28
|
|
</errorcode>
|
|
</verify>
|
|
</testcase>
|