1<testcase>
2<info>
3<keywords>
4HTTP
5HTTP POST
6MIME
7</keywords>
8</info>
9
10#
11# Server-side
12<reply>
13<data>
14HTTP/1.1 200 OK
15Date: Thu, 09 Nov 2010 14:49:00 GMT
16Server: test-server/fake swsclose
17Connection: close
18Content-Type: text/html
19
20hello
21</data>
22<datacheck>
23HTTP/1.1 200 OK
24Date: Thu, 09 Nov 2010 14:49:00 GMT
25Server: test-server/fake swsclose
26Connection: close
27Content-Type: text/html
28
29hello
30HTTP/1.1 200 OK
31Date: Thu, 09 Nov 2010 14:49:00 GMT
32Server: test-server/fake swsclose
33Connection: close
34Content-Type: text/html
35
36hello
37</datacheck>
38</reply>
39
40# Client-side
41<client>
42<server>
43http
44</server>
45# tool is what to use instead of 'curl'
46<tool>
47lib653
48</tool>
49
50 <name>
51Reuse of handle after altering mime data
52 </name>
53 <command>
54http://%HOSTIP:%HTTPPORT/653
55</command>
56</client>
57
58#
59# Verify data after the test has been "shot"
60<verify>
61<strippart>
62s/^--------------------------[a-z0-9]*/------------------------------/
63s/boundary=------------------------[a-z0-9]*/boundary=----------------------------/
64</strippart>
65# Note that the stripping above removes 12 bytes from every occurrence of the
66# boundary string and since 5 of them are in the body contents, we see
67# (5*12) == 60 bytes less
68<protocol>
69POST /653 HTTP/1.1
70Host: 127.0.0.1:8990
71Accept: */*
72Content-Length: 150
73Content-Type: multipart/form-data; boundary=----------------------------
74
75------------------------------
76Content-Disposition: form-data; name="name"
77
78short value
79--------------------------------
80POST /653 HTTP/1.1
81Host: 127.0.0.1:8990
82Accept: */*
83Content-Length: 167
84Content-Type: multipart/form-data; boundary=----------------------------
85
86------------------------------
87Content-Disposition: form-data; name="name"
88
89long value for length change
90--------------------------------
91</protocol>
92</verify>
93</testcase>
94