[svn r37443] slightly re-organizing RemoteTerminalSession for
easier subclassing. --HG-- branch : trunk
This commit is contained in:
		
							parent
							
								
									a1171a8726
								
							
						
					
					
						commit
						3d70646122
					
				|  | @ -90,30 +90,40 @@ class RemoteTerminalSession(object): | |||
|             print "#                           ", "^" * len(str(rootdir)) | ||||
|         return failures | ||||
| 
 | ||||
|     def run_remote_session(self, failures): | ||||
|     def _initslavegateway(self): | ||||
|         print "* opening PopenGateway: ", self.executable  | ||||
|         gw = py.execnet.PopenGateway(self.executable) | ||||
|         topdir = self.config.topdir | ||||
|         return py.execnet.PopenGateway(self.executable), topdir | ||||
| 
 | ||||
|     def run_remote_session(self, failures): | ||||
|         gw, topdir = self._initslavegateway() | ||||
|         channel = gw.remote_exec(""" | ||||
|             from py.__.test.terminal.remote import slaverun_TerminalSession | ||||
|             slaverun_TerminalSession(channel)  | ||||
|         """, stdout=self.out, stderr=self.out)  | ||||
|         print "MASTER: triggered slave terminal session ->" | ||||
|         print "MASTER: initiated slave terminal session ->" | ||||
|         repr = self.config.make_repr(conftestnames=[]) | ||||
|         channel.send((str(self.config.topdir), repr, failures)) | ||||
|         print "MASTER: send start info"  | ||||
|         channel.send((str(topdir), repr, failures)) | ||||
|         print "MASTER: send start info, topdir=%s" % (topdir,) | ||||
|         try: | ||||
|             return channel.receive() | ||||
|         except channel.RemoteError, e: | ||||
|             print "*" * 70 | ||||
|             print "ERROR while waiting for proper slave startup" | ||||
|             print "*" * 70 | ||||
|             print e | ||||
|             return [] | ||||
| 
 | ||||
| def slaverun_TerminalSession(channel): | ||||
|     """ we run this on the other side. """ | ||||
|     print "SLAVE: starting" | ||||
|     print "SLAVE: initializing ..." | ||||
|     topdir, repr, failures = channel.receive() | ||||
|     print "SLAVE: received configuration"  | ||||
|     print "SLAVE: received configuration, using topdir:", topdir | ||||
|     config = py.test.config  | ||||
|     import sys | ||||
|     sys.stdout.flush() | ||||
|     config.initdirect(topdir, repr, failures) | ||||
|     config.option.session = None | ||||
|     config.option.looponfailing = False  | ||||
|     config.option.usepdb = False  | ||||
|     config.option.executable = None | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue