##// END OF EJS Templates
Merged ipython-notification branch. IPython.kernel.core.notification provides a basic, performant, notification center. Interpreter developers are encouraged to send notifications for relevant interpreter events (e.g. printed output, exceptions, etc.). See docs/source/developer/notification_blueprint.txt for an overview and use cases. Merge also contains a fix for I.kernel.engineservice.ThreadedEngineService to propagate exceptions to clients, and in-progress Cocoa frontend.
Merged ipython-notification branch. IPython.kernel.core.notification provides a basic, performant, notification center. Interpreter developers are encouraged to send notifications for relevant interpreter events (e.g. printed output, exceptions, etc.). See docs/source/developer/notification_blueprint.txt for an overview and use cases. Merge also contains a fix for I.kernel.engineservice.ThreadedEngineService to propagate exceptions to clients, and in-progress Cocoa frontend.

File last commit:

r1244:ba669b1a
r1446:157b72a4 merge
Show More
test_multiengine.py
54 lines | 1.8 KiB | text/x-python | PythonLexer
# encoding: utf-8
""""""
__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
#-------------------------------------------------------------------------------
try:
from twisted.internet import defer
from IPython.testing.util import DeferredTestCase
from IPython.kernel.controllerservice import ControllerService
from IPython.kernel import multiengine as me
from IPython.kernel.tests.multienginetest import (IMultiEngineTestCase,
ISynchronousMultiEngineTestCase)
except ImportError:
pass
else:
class BasicMultiEngineTestCase(DeferredTestCase, IMultiEngineTestCase):
def setUp(self):
self.controller = ControllerService()
self.controller.startService()
self.multiengine = me.IMultiEngine(self.controller)
self.engines = []
def tearDown(self):
self.controller.stopService()
for e in self.engines:
e.stopService()
class SynchronousMultiEngineTestCase(DeferredTestCase, ISynchronousMultiEngineTestCase):
def setUp(self):
self.controller = ControllerService()
self.controller.startService()
self.multiengine = me.ISynchronousMultiEngine(me.IMultiEngine(self.controller))
self.engines = []
def tearDown(self):
self.controller.stopService()
for e in self.engines:
e.stopService()