##// END OF EJS Templates
Manage and propagate argv correctly....
Manage and propagate argv correctly. All Application objects should take argv in their constructor, akin to how the standard signature of C programs is "main(int argc, char *argv)". This makes it possible to initialize them from code with different command-line options (otherwise, they end up directly accessing sys.argv[1:] via argparse).

File last commit:

r1960:51f38f50
r2391:1d7c11a4
Show More
test_task.py
51 lines | 1.6 KiB | text/x-python | PythonLexer
# encoding: utf-8
"""This file contains unittests for the kernel.task.py module."""
__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__ = {}
import time
from twisted.internet import defer
from twisted.trial import unittest
from IPython.kernel import task, controllerservice as cs, engineservice as es
from IPython.kernel.multiengine import IMultiEngine
from IPython.testing.util import DeferredTestCase
from IPython.kernel.tests.tasktest import ITaskControllerTestCase
#-------------------------------------------------------------------------------
# Tests
#-------------------------------------------------------------------------------
class BasicTaskControllerTestCase(DeferredTestCase, ITaskControllerTestCase):
def setUp(self):
self.controller = cs.ControllerService()
self.controller.startService()
self.multiengine = IMultiEngine(self.controller)
self.tc = task.ITaskController(self.controller)
self.tc.failurePenalty = 0
self.engines=[]
def tearDown(self):
self.controller.stopService()
for e in self.engines:
e.stopService()