Skip to content

Commit 92a74aa

Browse files
committed
Report
Adding CSV support Signed-off-by: Rodrigo Nardi <rnardi@netdef.org>
1 parent 5536174 commit 92a74aa

File tree

2 files changed

+31
-0
lines changed

2 files changed

+31
-0
lines changed

reports/re_run_report.rb

+16
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
# frozen_string_literal: true
1010

1111
require 'json'
12+
require 'csv'
1213
require_relative '../database_loader'
1314

1415
module Reports
@@ -57,6 +58,8 @@ def save_rerun_info(result, output, filename)
5758
case output
5859
when 'json'
5960
File.write(filename, result.to_json)
61+
when 'csv'
62+
create_csv(filename)
6063
when 'file'
6164
File.open(filename, 'a') do |f|
6265
raw_output(result, file_descriptor: f)
@@ -66,6 +69,19 @@ def save_rerun_info(result, output, filename)
6669
end
6770
end
6871

72+
def create_csv(filename)
73+
CSV.open(filename, 'wb') do |csv_input|
74+
csv_input << %w[PullRequest CheckSuiteId BambooJob GithubUsername RequestedAt Type TestsOrBuilds]
75+
@result.each_pair do |pull_requst, info|
76+
info[:check_suites].each do |cs|
77+
csv_input << [pull_requst,
78+
cs[:check_suite_id], cs[:bamboo_job], cs[:requested_at],
79+
cs[:github_username], cs[:type], cs[:tests_or_builds].join(',')]
80+
end
81+
end
82+
end
83+
end
84+
6985
def raw_output(result, file_descriptor: nil)
7086
result.each_pair do |pull_request, info|
7187
print("\nPull Request: ##{pull_request} - Reruns: #{info[:total]}", file_descriptor)

reports/re_run_report_by_user.rb

+15
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,8 @@ def save_rerun_info(result, output, filename)
5959
case output
6060
when 'json'
6161
File.write(filename, result.to_json)
62+
when 'csv'
63+
create_csv(filename)
6264
when 'file'
6365
File.open(filename, 'a') do |f|
6466
raw_output(result, file_descriptor: f)
@@ -68,6 +70,19 @@ def save_rerun_info(result, output, filename)
6870
end
6971
end
7072

73+
def create_csv(filename)
74+
CSV.open(filename, 'wb') do |csv_input|
75+
csv_input << %w[PullRequest CheckSuiteId BambooJob GithubUsername RequestedAt Type TestsOrBuilds]
76+
@result.each_pair do |pull_requst, info|
77+
info[:check_suites].each do |cs|
78+
csv_input << [pull_requst,
79+
cs[:check_suite_id], cs[:bamboo_job], cs[:requested_at],
80+
cs[:github_username], cs[:type], cs[:tests_or_builds].join(',')]
81+
end
82+
end
83+
end
84+
end
85+
7186
def raw_output(result, file_descriptor: nil)
7287
result.each_pair do |pull_request, info|
7388
print("\nPull Request: ##{pull_request} - Reruns: #{info[:total]}", file_descriptor)

0 commit comments

Comments
 (0)