]> git.ipfire.org Git - thirdparty/tornado.git/commitdiff
Add test for curl_httpclient ioctl change.
authorBen Darnell <ben@bendarnell.com>
Fri, 18 Jul 2014 03:17:32 +0000 (23:17 -0400)
committerBen Darnell <ben@bendarnell.com>
Fri, 18 Jul 2014 03:17:32 +0000 (23:17 -0400)
tornado/test/httpclient_test.py

index f2f231ac0559a6b99646afbc1772c726be595d59..70d33fb77ca4149900af6f1522ad50987ffa8e07 100644 (file)
@@ -37,6 +37,18 @@ class PostHandler(RequestHandler):
             self.get_argument("arg1"), self.get_argument("arg2")))
 
 
+class PutHandler(RequestHandler):
+    def put(self):
+        self.write("Put body: ")
+        self.write(self.request.body)
+
+
+class RedirectHandler(RequestHandler):
+    def prepare(self):
+        self.redirect(self.get_argument("url"),
+                      status=int(self.get_argument("status", "302")))
+
+
 class ChunkHandler(RequestHandler):
     def get(self):
         self.write("asdf")
@@ -97,6 +109,8 @@ class HTTPClientCommonTestCase(AsyncHTTPTestCase):
         return Application([
             url("/hello", HelloWorldHandler),
             url("/post", PostHandler),
+            url("/put", PutHandler),
+            url("/redirect", RedirectHandler),
             url("/chunk", ChunkHandler),
             url("/auth", AuthHandler),
             url("/countdown/([0-9]+)", CountdownHandler, name="countdown"),
@@ -396,6 +410,17 @@ Transfer-Encoding: chunked
 
         self.assertTrue('must not be empty' in str(context.exception))
 
+    def test_post_307(self):
+        response = self.fetch("/redirect?status=307&url=/post",
+                              method="POST", body=b"arg1=foo&arg2=bar")
+        self.assertEqual(response.body, b"Post arg1: foo, arg2: bar")
+
+    def test_put_307(self):
+        response = self.fetch("/redirect?status=307&url=/put",
+                              method="PUT", body=b"hello")
+        response.rethrow()
+        self.assertEqual(response.body, b"Put body: hello")
+
 
 class RequestProxyTest(unittest.TestCase):
     def test_request_set(self):