123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- <testcase>
- <info>
- <keywords>
- HTTP
- HTTP POST
- HTTP MIME POST
- </keywords>
- </info>
- #
- # Server-side
- <reply>
- <data>
- HTTP/1.1 200 OK
- Date: Tue, 09 Nov 2010 14:4f:00 GMT
- Server: test-server/fake swsclose
- Connection: close
- Content-Type: text/html
- hello
- </data>
- <datacheck>
- HTTP/1.1 200 OK
- Date: Tue, 09 Nov 2010 14:4f:00 GMT
- Server: test-server/fake swsclose
- Connection: close
- Content-Type: text/html
- hello
- </datacheck>
- </reply>
- # Client-side
- <client>
- <features>
- Mime
- </features>
- <server>
- http
- </server>
- # tool is what to use instead of 'curl'
- <tool>
- lib%TESTNUMBER
- </tool>
- <name>
- HTTP mimepost early end of data detection
- </name>
- <command>
- http://%HOSTIP:%HTTPPORT/%TESTNUMBER %LOGDIR/file%TESTNUMBER.txt
- </command>
- <file name="%LOGDIR/file%TESTNUMBER.txt">
- This is data from a file
- </file>
- </client>
- #
- # Verify data after the test has been "shot"
- <verify>
- <strippart>
- s/^--------------------------[A-Za-z0-9]*/------------------------------/
- s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
- </strippart>
- # Note that the stripping above removes 12 bytes from every occurrence of the
- # boundary string and since 5 of them are in the body contents, we see
- # (5*12) == 60 bytes less
- <protocol>
- POST /%TESTNUMBER HTTP/1.1
- Host: %HOSTIP:%HTTPPORT
- Accept: */*
- Transfer-Encoding: chunked
- Content-Type: multipart/form-data; boundary=----------------------------
- Expect: 100-continue
- %if hyper
- CD
- %else
- cd
- %endif
- ------------------------------
- Content-Disposition: form-data; name="field1"
- dummy
- ------------------------------
- Content-Disposition: form-data; name="field2"
- 5
- dummy
- 97
- ------------------------------
- Content-Disposition: form-data; name="field3"; filename="file%TESTNUMBER.txt"
- Content-Type: text/plain
- %if hyper
- 4F
- %else
- 4f
- %endif
- This is data from a file
- --------------------------------
- 0
- </protocol>
- </verify>
- </testcase>
|