]> git.ipfire.org Git - thirdparty/tornado.git/commitdiff
Make Resolver's callback argument optional when the Future result is used.
authorBen Darnell <ben@bendarnell.com>
Mon, 18 Feb 2013 04:57:38 +0000 (23:57 -0500)
committerBen Darnell <ben@bendarnell.com>
Mon, 18 Feb 2013 04:57:38 +0000 (23:57 -0500)
tornado/concurrent.py
tornado/test/netutil_test.py

index 0e78b916d4eaa13a3b9aa2a62b9c71bfe78aebf9..502e8a64caec7b7982420bf20c0241fe529be93b 100644 (file)
@@ -105,7 +105,7 @@ dummy_executor = DummyExecutor()
 def run_on_executor(fn):
     @functools.wraps(fn)
     def wrapper(self, *args, **kwargs):
-        callback = kwargs.pop("callback")
+        callback = kwargs.pop("callback", None)
         future = self.executor.submit(fn, self, *args, **kwargs)
         if callback:
             self.io_loop.add_future(future, callback)
index 4711019fae311bef5231194a4689d37fa3be5d74..e090d3d9f24ed2eb141b0bbab7a4afc941c29270 100644 (file)
@@ -3,7 +3,7 @@ from __future__ import absolute_import, division, print_function, with_statement
 import socket
 
 from tornado.netutil import BlockingResolver, ThreadedResolver
-from tornado.testing import AsyncTestCase
+from tornado.testing import AsyncTestCase, gen_test
 from tornado.test.util import unittest
 
 try:
@@ -27,6 +27,17 @@ class _ResolverTestMixin(object):
              ('127.0.0.1', 80)),
             future.result())
 
+    @gen_test
+    def test_future_interface(self):
+        addrinfo = yield self.resolver.getaddrinfo(
+            'localhost', 80, socket.AF_UNSPEC,
+            socket.SOCK_STREAM, socket.IPPROTO_TCP)
+        self.assertIn(
+            (socket.AF_INET, socket.SOCK_STREAM, socket.IPPROTO_TCP, '',
+             ('127.0.0.1', 80)),
+            addrinfo)
+
+
 
 class BlockingResolverTest(AsyncTestCase, _ResolverTestMixin):
     def setUp(self):