diff --git a/autorun_post.py b/autorun_post.py index b808648f2..444761eeb 100755 --- a/autorun_post.py +++ b/autorun_post.py @@ -34,47 +34,46 @@ def generateTestCompletionTables(output_dir, completion_table): def generateCoverageReport(output_dir, repo_dir): - with open(os.path.join(output_dir, 'coverage.log'), 'w+') as log_file: - coveragePath = os.path.join(output_dir, '**', 'cov_total.info') - covfiles = [os.path.abspath(p) for p in glob.glob(coveragePath, recursive=True)] - for f in covfiles: - print(f, file=log_file) - if len(covfiles) == 0: - return - lcov_opts = [ - '--rc lcov_branch_coverage=1', - '--rc lcov_function_coverage=1', - '--rc genhtml_branch_coverage=1', - '--rc genhtml_function_coverage=1', - '--rc genhtml_legend=1', - '--rc geninfo_all_blocks=1', - ] - cov_total = os.path.abspath(os.path.join(output_dir, 'cov_total.info')) - coverage = os.path.join(output_dir, 'coverage') - lcov = 'lcov' + ' ' + ' '.join(lcov_opts) + ' -q -a ' + ' -a '.join(covfiles) + ' -o ' + cov_total - genhtml = 'genhtml' + ' ' + ' '.join(lcov_opts) + ' -q ' + cov_total + ' --legend' + ' -t "Combined" --show-details -o ' + coverage - try: - subprocess.check_call([lcov], shell=True, stdout=log_file, stderr=log_file) - except subprocess.CalledProcessError as e: - print("lcov failed", file=log_file) - print(e, file=log_file) - return - cov_total_file = open(cov_total, 'r') - replacement = "SF:" + repo_dir - file_contents = cov_total_file.readlines() - cov_total_file.close() - os.remove(cov_total) - with open(cov_total, 'w+') as file: - for Line in file_contents: - Line = re.sub("^SF:.*/repo", replacement, Line) - file.write(Line + '\n') - try: - subprocess.check_call([genhtml], shell=True, stdout=log_file, stderr=log_file) - except subprocess.CalledProcessError as e: - print("genhtml failed", file=log_file) - print(e, file=log_file) - for f in covfiles: - os.remove(f) + coveragePath = os.path.join(output_dir, '**', 'cov_total.info') + covfiles = [os.path.abspath(p) for p in glob.glob(coveragePath, recursive=True)] + for f in covfiles: + print(f) + if len(covfiles) == 0: + return + lcov_opts = [ + '--rc lcov_branch_coverage=1', + '--rc lcov_function_coverage=1', + '--rc genhtml_branch_coverage=1', + '--rc genhtml_function_coverage=1', + '--rc genhtml_legend=1', + '--rc geninfo_all_blocks=1', + ] + cov_total = os.path.abspath(os.path.join(output_dir, 'cov_total.info')) + coverage = os.path.join(output_dir, 'coverage') + lcov = 'lcov' + ' ' + ' '.join(lcov_opts) + ' -q -a ' + ' -a '.join(covfiles) + ' -o ' + cov_total + genhtml = 'genhtml' + ' ' + ' '.join(lcov_opts) + ' -q ' + cov_total + ' --legend' + ' -t "Combined" --show-details -o ' + coverage + try: + subprocess.check_call([lcov], shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + except subprocess.CalledProcessError as e: + print("lcov failed") + print(e) + return + cov_total_file = open(cov_total, 'r') + replacement = "SF:" + repo_dir + file_contents = cov_total_file.readlines() + cov_total_file.close() + os.remove(cov_total) + with open(cov_total, 'w+') as file: + for Line in file_contents: + Line = re.sub("^SF:.*/repo", replacement, Line) + file.write(Line + '\n') + try: + subprocess.check_call([genhtml], shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) + except subprocess.CalledProcessError as e: + print("genhtml failed") + print(e) + for f in covfiles: + os.remove(f) def collectOne(output_dir, dir_name):