]> git.ipfire.org Git - thirdparty/tornado.git/commitdiff
Test cleanup.
authorBen Darnell <ben@bendarnell.com>
Wed, 15 Aug 2012 17:38:09 +0000 (10:38 -0700)
committerBen Darnell <ben@bendarnell.com>
Wed, 15 Aug 2012 17:38:09 +0000 (10:38 -0700)
Listen on 127.0.0.1 to avoid firewall warnings. Move to AsyncHTTPTestCase
to reduce boilerplate.  Close a leaking file descriptor (ResourceWarnings
are still just printing out instead of making the tests fail)

tornado/test/simple_httpclient_test.py

index 72dcdd163eca8673baf5da3325f04e2fe09ee2fe..fee55330bab3dddfc0166363ba36c42b0435d2c6 100644 (file)
@@ -321,21 +321,22 @@ class CreateAsyncHTTPClientTestCase(AsyncTestCase, LogTrapTestCase):
             self.assertEqual(client.max_clients, 14)
 
 
-class HTTP100ContinueTestCase(AsyncTestCase, LogTrapTestCase):
+class HTTP100ContinueTestCase(AsyncHTTPTestCase, LogTrapTestCase):
     def respond_100(self, request):
         self.request = request
-        self.request.connection.stream.write(b("HTTP/1.1 100 CONTINUE\r\n\r\n"), self.respond_200)
+        self.request.connection.stream.write(
+            b("HTTP/1.1 100 CONTINUE\r\n\r\n"),
+            self.respond_200)
 
     def respond_200(self):
-        self.request.connection.stream.write(b("HTTP/1.1 200 OK\r\nContent-Length: 1\r\n\r\nA"))
+        self.request.connection.stream.write(
+            b("HTTP/1.1 200 OK\r\nContent-Length: 1\r\n\r\nA"),
+            self.request.connection.stream.close)
+
+    def get_app(self):
+        # Not a full Application, but works as an HTTPServer callback
+        return self.respond_100
 
     def test_100_continue(self):
-        from tornado.httpserver import HTTPServer
-
-        port   = get_unused_port()
-        server = HTTPServer(self.respond_100, io_loop = self.io_loop)
-        server.listen(port)
-        client = SimpleAsyncHTTPClient(io_loop = self.io_loop)
-        client.fetch('http://localhost:%d/' % port, self.stop)
-        res = self.wait()
+        res = self.fetch('/')
         self.assertEqual(res.body, b('A'))