X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=system%2FTestMain.py;h=4241e6a71141af3a5d95584c1a7fed0a5716309b;hb=6538ab6e1bc3d71412f4caf567cd18a11e1267c2;hp=bf5096e917c3ce0c386e1b2510ba998cc747b6c5;hpb=7c07c97c58e15d69152e324dc2495f57ff55d00c;p=tests.git diff --git a/system/TestMain.py b/system/TestMain.py index bf5096e..4241e6a 100755 --- a/system/TestMain.py +++ b/system/TestMain.py @@ -286,7 +286,7 @@ steps refer to a method in TestPlc or to a step_* module if self.options.list_steps: self.init_steps() self.list_steps() - return True + return 'SUCCESS' # steps if not self.options.steps: @@ -299,6 +299,7 @@ steps refer to a method in TestPlc or to a step_* module self.options.exclude = [ step.replace('-','_') for step in self.options.exclude ] self.options.ignore = [ step.replace('-','_') for step in self.options.ignore ] + # technicality, decorate known steps to produce the '_ignore' version TestPlc.create_ignore_steps() # exclude @@ -441,7 +442,7 @@ steps refer to a method in TestPlc or to a step_* module skip_step=True elif answer in ['q','b']: # quit/bye print 'Exiting' - return + return 'FAILURE' elif answer in ['d']: # dry_run dry_run=self.options.dry_run self.options.dry_run=True @@ -473,7 +474,9 @@ steps refer to a method in TestPlc or to a step_* module msg="OK" else: msg="KO" - overall_result='IGNORED' + # do not overwrite if FAILURE + if overall_result=='SUCCESS': + overall_result='IGNORED' utils.header('********** %d IGNORED (%s) step %s on %s'%(plc_counter,msg,stepname,plcname)) status="%s[I]"%msg elif step_result: @@ -518,15 +521,15 @@ steps refer to a method in TestPlc or to a step_* module # wrapper to run, returns a shell-compatible result # retcod: # 0: SUCCESS - # 1: SUCCESS but some ignored steps failed - # 2: FAILED STEP + # 1: FAILURE + # 2: SUCCESS but some ignored steps failed # 3: OTHER ERROR def main(self): try: success=self.run() if success == 'SUCCESS': return 0 - elif success == 'IGNORED': return 1 - else: return 2 + elif success == 'IGNORED': return 2 + else: return 1 except SystemExit: print 'Caught SystemExit' return 3 @@ -536,5 +539,5 @@ steps refer to a method in TestPlc or to a step_* module if __name__ == "__main__": exit_code = TestMain().main() - print 'run_log is exiting',exit_code - sys.exit(TestMain().main()) + print "TestMain exit code",exit_code + sys.exit(exit_code)