def test_main( testName, newProgramArgs, createOptionParserFn, createCommandFn, extraOutputGenerators, expectedOutput) : global gTestOutput # update args previousArgs = sys.argv sys.argv = [] sys.argv.append(getProgramName()) sys.argv.extend(newProgramArgs) # register command factory setExecutionContextFactory(TestExecutionContextFactory()) commandObject=None parser = None startTest(testName) try: gplog.setup_tool_logging(gProgramName,unix.getLocalHostname(),unix.getUserName(),nonuser=False) parser = createOptionParserFn() (options, args) = parser.parse_args() gplog.enable_verbose_logging() commandObject = createCommandFn(options, args) exitCode = commandObject.run() testOutput("sys.exit %s" % exitCode) except ProgramArgumentValidationException, e: testOutput( "Validation error: %s" % e.getMessage())
def test_main(testName, newProgramArgs, createOptionParserFn, createCommandFn, extraOutputGenerators, expectedOutput): global gTestOutput # update args previousArgs = sys.argv sys.argv = [] sys.argv.append(getProgramName()) sys.argv.extend(newProgramArgs) # register command factory setExecutionContextFactory(TestExecutionContextFactory()) commandObject = None parser = None startTest(testName) try: gplog.setup_tool_logging(gProgramName, unix.getLocalHostname(), unix.getUserName(), nonuser=False) parser = createOptionParserFn() (options, args) = parser.parse_args() gplog.enable_verbose_logging() commandObject = createCommandFn(options, args) exitCode = commandObject.run() testOutput("sys.exit %s" % exitCode) except ProgramArgumentValidationException, e: testOutput("Validation error: %s" % e.getMessage())
except ProgramArgumentValidationException, e: testOutput( "Validation error: %s" % e.getMessage()) except ExceptionNoStackTraceNeeded, e: testOutput( str(e)) except Exception, e: testOutput( "EXCEPTION: %s\n%s" % (e, traceback.format_exc())) except KeyboardInterrupt: sys.exit('\nUser Interrupted') finally: if commandObject: commandObject.cleanup() # clean up test settings sys.argv = previousArgs setExecutionContextFactory(None) if extraOutputGenerators is not None: for gen in extraOutputGenerators: gen.generate() finishTest(expectedOutput) def simple_test(testname, fnToCall, argsToFn, expectedOutput): startTest(testname) try: fnToCall(argsToFn) except Exception, e: testOutput( "EXCEPTION: %s\n%s" % (e, traceback.format_exc()))
except ProgramArgumentValidationException, e: testOutput("Validation error: %s" % e.getMessage()) except ExceptionNoStackTraceNeeded, e: testOutput(str(e)) except Exception, e: testOutput("EXCEPTION: %s\n%s" % (e, traceback.format_exc())) except KeyboardInterrupt: sys.exit('\nUser Interrupted') finally: if commandObject: commandObject.cleanup() # clean up test settings sys.argv = previousArgs setExecutionContextFactory(None) if extraOutputGenerators is not None: for gen in extraOutputGenerators: gen.generate() finishTest(expectedOutput) def simple_test(testname, fnToCall, argsToFn, expectedOutput): startTest(testname) try: fnToCall(argsToFn) except Exception, e: testOutput("EXCEPTION: %s\n%s" % (e, traceback.format_exc()))