##// END OF EJS Templates
Cleaned up embedded shell and added cleanup method to InteractiveShell....
Cleaned up embedded shell and added cleanup method to InteractiveShell. * Added explicit code in InteractiveShell to make sure it cleans itself up. This is now done by the single method .cleanup, that can be called to have InteractiveShell cleanup. We can't use __del__ because of the many cycles in our object graph. * The embedded shell is refactored to no embedding logic is in the base class. Thus, InteractiveShell no longer takes an ``embedded`` argument. Just use InteractiveShellEmbed. * Created a super simple top-level :func:`embed` function that creates an InteractiveShellEmbed and calls it.

File last commit:

r1960:51f38f50
r2226:7053ea2c
Show More
test_multiengine.py
55 lines | 1.7 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
#-----------------------------------------------------------------------------
# Tell nose to skip this module
__test__ = {}
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)
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()