[svn r38574] Special case outcome.Failed - reuse that excinfo
--HG-- branch : trunk
This commit is contained in:
		
							parent
							
								
									6210030d27
								
							
						
					
					
						commit
						de078273a0
					
				|  | @ -1,7 +1,7 @@ | |||
| """ Remote executor | ||||
| """ | ||||
| 
 | ||||
| import py, os | ||||
| import py, os, sys | ||||
| 
 | ||||
| from py.__.test.rsession.outcome import Outcome, ReprOutcome | ||||
| from py.__.test.rsession.box import Box | ||||
|  | @ -39,11 +39,15 @@ class RunExecutor(object): | |||
|         except (SystemExit, KeyboardInterrupt): | ||||
|             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( | ||||
|             e = sys.exc_info()[1] | ||||
|             if isinstance(e, Failed): | ||||
|                 excinfo = e.excinfo | ||||
|             else: | ||||
|                 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: | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue