##// END OF EJS Templates
Fixing a nasty bug in test_frontend.py that was leading to all sorts...
Fixing a nasty bug in test_frontend.py that was leading to all sorts of weird problems with our test suite like random test errors and unhandled errors in Deferreds. There are 3 problems with this test module: 1. Doesn't use twisted.trial.unittest.TestCase as a base class 2. Test methods don't return Deferreds 3. One test method actually has an unhandled error in a Deferred The only thing I have don't is put a @skip decorator on test_error_callback_added_to_execute to hide 3. All of these things still need to be fixed though. But our tests now pass.

File last commit:

r1395:1feaf0a3
r1614:9dcfcfc5
Show More
asyncclient.py
41 lines | 1.5 KiB | text/x-python | PythonLexer
# encoding: utf-8
"""Asynchronous clients for the IPython controller.
This module has clients for using the various interfaces of the controller
in a fully asynchronous manner. This means that you will need to run the
Twisted reactor yourself and that all methods of the client classes return
deferreds to the result.
The main methods are are `get_*_client` and `get_client`.
"""
__docformat__ = "restructuredtext en"
#-------------------------------------------------------------------------------
# Copyright (C) 2008 The IPython Development Team
#
# Distributed under the terms of the BSD License. The full license is in
# the file COPYING, distributed as part of this software.
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Imports
#-------------------------------------------------------------------------------
from IPython.kernel import codeutil
from IPython.kernel.clientconnector import ClientConnector
# Other things that the user will need
from IPython.kernel.task import MapTask, StringTask
from IPython.kernel.error import CompositeError
#-------------------------------------------------------------------------------
# Code
#-------------------------------------------------------------------------------
_client_tub = ClientConnector()
get_multiengine_client = _client_tub.get_multiengine_client
get_task_client = _client_tub.get_task_client
get_client = _client_tub.get_client