1<testcase> 2<info> 3<keywords> 4HTTP 5HTTP PUT 6Expect 7</keywords> 8</info> 9# Server-side 10<reply> 11# 417 means the server didn't like the Expect header 12<data> 13HTTP/1.1 417 BAD swsbounce 14Date: Tue, 09 Nov 2010 14:49:00 GMT 15Server: test-server/fake 16Content-Length: 0 17 18</data> 19<data1> 20HTTP/1.1 200 OK 21Date: Tue, 09 Nov 2010 14:49:00 GMT 22Server: test-server/fake 23Content-Length: 10 24 25blablabla 26</data1> 27<datacheck> 28HTTP/1.1 417 BAD swsbounce 29Date: Tue, 09 Nov 2010 14:49:00 GMT 30Server: test-server/fake 31Content-Length: 0 32 33HTTP/1.1 200 OK 34Date: Tue, 09 Nov 2010 14:49:00 GMT 35Server: test-server/fake 36Content-Length: 10 37 38blablabla 39</datacheck> 40<servercmd> 41no-expect 42</servercmd> 43</reply> 44 45# Client-side 46<client> 47<server> 48http 49</server> 50<name> 51HTTP PUT with Expect: 100-continue and 417 response 52</name> 53<command> 54http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER -T %LOGDIR/test%TESTNUMBER.txt --expect100-timeout 99 55</command> 56# 1053700 x 'x', large enough to invoke the 100-continue behaviour 57<file name="%LOGDIR/test%TESTNUMBER.txt"> 58%repeat[1053700 x x]% 59</file> 60</client> 61 62# Verify data after the test has been "shot" 63<verify> 64<protocol> 65PUT /we/want/%TESTNUMBER HTTP/1.1 66Host: %HOSTIP:%HTTPPORT 67User-Agent: curl/%VERSION 68Accept: */* 69Content-Length: 1053701 70Expect: 100-continue 71 72PUT /we/want/%TESTNUMBER HTTP/1.1 73Host: %HOSTIP:%HTTPPORT 74User-Agent: curl/%VERSION 75Accept: */* 76Content-Length: 1053701 77 78%repeat[1053700 x x]% 79</protocol> 80</verify> 81</testcase> 82