lh | 9ed821d | 2023-04-07 01:36:19 -0700 | [diff] [blame] | 1 | <testcase> |
| 2 | <info> |
| 3 | <keywords> |
| 4 | HTTP |
| 5 | POST |
| 6 | POST callback |
| 7 | slow callback |
| 8 | early response |
| 9 | </keywords> |
| 10 | </info> |
| 11 | # |
| 12 | # This reproduces issue #657, fixed with PR #668 - on Windows |
| 13 | # |
| 14 | # Server-side |
| 15 | <reply> |
| 16 | # Force server reply right after request headers, not waiting for request body |
| 17 | <servercmd> |
| 18 | skip: 45 |
| 19 | </servercmd> |
| 20 | <data> |
| 21 | HTTP/1.1 500 Internal Server Error |
| 22 | Date: Thu, 17 Mar 2016 14:41:00 GMT |
| 23 | Server: test-server/fake |
| 24 | Content-Type: text/plain; charset=US-ASCII |
| 25 | X-Special: swsclose |
| 26 | Content-Length: 55 |
| 27 | Connection: close |
| 28 | |
| 29 | This is a virtual description of server virtual error. |
| 30 | </data> |
| 31 | </reply> |
| 32 | |
| 33 | # Client-side |
| 34 | <client> |
| 35 | <server> |
| 36 | http |
| 37 | </server> |
| 38 | # tool is what to use instead of 'curl' |
| 39 | <tool> |
| 40 | lib1517 |
| 41 | </tool> |
| 42 | |
| 43 | <name> |
| 44 | HTTP POST, server responds before completed send |
| 45 | </name> |
| 46 | <command> |
| 47 | http://%HOSTIP:%HTTPPORT/1517 |
| 48 | </command> |
| 49 | </client> |
| 50 | |
| 51 | # |
| 52 | # Verify data after the test has been "shot" |
| 53 | <verify> |
| 54 | <strippart> |
| 55 | s/^(this is what we post to the silly web server)(\r)?\n// |
| 56 | </strippart> |
| 57 | <protocol> |
| 58 | POST /1517 HTTP/1.1
|
| 59 | Host: %HOSTIP:%HTTPPORT
|
| 60 | Accept: */*
|
| 61 | Content-Length: 45
|
| 62 | Content-Type: application/x-www-form-urlencoded
|
| 63 |
|
| 64 | </protocol> |
| 65 | <errorcode> |
| 66 | 0 |
| 67 | </errorcode> |
| 68 | </verify> |
| 69 | </testcase> |