Class: Rcov::FullTextReport
Overview
:nodoc:
Constant Summary collapse
- DEFAULT_OPTS =
{:textmode => :coverage}
Instance Method Summary collapse
- #execute ⇒ Object
-
#initialize(opts = {}) ⇒ FullTextReport
constructor
A new instance of FullTextReport.
Methods inherited from Formatter
#add_file, #code_coverage, #each_file_pair_sorted, #mangle_filename, #normalize_filename, #num_code_lines, #num_lines, #sorted_file_pairs, #total_coverage
Constructor Details
#initialize(opts = {}) ⇒ FullTextReport
Returns a new instance of FullTextReport.
300 301 302 303 304 305 |
# File 'lib/rcov/report.rb', line 300 def initialize(opts = {}) = DEFAULT_OPTS.clone.update(opts) @textmode = [:textmode] @color = [:color] super() end |
Instance Method Details
#execute ⇒ Object
307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 |
# File 'lib/rcov/report.rb', line 307 def execute each_file_pair_sorted do |filename, fileinfo| puts "=" * 80 puts filename puts "=" * 80 lines = SCRIPT_LINES__[filename] unless lines # try to get the source code from the global code coverage # analyzer re = /#{Regexp.escape(filename)}\z/ if $rcov_code_coverage_analyzer and (data = $rcov_code_coverage_analyzer.data_matching(re)) lines = data[0] end end (lines || []).each_with_index do |line, i| case @textmode when :counts puts "%-70s| %6d" % [line.chomp[0,70], fileinfo.counts[i]] when :gcc puts "%s:%d:%s" % [filename, i+1, line.chomp] unless fileinfo.coverage[i] when :coverage if @color prefix = fileinfo.coverage[i] ? "\e[32;40m" : "\e[31;40m" puts "#{prefix}%s\e[37;40m" % line.chomp else prefix = fileinfo.coverage[i] ? " " : "!! " puts "#{prefix}#{line}" end end end end end |