From 8e461dd4c21bd378f4ce1bafa0c9271d32c678f0 Mon Sep 17 00:00:00 2001 From: Joachim Klein Date: Mon, 17 Jul 2017 12:51:28 +0000 Subject: [PATCH] prism-auto: add --verbose-test (prints PRISM output but highlights test results and provides statistics like --test) git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12048 bbc10eb1-c90d-0410-af57-cb519fbb1720 --- prism/etc/scripts/prism-auto | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/prism/etc/scripts/prism-auto b/prism/etc/scripts/prism-auto index 3f714568..6271cb3f 100755 --- a/prism/etc/scripts/prism-auto +++ b/prism/etc/scripts/prism-auto @@ -415,9 +415,13 @@ def runPrism(args, dir=""): for line in open(logFile, 'r').readlines(): if re.match('Testing result:', line): printTestResult(line) - if options.showWarnings and re.match('Warning:', line): + elif options.showWarnings and re.match('Warning:', line): printTestResult(line) - if options.test and exitCode != 0: + elif options.verboseTest: + # in verbose mode, also print the non-matching lines + # rstrip to remove newline before printing + print(line.rstrip()) + if options.test and not options.verboseTest and exitCode != 0: # failure, we don't want to cleanup the log (if it was a temporary file) # so that the user can inspect it cleanupLogFile = False @@ -769,6 +773,7 @@ parser.add_option("-p", "--prog", dest="prismExec", metavar="FILE", default="pri parser.add_option("-n", "--non-recursive", action="store_true", dest="nonRec", default=False, help="Don't recurse into directories") parser.add_option("-x", "--extra", action="append", dest="extraArgs", metavar="XXX", default=[], help="Pass extra switches to PRISM") parser.add_option("-t", "--test", action="store_true", dest="test", default=False, help="Run in test mode") +parser.add_option("--verbose-test", action="store_true", dest="verboseTest", default=False, help="Run in verbose test mode (implies --test)") parser.add_option("-w", "--show-warnings", action="store_true", dest="showWarnings", default=False, help="Show warnings (as well as errors) when in test mode") parser.add_option("--nailgun", action="store_true", dest="nailgun", default=False, help="Run PRISM in Nailgun mode") parser.add_option("--ngprism", dest="ngprism", metavar="FILE", default="ngprism", help="Specify the location of ngprism (for Nailgun mode)") @@ -786,6 +791,9 @@ if len(args) < 1: sys.exit(1) if options.debug: logging.basicConfig(level=logging.DEBUG) +if options.verboseTest: + # --verbose-test implies --test + vars(options)['test'] = True if options.logDir and not os.path.isdir(options.logDir): print("Log directory \"" + options.logDir + "\" does not exist") sys.exit(1)