Class: SimpleCov::Formatter::MetricFu

Inherits:
Object
  • Object
show all
Defined in:
lib/metric_fu/metrics/rcov/simplecov_formatter.rb

Defined Under Namespace

Classes: FormatLikeRCov

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#coverage_file_pathObject



24
25
26
# File 'lib/metric_fu/metrics/rcov/simplecov_formatter.rb', line 24

def coverage_file_path
  @coverage_file_path || self.coverage_file_path = default_coverage_file_path
end

Instance Method Details

#default_coverage_file_pathObject



28
29
30
# File 'lib/metric_fu/metrics/rcov/simplecov_formatter.rb', line 28

def default_coverage_file_path
  File.join(SimpleCov.root, "coverage", "rcov", output_file_name)
end

#format(result) ⇒ Object



16
17
18
19
20
# File 'lib/metric_fu/metrics/rcov/simplecov_formatter.rb', line 16

def format(result)
  rcov_text = FormatLikeRCov.new(result).format
  client = MetricFu::RCovTestCoverageClient.new(coverage_file_path)
  client.post_results(rcov_text)
end

#output_file_nameObject

Note:

legacy file name is ‘rcov.txt’ going forward, the file name will be in a date-stamped format like for all other reported metrics.

TODO: Read in from legacy coverage/rcov/rcov.txt path, when set write to date-specific report file, read from if present e.g.

MetricFu::Metric.get_metric(:rcov).run_options[:output_directory]
or
metric_directory = MetricFu::Io::FileSystem.scratch_directory('Ymd-coverage')
MetricFu::Utility.mkdir_p(metric_directory, :verbose => false)


42
43
44
# File 'lib/metric_fu/metrics/rcov/simplecov_formatter.rb', line 42

def output_file_name
  "rcov.txt"
end