/home/johnny/projects/merlinux/py/dist/py/execnet/gateway.py:39
def __init__(self, io, startcount=2, maxthreads=None):
global registered_cleanup
-> self._execpool = WorkerPool()
## self.running = True
self.io = io
self._outgoing = Queue.Queue()
self.channelfactory = ChannelFactory(self, startcount)
## self._exitlock = threading.Lock()
if not registered_cleanup:
atexit.register(cleanup_atexit)
registered_cleanup = True
_active_sendqueues[self._outgoing] = True
self.pool = NamedThreadPool(receiver = self.thread_receiver,
sender = self.thread_sender)
/home/johnny/projects/merlinux/py/dist/py/execnet/register.py:33
def __init__(self, io):
self.remote_bootstrap_gateway(io)
-> super(InstallableGateway, self).__init__(io=io, startcount=1)
/home/johnny/projects/merlinux/py/dist/py/execnet/register.py:54
def __init__(self, cmd):
infile, outfile = os.popen2(cmd)
io = inputoutput.Popen2IO(infile, outfile)
-> super(PopenCmdGateway, self).__init__(io=io)
/home/johnny/projects/merlinux/py/dist/py/execnet/register.py:85
def __init__(self, python=sys.executable):
cmd = '%s -u -c "exec input()"' % python
-> super(PopenGateway, self).__init__(cmd)
/home/johnny/projects/merlinux/py/dist/py/test/rsession/testing/test_rsync.py:7
def setup_module(mod):
mod.gw = py.execnet.PopenGateway()
-> mod.gw2 = py.execnet.PopenGateway()
/home/johnny/projects/merlinux/py/dist/py/test/collect.py:397
def setup(self):
if hasattr(self.obj, 'setup_module'):
-> self.obj.setup_module(self.obj)
/home/johnny/projects/merlinux/py/dist/py/test/item.py:29
def prepare(self, colitem):
""" setup objects along the collector chain to the test-method
Teardown any unneccessary previously setup objects.
"""
needed_collectors = colitem.listchain()
while self.stack:
if self.stack == needed_collectors[:len(self.stack)]:
break
col = self.stack.pop()
col.teardown()
for col in needed_collectors[len(self.stack):]:
#print "setting up", col
-> col.setup()
self.stack.append(col)
/home/johnny/projects/merlinux/py/dist/py/test/item.py:72
def run(self):
-> self.state.prepare(self)
self.execute(self.obj, *self.args)
/home/johnny/projects/merlinux/py/dist/py/test/rsession/executor.py:22
def execute(self):
try:
-> self.item.run()
outcome = Outcome()
except py.test.Item.Skipped, e:
outcome = Outcome(skipped=str(e))
except (KeyboardInterrupt, SystemExit):
raise
except:
excinfo = py.code.ExceptionInfo()
if isinstance(self.item, py.test.Function):
fun = self.item.obj # hope this is stable
code = py.code.Code(fun)
excinfo.traceback = excinfo.traceback.cut(
path=code.path, firstlineno=code.firstlineno)
outcome = Outcome(excinfo=excinfo, setupfailure=False)
if self.usepdb:
if self.reporter is not None:
self.reporter(report.ImmediateFailure(self.item,
ReprOutcome(outcome.make_repr())))
import pdb
pdb.post_mortem(excinfo._excinfo[2])
# XXX hmm, we probably will not like to continue from that point
# or we do?
raise SystemExit()
outcome.stdout = ""
outcome.stderr = ""
return outcome
/home/johnny/projects/merlinux/py/dist/py/test/rsession/local.py:31
def plain_runner(item, session, reporter):
# box executor is doing stdout/err catching for us, let's do it here
startcapture(session)
r = RunExecutor(item, usepdb=session.config.option.usepdb, reporter=reporter)
-> outcome = r.execute()
outcome = ReprOutcome(outcome.make_repr())
outcome.stdout, outcome.stderr = finishcapture(session)
return outcome
/home/johnny/projects/merlinux/py/dist/py/test/rsession/local.py:47
def apigen_runner(item, session, reporter):
r = RunExecutor(item, reporter=reporter)
session.tracer.start_tracing()
-> retval = plain_runner(item, session, reporter)
session.tracer.end_tracing()
return retval