method: test.RSession.main

 main loop for running tests. 
    def main(self, args, reporter=None):

origin: test.RSession

where:

exceptions that might appear during execution:

function source:

def main(self, args, reporter=None):
    """ main loop for running tests. """
    if not args: 
        args = [py.path.local()]
    sshhosts = self.config.getinitialvalue("disthosts")
    directories = parse_directories(sshhosts)
    try:
        rsync_roots = self.config.getinitialvalue("distrsync_roots")
    except:
        rsync_roots = None    # all files and directories in the pkgdir
        
    session_options.bind_config(self.config)
    reporter, checkfun, startserverflag = self.init_reporter(reporter,
        sshhosts, RemoteReporter)
    reporter(report.TestStarted(sshhosts))
    pkgdir = self.getpkgdir(args[0])
    colitems = self.make_colitems(args, baseon=pkgdir.dirpath())
    try:
        remotepython = self.config.getinitialvalue("dist_remotepython")
    except:
        remotepython = None

    nodes = init_hosts(reporter, sshhosts, directories, pkgdir,
        rsync_roots, remotepython, remote_options=remote_options.d,
        optimise_localhost=self.optimise_localhost)
    reporter(report.RsyncFinished())
        
    keyword = self.config.option.keyword

    def itemgen():
        for x in colitems: 
            for y in x.tryiter(reporterror = lambda x: self.reporterror(reporter, x), keyword = keyword):
                yield y 
        
    itemgenerator = itemgen()
    dispatch_loop(nodes, itemgenerator, checkfun)
    teardown_hosts(reporter, [node.channel for node in nodes], nodes, 
        exitfirst=self.config.option.exitfirst)
    reporter(report.Nodes(nodes))
    reporter(report.TestFinished())
    if startserverflag:
        from py.__.test.rsession.web import kill_server
        kill_server()

call sites:

called in /home/johnny/projects/merlinux/py/dist/py/test/rsession/testing/test_rsession.py

traceback test.RSession.main.0

called in /home/johnny/projects/merlinux/py/dist/py/test/rsession/testing/test_rsession.py

traceback test.RSession.main.1

called in /home/johnny/projects/merlinux/py/dist/py/test/rsession/testing/test_rsession.py

traceback test.RSession.main.2