quickjs-tart

quickjs-based runtime for wallet-core logic
Log | Files | Refs | README | LICENSE

test643 (2808B)


      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: Tue, 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: Tue, 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: Tue, 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 <features>
     43 Mime
     44 </features>
     45 <server>
     46 http
     47 </server>
     48 # tool is what to use instead of 'curl'
     49 <tool>
     50 lib%TESTNUMBER
     51 </tool>
     52 
     53 <name>
     54 HTTP multi-part mimepost using read callback for the file part
     55 </name>
     56 <command>
     57 http://%HOSTIP:%HTTPPORT/%TESTNUMBER
     58 </command>
     59 </client>
     60 
     61 #
     62 # Verify data after the test has been "shot"
     63 <verify>
     64 <strippart>
     65 s/^--------------------------[A-Za-z0-9]*/------------------------------/
     66 s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/
     67 </strippart>
     68 # Note that the stripping above removes 12 bytes from every occurrence of the
     69 # boundary string and since 5 of them are in the body contents, we see
     70 # (5*12) == 60 bytes less
     71 <protocol>
     72 POST /%TESTNUMBER HTTP/1.1
     73 Host: %HOSTIP:%HTTPPORT
     74 Accept: */*
     75 Content-Length: 676
     76 Content-Type: multipart/form-data; boundary=----------------------------
     77 
     78 ------------------------------
     79 Content-Disposition: form-data; name="sendfile"; filename="postit2.c"
     80 
     81 dummy
     82 
     83 ------------------------------
     84 Content-Disposition: form-data; name="callbackdata"
     85 
     86 dummy
     87 
     88 ------------------------------
     89 Content-Disposition: form-data; name="filename"
     90 
     91 postit2.c
     92 ------------------------------
     93 Content-Disposition: form-data; name="submit"
     94 
     95 send
     96 ------------------------------
     97 Content-Disposition: form-data; name="somename"; filename="somefile.txt"
     98 Content-Type: text/plain
     99 
    100 blah blah
    101 --------------------------------
    102 POST /%TESTNUMBER HTTP/1.1
    103 Host: %HOSTIP:%HTTPPORT
    104 Accept: */*
    105 Content-Length: 690
    106 Content-Type: multipart/form-data; boundary=----------------------------
    107 
    108 ------------------------------
    109 Content-Disposition: form-data; name="sendfile alternative"; filename="file name 2"
    110 
    111 dummy
    112 
    113 ------------------------------
    114 Content-Disposition: form-data; name="callbackdata"
    115 
    116 dummy
    117 
    118 ------------------------------
    119 Content-Disposition: form-data; name="filename"
    120 
    121 postit2.c
    122 ------------------------------
    123 Content-Disposition: form-data; name="submit"
    124 
    125 send
    126 ------------------------------
    127 Content-Disposition: form-data; name="somename"; filename="somefile.txt"
    128 Content-Type: text/plain
    129 
    130 blah blah
    131 --------------------------------
    132 </protocol>
    133 </verify>
    134 </testcase>