curl/tests/data/test587
Dan Fandrich 2e2fc007c8 test587: add a slight delay after test
This test is designed to connect to the server, then immediately send a
few bytes and disconnect. In some situations, such as on a loaded
server, this doesn't give the server enough time to write its lock file
before its existence is checked. The test harness then fails to find the
server's input log file (because it hasn't been written yet) and fails
the test. By adding a short delay after the test, the HTTP server has
enough time to write its lock file which gives itself more time to write
its remaining files.

Ref: #11328
2023-09-13 11:26:08 -07:00

65 lines
1.1 KiB
Plaintext

<testcase>
<info>
<keywords>
HTTP
HTTP POST
FORM
flaky
</keywords>
</info>
#
# Server-side
<reply>
<data>
</data>
</reply>
# Client-side
<client>
<features>
form-api
</features>
<server>
http
</server>
# tool is what to use instead of 'curl'
<tool>
lib%TESTNUMBER
</tool>
<name>
HTTP multi-part formpost with aborted read callback
</name>
# Add a delay to give server time to write its output since we otherwise might
# not even give it enough time to write its lock file.
<command delay="1">
http://%HOSTIP:%HTTPPORT/%TESTNUMBER
</command>
</client>
#
# Verify data after the test has been "shot"
<verify>
<strippart>
s/^--------------------------[a-z0-9]*/------------------------------/
s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
</strippart>
<protocol>
POST /%TESTNUMBER HTTP/1.1
Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 744
Content-Type: multipart/form-data; boundary=----------------------------
------------------------------
Content-Disposition: form-data; name="sendfile"; filename="postit2.c"
</protocol>
# CURLE_ABORTED_BY_CALLBACK (42)
<errorcode>
42
</errorcode>
</verify>
</testcase>