in src/advisor/reports/csv_issue_type_count_by_file_report.py [0:0]
def write_items(self, output_file, items):
issue_types = self.issue_type_config.filter_issue_types(ISSUE_TYPES)
csv_writer = csv.writer(output_file)
header = ['filename'] + [issue_type.display_name() for issue_type in issue_types]
csv_writer.writerow(header)
sorted_source_files = sorted(self.source_files)
issue_type_totals_by_file = {}
for source_file in sorted_source_files:
issue_type_totals = {issue_type: 0 for issue_type in ISSUE_TYPES.values()}
issue_type_totals_by_file[source_file] = issue_type_totals
for item in items:
issue_type_totals_by_file[item.filename][item.__class__] += 1
for source_file in sorted_source_files:
issue_type_totals = issue_type_totals_by_file[source_file]
row = [source_file] + [issue_type_totals[issue_type] for issue_type in issue_types]
csv_writer.writerow(row)