r324759 - [analyzer] [tests] [NFC] Remove a fragile tightly-coupled component emulating parser output

George Karpenkov via cfe-commits cfe-commits at lists.llvm.org
Fri Feb 9 10:39:47 PST 2018


Author: george.karpenkov
Date: Fri Feb  9 10:39:47 2018
New Revision: 324759

URL: http://llvm.org/viewvc/llvm-project?rev=324759&view=rev
Log:
[analyzer] [tests] [NFC] Remove a fragile tightly-coupled component emulating parser output

...when we can just use the real parser instead.

Differential Revision: https://reviews.llvm.org/D43098

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

Modified: cfe/trunk/utils/analyzer/CmpRuns.py
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/utils/analyzer/CmpRuns.py?rev=324759&r1=324758&r2=324759&view=diff
==============================================================================
--- cfe/trunk/utils/analyzer/CmpRuns.py (original)
+++ cfe/trunk/utils/analyzer/CmpRuns.py Fri Feb  9 10:39:47 2018
@@ -102,20 +102,6 @@ class AnalysisDiagnostic:
         return self._data
 
 
-class CmpOptions:
-    """
-    Fake output of option parser with manually constructed options.
-    """
-
-    def __init__(self, verboseLog=None, rootA="", rootB=""):
-        self.rootA = rootA
-        self.rootB = rootB
-        self.verboseLog = verboseLog
-        self.relative_path_histogram = False
-        self.relative_log_path_histogram = False
-        self.absolute_path_histogram = False
-
-
 class AnalysisReport:
     def __init__(self, run, files):
         self.run = run
@@ -322,9 +308,7 @@ def dumpScanBuildResultsDiff(dirA, dirB,
 
     return foundDiffs, len(resultsA.diagnostics), len(resultsB.diagnostics)
 
-
-def main():
-    from optparse import OptionParser
+def generate_option_parser():
     parser = OptionParser("usage: %prog [options] [dir A] [dir B]")
     parser.add_option("", "--rootA", dest="rootA",
                       help="Prefix to ignore on source files for directory A",
@@ -334,24 +318,29 @@ def main():
                       action="store", type=str, default="")
     parser.add_option("", "--verbose-log", dest="verboseLog",
                       help="Write additional information to LOG \
-                      [default=None]",
+                           [default=None]",
                       action="store", type=str, default=None,
                       metavar="LOG")
     parser.add_option("--relative-path-differences-histogram",
                       action="store_true", dest="relative_path_histogram",
                       default=False,
                       help="Show histogram of relative paths differences. \
-                      Requires matplotlib")
+                            Requires matplotlib")
     parser.add_option("--relative-log-path-differences-histogram",
                       action="store_true", dest="relative_log_path_histogram",
                       default=False,
                       help="Show histogram of log relative paths differences. \
-                      Requires matplotlib")
+                            Requires matplotlib")
     parser.add_option("--absolute-path-differences-histogram",
                       action="store_true", dest="absolute_path_histogram",
                       default=False,
                       help="Show histogram of absolute paths differences. \
-                      Requires matplotlib")
+                            Requires matplotlib")
+    return parser
+
+
+def main():
+    parser = generate_option_parser()
     (opts, args) = parser.parse_args()
 
     if len(args) != 2:

Modified: cfe/trunk/utils/analyzer/SATestBuild.py
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/utils/analyzer/SATestBuild.py?rev=324759&r1=324758&r2=324759&view=diff
==============================================================================
--- cfe/trunk/utils/analyzer/SATestBuild.py (original)
+++ cfe/trunk/utils/analyzer/SATestBuild.py Fri Feb  9 10:39:47 2018
@@ -566,7 +566,8 @@ def runCmpResults(Dir, Strictness=0):
                                RefDir, NewDir))
 
         PatchedSourceDirPath = os.path.join(Dir, PatchedSourceDirName)
-        Opts = CmpRuns.CmpOptions(rootA="", rootB=PatchedSourceDirPath)
+        Opts, Args = CmpRuns.generate_option_parser().parse_args(
+            ["", PatchedSourceDirPath])
         # Scan the results, delete empty plist files.
         NumDiffs, ReportsInRef, ReportsInNew = \
             CmpRuns.dumpScanBuildResultsDiff(RefDir, NewDir, Opts, False)




More information about the cfe-commits mailing list