diff options
| author | ademarco <24erre@gmail.com> | 2012-12-07 17:27:03 +0100 |
|---|---|---|
| committer | ademarco <24erre@gmail.com> | 2012-12-07 17:27:03 +0100 |
| commit | 0fe4a9d6007c2ab0f687da0ee9777513f3144a5a (patch) | |
| tree | 887b42cfa5792f37331a5f33bf6633b72946179f | |
| parent | ea2a77ff7e8f1e312067b614c674a343d3bde011 (diff) | |
| download | httpretty-0fe4a9d6007c2ab0f687da0ee9777513f3144a5a.tar.gz | |
Multipart func test as requested in #19
| -rw-r--r-- | tests/functional/test_requests.py | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/tests/functional/test_requests.py b/tests/functional/test_requests.py index adeccf7..ac57907 100644 --- a/tests/functional/test_requests.py +++ b/tests/functional/test_requests.py @@ -328,4 +328,23 @@ def test_multiline(): expect(response.status_code).to.equal(200) expect(HTTPretty.last_request.method).to.equal('POST') expect(HTTPretty.last_request.path).to.equal('/post') - expect(HTTPretty.last_request.body).to.equal('content=Im\r\na multiline\r\n\r\nsentence\r\n')
\ No newline at end of file + expect(HTTPretty.last_request.body).to.equal(data) + expect(HTTPretty.last_request.headers['content-length']).to.equal('37') + expect(HTTPretty.last_request.headers['content-type']).to.equal('application/x-www-form-urlencoded; charset=utf-8') + +@httprettified +def test_multipart(): + url = 'http://httpbin.org/post' + data = '--xXXxXXyYYzzz\r\nContent-Disposition: form-data; name="content"\r\nContent-Type: text/plain; charset=utf-8\r\nContent-Length: 68\r\n\r\nAction: comment\nText: Comment with attach\nAttachment: x1.txt, x2.txt\r\n--xXXxXXyYYzzz\r\nContent-Disposition: form-data; name="attachment_2"; filename="x.txt"\r\nContent-Type: text/plain\r\nContent-Length: 4\r\n\r\nbye\n\r\n--xXXxXXyYYzzz\r\nContent-Disposition: form-data; name="attachment_1"; filename="x.txt"\r\nContent-Type: text/plain\r\nContent-Length: 4\r\n\r\nbye\n\r\n--xXXxXXyYYzzz--\r\n' + headers = {'Content-Length': '495', 'Content-Type': 'multipart/form-data; boundary=xXXxXXyYYzzz', 'Accept': 'text/plain'} + HTTPretty.register_uri( + HTTPretty.POST, + url, + ) + response = requests.post(url, data=data, headers=headers ) + expect(response.status_code).to.equal(200) + expect(HTTPretty.last_request.method).to.equal('POST') + expect(HTTPretty.last_request.path).to.equal('/post') + expect(HTTPretty.last_request.body).to.equal(data) + expect(HTTPretty.last_request.headers['content-length']).to.equal('495') + expect(HTTPretty.last_request.headers['content-type']).to.equal('multipart/form-data; boundary=xXXxXXyYYzzz') |
