Python tornado.ioloop.IOLoop.configured_class() Examples
The following are 28
code examples of tornado.ioloop.IOLoop.configured_class().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
tornado.ioloop.IOLoop
, or try the search function
.
Example #1
Source File: httpclient_test.py From teleport with Apache License 2.0 | 6 votes |
def setUp(self): if IOLoop.configured_class().__name__ == 'TwistedIOLoop': # TwistedIOLoop only supports the global reactor, so we can't have # separate IOLoops for client and server threads. raise unittest.SkipTest( 'Sync HTTPClient not compatible with TwistedIOLoop') self.server_ioloop = IOLoop() @gen.coroutine def init_server(): sock, self.port = bind_unused_port() app = Application([('/', HelloWorldHandler)]) self.server = HTTPServer(app) self.server.add_socket(sock) self.server_ioloop.run_sync(init_server) self.server_thread = threading.Thread(target=self.server_ioloop.start) self.server_thread.start() self.http_client = HTTPClient()
Example #2
Source File: httpclient_test.py From tornado-zh with MIT License | 6 votes |
def setUp(self): if IOLoop.configured_class().__name__ in ('TwistedIOLoop', 'AsyncIOMainLoop'): # TwistedIOLoop only supports the global reactor, so we can't have # separate IOLoops for client and server threads. # AsyncIOMainLoop doesn't work with the default policy # (although it could with some tweaks to this test and a # policy that created loops for non-main threads). raise unittest.SkipTest( 'Sync HTTPClient not compatible with TwistedIOLoop or ' 'AsyncIOMainLoop') self.server_ioloop = IOLoop() sock, self.port = bind_unused_port() app = Application([('/', HelloWorldHandler)]) self.server = HTTPServer(app, io_loop=self.server_ioloop) self.server.add_socket(sock) self.server_thread = threading.Thread(target=self.server_ioloop.start) self.server_thread.start() self.http_client = HTTPClient()
Example #3
Source File: process_test.py From teleport with Apache License 2.0 | 6 votes |
def test_subprocess(self): if IOLoop.configured_class().__name__.endswith('LayeredTwistedIOLoop'): # This test fails non-deterministically with LayeredTwistedIOLoop. # (the read_until('\n') returns '\n' instead of 'hello\n') # This probably indicates a problem with either TornadoReactor # or TwistedIOLoop, but I haven't been able to track it down # and for now this is just causing spurious travis-ci failures. raise unittest.SkipTest("Subprocess tests not compatible with " "LayeredTwistedIOLoop") subproc = Subprocess([sys.executable, '-u', '-i'], stdin=Subprocess.STREAM, stdout=Subprocess.STREAM, stderr=subprocess.STDOUT) self.addCleanup(lambda: (subproc.proc.terminate(), subproc.proc.wait())) self.addCleanup(subproc.stdout.close) self.addCleanup(subproc.stdin.close) yield subproc.stdout.read_until(b'>>> ') subproc.stdin.write(b"print('hello')\n") data = yield subproc.stdout.read_until(b'\n') self.assertEqual(data, b"hello\n") yield subproc.stdout.read_until(b">>> ") subproc.stdin.write(b"raise SystemExit\n") data = yield subproc.stdout.read_until_close() self.assertEqual(data, b"")
Example #4
Source File: httpclient_test.py From EventGhost with GNU General Public License v2.0 | 6 votes |
def setUp(self): if IOLoop.configured_class().__name__ in ('TwistedIOLoop', 'AsyncIOMainLoop'): # TwistedIOLoop only supports the global reactor, so we can't have # separate IOLoops for client and server threads. # AsyncIOMainLoop doesn't work with the default policy # (although it could with some tweaks to this test and a # policy that created loops for non-main threads). raise unittest.SkipTest( 'Sync HTTPClient not compatible with TwistedIOLoop or ' 'AsyncIOMainLoop') self.server_ioloop = IOLoop() sock, self.port = bind_unused_port() app = Application([('/', HelloWorldHandler)]) self.server = HTTPServer(app, io_loop=self.server_ioloop) self.server.add_socket(sock) self.server_thread = threading.Thread(target=self.server_ioloop.start) self.server_thread.start() self.http_client = HTTPClient()
Example #5
Source File: httpclient_test.py From tornado-zh with MIT License | 6 votes |
def setUp(self): if IOLoop.configured_class().__name__ in ('TwistedIOLoop', 'AsyncIOMainLoop'): # TwistedIOLoop only supports the global reactor, so we can't have # separate IOLoops for client and server threads. # AsyncIOMainLoop doesn't work with the default policy # (although it could with some tweaks to this test and a # policy that created loops for non-main threads). raise unittest.SkipTest( 'Sync HTTPClient not compatible with TwistedIOLoop or ' 'AsyncIOMainLoop') self.server_ioloop = IOLoop() sock, self.port = bind_unused_port() app = Application([('/', HelloWorldHandler)]) self.server = HTTPServer(app, io_loop=self.server_ioloop) self.server.add_socket(sock) self.server_thread = threading.Thread(target=self.server_ioloop.start) self.server_thread.start() self.http_client = HTTPClient()
Example #6
Source File: httpclient_test.py From viewfinder with Apache License 2.0 | 6 votes |
def setUp(self): if IOLoop.configured_class().__name__ == 'TwistedIOLoop': # TwistedIOLoop only supports the global reactor, so we can't have # separate IOLoops for client and server threads. raise unittest.SkipTest( 'Sync HTTPClient not compatible with TwistedIOLoop') self.server_ioloop = IOLoop() sock, self.port = bind_unused_port() app = Application([('/', HelloWorldHandler)]) server = HTTPServer(app, io_loop=self.server_ioloop) server.add_socket(sock) self.server_thread = threading.Thread(target=self.server_ioloop.start) self.server_thread.start() self.http_client = HTTPClient()
Example #7
Source File: httpclient_test.py From viewfinder with Apache License 2.0 | 6 votes |
def setUp(self): if IOLoop.configured_class().__name__ == 'TwistedIOLoop': # TwistedIOLoop only supports the global reactor, so we can't have # separate IOLoops for client and server threads. raise unittest.SkipTest( 'Sync HTTPClient not compatible with TwistedIOLoop') self.server_ioloop = IOLoop() sock, self.port = bind_unused_port() app = Application([('/', HelloWorldHandler)]) server = HTTPServer(app, io_loop=self.server_ioloop) server.add_socket(sock) self.server_thread = threading.Thread(target=self.server_ioloop.start) self.server_thread.start() self.http_client = HTTPClient()
Example #8
Source File: httpclient_test.py From pySINDy with MIT License | 6 votes |
def setUp(self): if IOLoop.configured_class().__name__ == 'TwistedIOLoop': # TwistedIOLoop only supports the global reactor, so we can't have # separate IOLoops for client and server threads. raise unittest.SkipTest( 'Sync HTTPClient not compatible with TwistedIOLoop') self.server_ioloop = IOLoop() @gen.coroutine def init_server(): sock, self.port = bind_unused_port() app = Application([('/', HelloWorldHandler)]) self.server = HTTPServer(app) self.server.add_socket(sock) self.server_ioloop.run_sync(init_server) self.server_thread = threading.Thread(target=self.server_ioloop.start) self.server_thread.start() self.http_client = HTTPClient()
Example #9
Source File: process_test.py From pySINDy with MIT License | 6 votes |
def test_subprocess(self): if IOLoop.configured_class().__name__.endswith('LayeredTwistedIOLoop'): # This test fails non-deterministically with LayeredTwistedIOLoop. # (the read_until('\n') returns '\n' instead of 'hello\n') # This probably indicates a problem with either TornadoReactor # or TwistedIOLoop, but I haven't been able to track it down # and for now this is just causing spurious travis-ci failures. raise unittest.SkipTest("Subprocess tests not compatible with " "LayeredTwistedIOLoop") subproc = Subprocess([sys.executable, '-u', '-i'], stdin=Subprocess.STREAM, stdout=Subprocess.STREAM, stderr=subprocess.STDOUT) self.addCleanup(lambda: (subproc.proc.terminate(), subproc.proc.wait())) self.addCleanup(subproc.stdout.close) self.addCleanup(subproc.stdin.close) yield subproc.stdout.read_until(b'>>> ') subproc.stdin.write(b"print('hello')\n") data = yield subproc.stdout.read_until(b'\n') self.assertEqual(data, b"hello\n") yield subproc.stdout.read_until(b">>> ") subproc.stdin.write(b"raise SystemExit\n") data = yield subproc.stdout.read_until_close() self.assertEqual(data, b"")
Example #10
Source File: concurrent_test.py From pySINDy with MIT License | 5 votes |
def test_uncaught_exception_log(self): if IOLoop.configured_class().__name__.endswith('AsyncIOLoop'): # Install an exception handler that mirrors our # non-asyncio logging behavior. def exc_handler(loop, context): app_log.error('%s: %s', context['message'], type(context.get('exception'))) self.io_loop.asyncio_loop.set_exception_handler(exc_handler) @gen.coroutine def f(): yield gen.moment 1 / 0 g = f() with ExpectLog(app_log, "(?s)Future.* exception was never retrieved:" ".*ZeroDivisionError"): yield gen.moment yield gen.moment # For some reason, TwistedIOLoop and pypy3 need a third iteration # in order to drain references to the future yield gen.moment del g gc.collect() # for PyPy # The following series of classes demonstrate and test various styles # of use, with and without generators and futures.
Example #11
Source File: gen_test.py From pySINDy with MIT License | 5 votes |
def test_gc_infinite_coro(self): # Github issue 2229: suspended coroutines should be GCed when # their loop is closed, even if they're involved in a reference # cycle. if IOLoop.configured_class().__name__.endswith('TwistedIOLoop'): raise unittest.SkipTest("Test may fail on TwistedIOLoop") loop = self.get_new_ioloop() result = [] wfut = [] @gen.coroutine def infinite_coro(): try: while True: yield gen.sleep(1e-3) result.append(True) finally: # coroutine finalizer result.append(None) @gen.coroutine def do_something(): fut = infinite_coro() fut._refcycle = fut wfut.append(weakref.ref(fut)) yield gen.sleep(0.2) loop.run_sync(do_something) loop.close() gc.collect() # Future was collected self.assertIs(wfut[0](), None) # At least one wakeup self.assertGreaterEqual(len(result), 2) if not self.is_pypy3(): # coroutine finalizer was called (not on PyPy3 apparently) self.assertIs(result[-1], None)
Example #12
Source File: process_test.py From pySINDy with MIT License | 5 votes |
def skip_if_twisted(): if IOLoop.configured_class().__name__.endswith('TwistedIOLoop'): raise unittest.SkipTest("Process tests not compatible with TwistedIOLoop") # Not using AsyncHTTPTestCase because we need control over the IOLoop.
Example #13
Source File: process_test.py From teleport with Apache License 2.0 | 5 votes |
def skip_if_twisted(): if IOLoop.configured_class().__name__.endswith('TwistedIOLoop'): raise unittest.SkipTest("Process tests not compatible with TwistedIOLoop") # Not using AsyncHTTPTestCase because we need control over the IOLoop.
Example #14
Source File: process_test.py From EventGhost with GNU General Public License v2.0 | 5 votes |
def skip_if_twisted(): if IOLoop.configured_class().__name__.endswith(('TwistedIOLoop', 'AsyncIOMainLoop')): raise unittest.SkipTest("Process tests not compatible with " "TwistedIOLoop or AsyncIOMainLoop") # Not using AsyncHTTPTestCase because we need control over the IOLoop.
Example #15
Source File: process_test.py From EventGhost with GNU General Public License v2.0 | 5 votes |
def test_subprocess(self): if IOLoop.configured_class().__name__.endswith('LayeredTwistedIOLoop'): # This test fails non-deterministically with LayeredTwistedIOLoop. # (the read_until('\n') returns '\n' instead of 'hello\n') # This probably indicates a problem with either TornadoReactor # or TwistedIOLoop, but I haven't been able to track it down # and for now this is just causing spurious travis-ci failures. raise unittest.SkipTest("Subprocess tests not compatible with " "LayeredTwistedIOLoop") subproc = Subprocess([sys.executable, '-u', '-i'], stdin=Subprocess.STREAM, stdout=Subprocess.STREAM, stderr=subprocess.STDOUT, io_loop=self.io_loop) self.addCleanup(lambda: os.kill(subproc.pid, signal.SIGTERM)) subproc.stdout.read_until(b'>>> ', self.stop) self.wait() subproc.stdin.write(b"print('hello')\n") subproc.stdout.read_until(b'\n', self.stop) data = self.wait() self.assertEqual(data, b"hello\n") subproc.stdout.read_until(b">>> ", self.stop) self.wait() subproc.stdin.write(b"raise SystemExit\n") subproc.stdout.read_until_close(self.stop) data = self.wait() self.assertEqual(data, b"")
Example #16
Source File: twisted_test.py From EventGhost with GNU General Public License v2.0 | 5 votes |
def save_signal_handlers(): saved = {} for sig in [signal.SIGINT, signal.SIGTERM, signal.SIGCHLD]: saved[sig] = signal.getsignal(sig) if "twisted" in repr(saved): if not issubclass(IOLoop.configured_class(), TwistedIOLoop): # when the global ioloop is twisted, we expect the signal # handlers to be installed. Otherwise, it means we're not # cleaning up after twisted properly. raise Exception("twisted signal handlers already installed") return saved
Example #17
Source File: process_test.py From V1EngineeringInc-Docs with Creative Commons Attribution Share Alike 4.0 International | 5 votes |
def test_subprocess(self): if IOLoop.configured_class().__name__.endswith("LayeredTwistedIOLoop"): # This test fails non-deterministically with LayeredTwistedIOLoop. # (the read_until('\n') returns '\n' instead of 'hello\n') # This probably indicates a problem with either TornadoReactor # or TwistedIOLoop, but I haven't been able to track it down # and for now this is just causing spurious travis-ci failures. raise unittest.SkipTest( "Subprocess tests not compatible with " "LayeredTwistedIOLoop" ) subproc = Subprocess( [sys.executable, "-u", "-i"], stdin=Subprocess.STREAM, stdout=Subprocess.STREAM, stderr=subprocess.STDOUT, ) self.addCleanup(lambda: self.term_and_wait(subproc)) self.addCleanup(subproc.stdout.close) self.addCleanup(subproc.stdin.close) yield subproc.stdout.read_until(b">>> ") subproc.stdin.write(b"print('hello')\n") data = yield subproc.stdout.read_until(b"\n") self.assertEqual(data, b"hello\n") yield subproc.stdout.read_until(b">>> ") subproc.stdin.write(b"raise SystemExit\n") data = yield subproc.stdout.read_until_close() self.assertEqual(data, b"")
Example #18
Source File: concurrent_test.py From teleport with Apache License 2.0 | 5 votes |
def test_uncaught_exception_log(self): if IOLoop.configured_class().__name__.endswith('AsyncIOLoop'): # Install an exception handler that mirrors our # non-asyncio logging behavior. def exc_handler(loop, context): app_log.error('%s: %s', context['message'], type(context.get('exception'))) self.io_loop.asyncio_loop.set_exception_handler(exc_handler) @gen.coroutine def f(): yield gen.moment 1 / 0 g = f() with ExpectLog(app_log, "(?s)Future.* exception was never retrieved:" ".*ZeroDivisionError"): yield gen.moment yield gen.moment # For some reason, TwistedIOLoop and pypy3 need a third iteration # in order to drain references to the future yield gen.moment del g gc.collect() # for PyPy # The following series of classes demonstrate and test various styles # of use, with and without generators and futures.
Example #19
Source File: process_test.py From tornado-zh with MIT License | 5 votes |
def skip_if_twisted(): if IOLoop.configured_class().__name__.endswith(('TwistedIOLoop', 'AsyncIOMainLoop')): raise unittest.SkipTest("Process tests not compatible with " "TwistedIOLoop or AsyncIOMainLoop") # Not using AsyncHTTPTestCase because we need control over the IOLoop.
Example #20
Source File: gen_test.py From teleport with Apache License 2.0 | 5 votes |
def test_gc_infinite_coro(self): # Github issue 2229: suspended coroutines should be GCed when # their loop is closed, even if they're involved in a reference # cycle. if IOLoop.configured_class().__name__.endswith('TwistedIOLoop'): raise unittest.SkipTest("Test may fail on TwistedIOLoop") loop = self.get_new_ioloop() result = [] wfut = [] @gen.coroutine def infinite_coro(): try: while True: yield gen.sleep(1e-3) result.append(True) finally: # coroutine finalizer result.append(None) @gen.coroutine def do_something(): fut = infinite_coro() fut._refcycle = fut wfut.append(weakref.ref(fut)) yield gen.sleep(0.2) loop.run_sync(do_something) loop.close() gc.collect() # Future was collected self.assertIs(wfut[0](), None) # At least one wakeup self.assertGreaterEqual(len(result), 2) if not self.is_pypy3(): # coroutine finalizer was called (not on PyPy3 apparently) self.assertIs(result[-1], None)
Example #21
Source File: process_test.py From viewfinder with Apache License 2.0 | 5 votes |
def skip_if_twisted(): if IOLoop.configured_class().__name__.endswith('TwistedIOLoop'): raise unittest.SkipTest("Process tests not compatible with TwistedIOLoop") # Not using AsyncHTTPTestCase because we need control over the IOLoop.
Example #22
Source File: twisted_test.py From viewfinder with Apache License 2.0 | 5 votes |
def save_signal_handlers(): saved = {} for sig in [signal.SIGINT, signal.SIGTERM, signal.SIGCHLD]: saved[sig] = signal.getsignal(sig) if "twisted" in repr(saved): if not issubclass(IOLoop.configured_class(), TwistedIOLoop): # when the global ioloop is twisted, we expect the signal # handlers to be installed. Otherwise, it means we're not # cleaning up after twisted properly. raise Exception("twisted signal handlers already installed") return saved
Example #23
Source File: process_test.py From viewfinder with Apache License 2.0 | 5 votes |
def skip_if_twisted(): if IOLoop.configured_class().__name__.endswith('TwistedIOLoop'): raise unittest.SkipTest("Process tests not compatible with TwistedIOLoop") # Not using AsyncHTTPTestCase because we need control over the IOLoop.
Example #24
Source File: process_test.py From opendevops with GNU General Public License v3.0 | 5 votes |
def test_subprocess(self): if IOLoop.configured_class().__name__.endswith("LayeredTwistedIOLoop"): # This test fails non-deterministically with LayeredTwistedIOLoop. # (the read_until('\n') returns '\n' instead of 'hello\n') # This probably indicates a problem with either TornadoReactor # or TwistedIOLoop, but I haven't been able to track it down # and for now this is just causing spurious travis-ci failures. raise unittest.SkipTest( "Subprocess tests not compatible with " "LayeredTwistedIOLoop" ) subproc = Subprocess( [sys.executable, "-u", "-i"], stdin=Subprocess.STREAM, stdout=Subprocess.STREAM, stderr=subprocess.STDOUT, ) self.addCleanup(lambda: self.term_and_wait(subproc)) self.addCleanup(subproc.stdout.close) self.addCleanup(subproc.stdin.close) yield subproc.stdout.read_until(b">>> ") subproc.stdin.write(b"print('hello')\n") data = yield subproc.stdout.read_until(b"\n") self.assertEqual(data, b"hello\n") yield subproc.stdout.read_until(b">>> ") subproc.stdin.write(b"raise SystemExit\n") data = yield subproc.stdout.read_until_close() self.assertEqual(data, b"")
Example #25
Source File: twisted_test.py From tornado-zh with MIT License | 5 votes |
def save_signal_handlers(): saved = {} for sig in [signal.SIGINT, signal.SIGTERM, signal.SIGCHLD]: saved[sig] = signal.getsignal(sig) if "twisted" in repr(saved): if not issubclass(IOLoop.configured_class(), TwistedIOLoop): # when the global ioloop is twisted, we expect the signal # handlers to be installed. Otherwise, it means we're not # cleaning up after twisted properly. raise Exception("twisted signal handlers already installed") return saved
Example #26
Source File: process_test.py From tornado-zh with MIT License | 5 votes |
def skip_if_twisted(): if IOLoop.configured_class().__name__.endswith(('TwistedIOLoop', 'AsyncIOMainLoop')): raise unittest.SkipTest("Process tests not compatible with " "TwistedIOLoop or AsyncIOMainLoop") # Not using AsyncHTTPTestCase because we need control over the IOLoop.
Example #27
Source File: twisted_test.py From tornado-zh with MIT License | 5 votes |
def save_signal_handlers(): saved = {} for sig in [signal.SIGINT, signal.SIGTERM, signal.SIGCHLD]: saved[sig] = signal.getsignal(sig) if "twisted" in repr(saved): if not issubclass(IOLoop.configured_class(), TwistedIOLoop): # when the global ioloop is twisted, we expect the signal # handlers to be installed. Otherwise, it means we're not # cleaning up after twisted properly. raise Exception("twisted signal handlers already installed") return saved
Example #28
Source File: process_test.py From tornado-zh with MIT License | 5 votes |
def test_subprocess(self): if IOLoop.configured_class().__name__.endswith('LayeredTwistedIOLoop'): # This test fails non-deterministically with LayeredTwistedIOLoop. # (the read_until('\n') returns '\n' instead of 'hello\n') # This probably indicates a problem with either TornadoReactor # or TwistedIOLoop, but I haven't been able to track it down # and for now this is just causing spurious travis-ci failures. raise unittest.SkipTest("Subprocess tests not compatible with " "LayeredTwistedIOLoop") subproc = Subprocess([sys.executable, '-u', '-i'], stdin=Subprocess.STREAM, stdout=Subprocess.STREAM, stderr=subprocess.STDOUT, io_loop=self.io_loop) self.addCleanup(lambda: os.kill(subproc.pid, signal.SIGTERM)) subproc.stdout.read_until(b'>>> ', self.stop) self.wait() subproc.stdin.write(b"print('hello')\n") subproc.stdout.read_until(b'\n', self.stop) data = self.wait() self.assertEqual(data, b"hello\n") subproc.stdout.read_until(b">>> ", self.stop) self.wait() subproc.stdin.write(b"raise SystemExit\n") subproc.stdout.read_until_close(self.stop) data = self.wait() self.assertEqual(data, b"")