diff options
author | 2020-11-18 00:29:43 +0000 | |
---|---|---|
committer | 2020-11-24 05:46:33 +0000 | |
commit | 75dc8d2dab175fdae054272bfcf25e13f7781d0f (patch) | |
tree | cff35540164a8b92cc46f794b18c43ef869f2034 | |
parent | 53ccfc38aa9c8c02e735f38f4ffdbd837846737b (diff) |
Dump a new CSV with warning messages
Bug: 171068870
Test: manual
Change-Id: Ibb528940daf9a6cd99ece8e5a63d67aacdfc131c
-rw-r--r-- | tools/warn/html_writer.py | 25 | ||||
-rwxr-xr-x | tools/warn/warn_common.py | 3 |
2 files changed, 28 insertions, 0 deletions
diff --git a/tools/warn/html_writer.py b/tools/warn/html_writer.py index b8d3fe6f5d..026a6d0bca 100644 --- a/tools/warn/html_writer.py +++ b/tools/warn/html_writer.py @@ -359,6 +359,25 @@ def dump_csv(csvwriter, warn_patterns): csvwriter.writerow([total, '', 'All warnings']) +def dump_csv_with_description(csvwriter, warning_records, warning_messages, + warn_patterns, project_names): + """Outputs all the warning messages by project.""" + csv_output = [] + for record in warning_records: + project_name = project_names[record[1]] + pattern = warn_patterns[record[0]] + severity = pattern['severity'].header + category = pattern['category'] + description = pattern['description'] + warning = warning_messages[record[2]] + csv_output.append([project_name, severity, + category, description, + warning]) + csv_output = sorted(csv_output) + for output in csv_output: + csvwriter.writerow(output) + + # Return s with escaped backslash and quotation characters. def escape_string(s): return s.replace('\\', '\\\\').replace('"', '\\"') @@ -666,6 +685,12 @@ def write_out_csv(flags, warn_patterns, warning_messages, warning_links, with open(flags.csvpath, 'w') as f: dump_csv(csv.writer(f, lineterminator='\n'), warn_patterns) + if flags.csvwithdescription: + with open(flags.csvwithdescription, 'w') as f: + dump_csv_with_description(csv.writer(f, lineterminator='\n'), + warning_records, warning_messages, + warn_patterns, project_names) + if flags.gencsv: dump_csv(csv.writer(sys.stdout, lineterminator='\n'), warn_patterns) else: diff --git a/tools/warn/warn_common.py b/tools/warn/warn_common.py index 68ed995c00..b2dd8abffc 100755 --- a/tools/warn/warn_common.py +++ b/tools/warn/warn_common.py @@ -77,6 +77,9 @@ def parse_args(use_google3): help='Save CSV warning file to the passed path') parser.add_argument('--gencsv', action='store_true', help='Generate CSV file with number of various warnings') + parser.add_argument('--csvwithdescription', default='', + help="""Save CSV warning file to the passed path this csv + will contain all the warning descriptions""") parser.add_argument('--byproject', action='store_true', help='Separate warnings in HTML output by project names') parser.add_argument('--url', default='', |