lib/github_stats/cli.rb in github-stats-0.1.0 vs lib/github_stats/cli.rb in github-stats-0.2.0

- old
+ new

@@ -17,11 +17,11 @@ end def run setup_db ingest - report + results end private def setup_db Database.new(options).setup end @@ -36,28 +36,31 @@ private def ingest IssueIngester.new(search_string, options).ingest end private def report - results = ClosedByWeekReport.new(search_string, options).results - SpaceSeperatedLinePerResultResultsView.new(results) + Reports.for(options[:report_type]).new(search_string, options) end + private def results + CommaSeperatedLinePerResultResultsView.new(report.results) + end + # Transforms a result set into a space-seperated table the results hash # keys becoming the table headers and line breaks between rows. - class SpaceSeperatedLinePerResultResultsView + class CommaSeperatedLinePerResultResultsView attr_accessor :results def initialize(results) self.results = results end def fields results.keys end def to_s - fields.join(' ') + "\n" + results.map do |result| - fields.map(&result.method(:fetch)).join(' ') + fields.join(',') + "\n" + results.map do |result| + fields.map(&result.method(:fetch)).join(',') end.join("\n") end end end end