Class: Polyrun::Coverage::Formatter::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/polyrun/coverage/formatter.rb

Overview

Base: subclasses implement #write_files(result, output_dir, basename) returning { key => path }.

Instance Method Summary collapse

Constructor Details

#initialize(output_dir: nil, basename: "polyrun-coverage") ⇒ Base

Returns a new instance of Base.



36
37
38
39
# File 'lib/polyrun/coverage/formatter.rb', line 36

def initialize(output_dir: nil, basename: "polyrun-coverage")
  @default_output_dir = output_dir
  @default_basename = basename
end

Instance Method Details

#format(result, output_dir: @default_output_dir, basename: @default_basename) ⇒ Object

Raises:

  • (ArgumentError)


41
42
43
44
45
46
47
48
# File 'lib/polyrun/coverage/formatter.rb', line 41

def format(result, output_dir: @default_output_dir, basename: @default_basename)
  od = output_dir
  raise ArgumentError, "#{self.class}: output_dir is required" if od.nil? || od.to_s.empty?

  bn = basename || "polyrun-coverage"
  FileUtils.mkdir_p(od)
  write_files(result, od.to_s, bn.to_s)
end

#write_files(_result, _output_dir, _basename) ⇒ Object

Raises:

  • (NotImplementedError)


50
51
52
# File 'lib/polyrun/coverage/formatter.rb', line 50

def write_files(_result, _output_dir, _basename)
  raise NotImplementedError
end