Sha256: efd8c3143b3b3ae7de7a336a44becde67ec8b05b803e588a633c440a5637def5
Contents?: true
Size: 977 Bytes
Versions: 1
Compression:
Stored size: 977 Bytes
Contents
module AnalDiffist class StdOutReporter def report diff, from_rev, to_rev puts "\n\nAnaldifference between revisions: \n #{from_rev}\n #{to_rev}" puts "\nAdded:\n" puts describe(diff.added_problems, :added).join("\n") puts "\nRemoved:\n" puts describe(diff.removed_problems, :removed).join("\n") puts "\n\n" end def describe(problems, mode) results = [] by_type = problems.group_by do |prob| prob.context.split(/(\#|\.)/).first end by_type.keys.sort.each do |type_name| results << " #{type_name}" type_problems = by_type[type_name] by_context = type_problems.group_by do |prob| name = prob.context[type_name.length..-1] end by_context.keys.sort.each do |k| results << " #{k == '' ? '(none)' : k}" results += by_context[k].map {|p| " #{p.description(mode)}"} end end results end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
analdiffist-0.3.0 | lib/analdiffist/std_out_reporter.rb |