Return to test645 CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / curl / tests / data |
1.1 ! misho 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: 76 ! 77: ------------------------------ ! 78: Content-Disposition: form-data; name="sendfile"; filename="postit2.c" ! 79: ! 80: d ! 81: 1 ! 82: u ! 83: 1 ! 84: m ! 85: 1 ! 86: m ! 87: 1 ! 88: y ! 89: 1 ! 90: ! 91: ! 92: 65 ! 93: ! 94: ------------------------------ ! 95: Content-Disposition: form-data; name="callbackdata" ! 96: ! 97: ! 98: 1 ! 99: d ! 100: 1 ! 101: u ! 102: 1 ! 103: m ! 104: 1 ! 105: m ! 106: 1 ! 107: y ! 108: 1 ! 109: ! 110: ! 111: 19a ! 112: ! 113: ------------------------------ ! 114: Content-Disposition: form-data; name="filename" ! 115: ! 116: postit2.c ! 117: ------------------------------ ! 118: Content-Disposition: form-data; name="submit" ! 119: ! 120: send ! 121: ------------------------------ ! 122: Content-Disposition: form-data; name="somename"; filename="somefile.txt" ! 123: Content-Type: text/plain ! 124: ! 125: blah blah ! 126: -------------------------------- ! 127: ! 128: 0 ! 129: ! 130: POST /645 HTTP/1.1 ! 131: Host: %HOSTIP:%HTTPPORT ! 132: Accept: */* ! 133: Transfer-Encoding: chunked ! 134: Content-Type: multipart/form-data; boundary=---------------------------- ! 135: Expect: 100-continue ! 136: ! 137: 84 ! 138: ------------------------------ ! 139: Content-Disposition: form-data; name="sendfile alternative"; filename="file name 2" ! 140: ! 141: d ! 142: 1 ! 143: u ! 144: 1 ! 145: m ! 146: 1 ! 147: m ! 148: 1 ! 149: y ! 150: 1 ! 151: ! 152: ! 153: 65 ! 154: ! 155: ------------------------------ ! 156: Content-Disposition: form-data; name="callbackdata" ! 157: ! 158: ! 159: 1 ! 160: d ! 161: 1 ! 162: u ! 163: 1 ! 164: m ! 165: 1 ! 166: m ! 167: 1 ! 168: y ! 169: 1 ! 170: ! 171: ! 172: 19a ! 173: ! 174: ------------------------------ ! 175: Content-Disposition: form-data; name="filename" ! 176: ! 177: postit2.c ! 178: ------------------------------ ! 179: Content-Disposition: form-data; name="submit" ! 180: ! 181: send ! 182: ------------------------------ ! 183: Content-Disposition: form-data; name="somename"; filename="somefile.txt" ! 184: Content-Type: text/plain ! 185: ! 186: blah blah ! 187: -------------------------------- ! 188: ! 189: 0 ! 190: ! 191: </protocol> ! 192: </verify> ! 193: </testcase>