r316632 - [Analyzer] [Tests] Consistently use exit codes. Use code=42 to signify different results

George Karpenkov via cfe-commits cfe-commits at lists.llvm.org
Wed Oct 25 18:13:22 PDT 2017


Author: george.karpenkov
Date: Wed Oct 25 18:13:22 2017
New Revision: 316632

URL: http://llvm.org/viewvc/llvm-project?rev=316632&view=rev
Log:
[Analyzer] [Tests] Consistently use exit codes. Use code=42 to signify different results

Modified:
    cfe/trunk/utils/analyzer/SATestBuild.py
    cfe/trunk/utils/analyzer/SATestUpdateDiffs.py

Modified: cfe/trunk/utils/analyzer/SATestBuild.py
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/utils/analyzer/SATestBuild.py?rev=316632&r1=316631&r2=316632&view=diff
==============================================================================
--- cfe/trunk/utils/analyzer/SATestBuild.py (original)
+++ cfe/trunk/utils/analyzer/SATestBuild.py Wed Oct 25 18:13:22 2017
@@ -71,7 +71,7 @@ def getProjectMapPath():
     if not os.path.exists(ProjectMapPath):
         print "Error: Cannot find the Project Map file " + ProjectMapPath +\
               "\nRunning script for the wrong directory?"
-        sys.exit(-1)
+        sys.exit(1)
     return ProjectMapPath
 
 
@@ -97,7 +97,7 @@ else:
     Clang = SATestUtils.which("clang", os.environ['PATH'])
 if not Clang:
     print "Error: cannot find 'clang' in PATH"
-    sys.exit(-1)
+    sys.exit(1)
 
 # Number of jobs.
 Jobs = int(math.ceil(multiprocessing.cpu_count() * 0.75))
@@ -196,7 +196,7 @@ def downloadAndPatch(Dir, PBuildLogFile)
         if not os.path.exists(CachedSourceDirPath):
             print "Error: '%s' not found after download." % (
                   CachedSourceDirPath)
-            exit(-1)
+            exit(1)
 
     PatchedSourceDirPath = os.path.join(Dir, PatchedSourceDirName)
 
@@ -225,7 +225,7 @@ def applyPatch(Dir, PBuildLogFile):
                    shell=True)
     except:
         print "Error: Patch failed. See %s for details." % (PBuildLogFile.name)
-        sys.exit(-1)
+        sys.exit(1)
 
 
 def runScanBuild(Dir, SBOutputDir, PBuildLogFile):
@@ -236,7 +236,7 @@ def runScanBuild(Dir, SBOutputDir, PBuil
     BuildScriptPath = os.path.join(Dir, BuildScript)
     if not os.path.exists(BuildScriptPath):
         print "Error: build script is not defined: %s" % BuildScriptPath
-        sys.exit(-1)
+        sys.exit(1)
 
     AllCheckers = Checkers
     if 'SA_ADDITIONAL_CHECKERS' in os.environ:
@@ -473,7 +473,7 @@ def checkBuild(SBOutputDir):
                 shutil.copyfileobj(FailLogI, SummaryLog)
 
     print "Error: analysis failed. See ", SummaryPath
-    sys.exit(-1)
+    sys.exit(1)
 
 
 def runCmpResults(Dir, Strictness=0):
@@ -503,7 +503,10 @@ def runCmpResults(Dir, Strictness=0):
         RefList.remove(RefLogDir)
     NewList.remove(os.path.join(NewDir, LogFolderName))
 
-    assert(len(RefList) == len(NewList))
+    if len(RefList) != len(NewList):
+        print "Mismatch in number of results folders: %s vs %s" % (
+            RefList, NewList)
+        sys.exit(1)
 
     # There might be more then one folder underneath - one per each scan-build
     # command (Ex: one for configure and one for make).
@@ -656,4 +659,4 @@ if __name__ == '__main__':
     TestsPassed = testAll(IsReference, Strictness)
     if not TestsPassed:
         print "ERROR: Tests failed."
-        sys.exit(-1)
+        sys.exit(42)

Modified: cfe/trunk/utils/analyzer/SATestUpdateDiffs.py
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/utils/analyzer/SATestUpdateDiffs.py?rev=316632&r1=316631&r2=316632&view=diff
==============================================================================
--- cfe/trunk/utils/analyzer/SATestUpdateDiffs.py (original)
+++ cfe/trunk/utils/analyzer/SATestUpdateDiffs.py Wed Oct 25 18:13:22 2017
@@ -32,7 +32,7 @@ def updateReferenceResults(ProjName, Pro
     if not os.path.exists(CreatedResultsPath):
         print >> sys.stderr, "New results not found, was SATestBuild.py "\
                              "previously run?"
-        sys.exit(-1)
+        sys.exit(1)
 
     # Remove reference results: in git, and then again for a good measure
     # with rm, as git might not remove things fully if there are empty
@@ -75,7 +75,7 @@ def main(argv):
         print >> sys.stderr, "Update static analyzer reference results based "\
                              "\non the previous run of SATestBuild.py.\n"\
                              "\nN.B.: Assumes that SATestBuild.py was just run"
-        sys.exit(-1)
+        sys.exit(1)
 
     with SATestBuild.projectFileHandler() as f:
         for (ProjName, ProjBuildMode) in SATestBuild.iterateOverProjects(f):




More information about the cfe-commits mailing list