Fix --produce_manifest flag in validate_failures.py.
authorDiego Novillo <dnovillo@google.com>
Thu, 19 Jul 2012 14:35:18 +0000 (10:35 -0400)
committerDiego Novillo <dnovillo@gcc.gnu.org>
Thu, 19 Jul 2012 14:35:18 +0000 (10:35 -0400)
When I added the functionality to use other summary files for
reporting, I broke the generation of manifests. When sum files are
passed on, we need to use the list. Otherwise, we need to find summary
files in the build directory.

This patch factors out that logic into a new function and calls it
from both the reporting and generation routines.

Committed to trunk.

* testsuite-management/validate_failures.py (CollectSumFiles):
Rename from GetSumFiles.
(GetSumFiles): Factor out of CheckExpectedResults.
(CheckExpectedResults): Call it.
(ProduceManifest): Call it.

From-SVN: r189662

contrib/ChangeLog
contrib/testsuite-management/validate_failures.py

index cc65b77..ee68edb 100644 (file)
@@ -1,3 +1,11 @@
+2012-07-19   Diego Novillo  <dnovillo@google.com>
+
+       * testsuite-management/validate_failures.py (CollectSumFiles):
+       Rename from GetSumFiles.
+       (GetSumFiles): Factor out of CheckExpectedResults.
+       (CheckExpectedResults): Call it.
+       (ProduceManifest): Call it.
+
 2012-07-18   Diego Novillo  <dnovillo@google.com>
 
        * testsuite-management/validate_failures.py: Fix
index b2c52fc..c48e4c3 100755 (executable)
@@ -195,7 +195,7 @@ def GetManifest(manifest_name):
     return set()
 
 
-def GetSumFiles(builddir):
+def CollectSumFiles(builddir):
   sum_files = []
   for root, dirs, files in os.walk(builddir):
     if '.svn' in dirs:
@@ -255,6 +255,16 @@ def PrintSummary(msg, summary):
     print result
 
 
+def GetSumFiles(results, build_dir):
+  if not results:
+    print 'Getting actual results from build'
+    sum_files = CollectSumFiles(build_dir)
+  else:
+    print 'Getting actual results from user-provided results'
+    sum_files = results.split()
+  return sum_files
+
+
 def CheckExpectedResults(options):
   if not options.manifest:
     (srcdir, target, valid_build) = GetBuildData(options)
@@ -268,13 +278,7 @@ def CheckExpectedResults(options):
 
   print 'Manifest:         %s' % manifest_name
   manifest = GetManifest(manifest_name)
-
-  if not options.results:
-    print 'Getting actual results from build'
-    sum_files = GetSumFiles(options.build_dir)
-  else:
-    print 'Getting actual results from user-provided results'
-    sum_files = options.results.split()
+  sum_files = GetSumFiles(options.results, options.build_dir)
   actual = GetResults(sum_files)
 
   if options.verbosity >= 1:
@@ -311,7 +315,8 @@ def ProduceManifest(options):
     Error('Manifest file %s already exists.\nUse --force to overwrite.' %
           manifest_name)
 
-  actual = GetResults(options.build_dir)
+  sum_files = GetSumFiles(options.results, options.build_dir)
+  actual = GetResults(sum_files)
   with open(manifest_name, 'w') as manifest_file:
     for result in sorted(actual):
       print result