Home | History | Annotate | Download | only in data
      1 <testcase>
      2 <info>
      3 <keywords>
      4 HTTP
      5 HTTP POST
      6 HTTP MIME POST
      7 </keywords>
      8 </info>
      9 
     10 #
     11 # Server-side
     12 <reply>
     13 <data>
     14 HTTP/1.1 200 OK
     15 Date: Thu, 09 Nov 2010 14:49:00 GMT
     16 Server: test-server/fake swsclose
     17 Connection: close
     18 Content-Type: text/html
     19 
     20 hello
     21 </data>
     22 <datacheck>
     23 HTTP/1.1 200 OK
     24 Date: Thu, 09 Nov 2010 14:49:00 GMT
     25 Server: test-server/fake swsclose
     26 Connection: close
     27 Content-Type: text/html
     28 
     29 hello
     30 HTTP/1.1 200 OK
     31 Date: Thu, 09 Nov 2010 14:49:00 GMT
     32 Server: test-server/fake swsclose
     33 Connection: close
     34 Content-Type: text/html
     35 
     36 hello
     37 </datacheck>
     38 </reply>
     39 
     40 # Client-side
     41 <client>
     42 <server>
     43 http
     44 </server>
     45 # tool is what to use instead of 'curl'
     46 <tool>
     47 lib645
     48 </tool>
     49 
     50  <name>
     51 HTTP multi-part chunked mimepost using read callback for the file part
     52  </name>
     53  <command>
     54 http://%HOSTIP:%HTTPPORT/645
     55 </command>
     56 </client>
     57 
     58 #
     59 # Verify data after the test has been "shot"
     60 <verify>
     61 <strippart>
     62 s/^--------------------------[a-z0-9]*/------------------------------/
     63 s/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>
     69 POST /645 HTTP/1.1
     70 Host: %HOSTIP:%HTTPPORT
     71 Accept: */*
     72 Transfer-Encoding: chunked
     73 Content-Type: multipart/form-data; boundary=----------------------------
     74 Expect: 100-continue
     75 
     76 2ce
     77 ------------------------------
     78 Content-Disposition: form-data; name="sendfile"; filename="postit2.c"
     79 
     80 this is what we post to the silly web server
     81 
     82 ------------------------------
     83 Content-Disposition: form-data; name="callbackdata"
     84 
     85 this is what we post to the silly web server
     86 
     87 ------------------------------
     88 Content-Disposition: form-data; name="filename"
     89 
     90 postit2.c
     91 ------------------------------
     92 Content-Disposition: form-data; name="submit"
     93 
     94 send
     95 ------------------------------
     96 Content-Disposition: form-data; name="somename"; filename="somefile.txt"
     97 Content-Type: text/plain
     98 
     99 blah blah
    100 --------------------------------
    101 
    102 0
    103 
    104 POST /645 HTTP/1.1
    105 Host: %HOSTIP:%HTTPPORT
    106 Accept: */*
    107 Transfer-Encoding: chunked
    108 Content-Type: multipart/form-data; boundary=----------------------------
    109 Expect: 100-continue
    110 
    111 2dc
    112 ------------------------------
    113 Content-Disposition: form-data; name="sendfile alternative"; filename="file name 2"
    114 
    115 this is what we post to the silly web server
    116 
    117 ------------------------------
    118 Content-Disposition: form-data; name="callbackdata"
    119 
    120 this is what we post to the silly web server
    121 
    122 ------------------------------
    123 Content-Disposition: form-data; name="filename"
    124 
    125 postit2.c
    126 ------------------------------
    127 Content-Disposition: form-data; name="submit"
    128 
    129 send
    130 ------------------------------
    131 Content-Disposition: form-data; name="somename"; filename="somefile.txt"
    132 Content-Type: text/plain
    133 
    134 blah blah
    135 --------------------------------
    136 
    137 0
    138 
    139 </protocol>
    140 </verify>
    141 </testcase>
    142