Module: Polyrun::SpecQuality::Fragment

Defined in:
lib/polyrun/spec_quality/fragment.rb

Class Method Summary collapse

Class Method Details

.append_row!(path, row) ⇒ Object



33
34
35
36
# File 'lib/polyrun/spec_quality/fragment.rb', line 33

def append_row!(path, row)
  ensure_fragment_dir!(path)
  File.open(path, "a") { |f| f.puts(JSON.generate(row)) }
end

.default_fragment_dirObject



16
17
18
# File 'lib/polyrun/spec_quality/fragment.rb', line 16

def default_fragment_dir
  File.join(Dir.pwd, "coverage")
end

.default_fragment_path(env = ENV) ⇒ Object



10
11
12
13
14
# File 'lib/polyrun/spec_quality/fragment.rb', line 10

def default_fragment_path(env = ENV)
  dir = env.fetch("POLYRUN_SPEC_QUALITY_FRAGMENT_DIR", default_fragment_dir)
  base = Polyrun::Coverage::CollectorFragmentMeta.fragment_default_basename_from_env(env)
  File.expand_path(File.join(dir, "polyrun-spec-quality-fragment-#{base}.jsonl"))
end

.ensure_fragment_dir!(path) ⇒ Object



24
25
26
# File 'lib/polyrun/spec_quality/fragment.rb', line 24

def ensure_fragment_dir!(path)
  FileUtils.mkdir_p(File.dirname(path))
end

.glob_pattern(cwd = Dir.pwd) ⇒ Object



20
21
22
# File 'lib/polyrun/spec_quality/fragment.rb', line 20

def glob_pattern(cwd = Dir.pwd)
  File.join(cwd, "coverage", "polyrun-spec-quality-fragment-*.jsonl")
end

.truncate_fragment!(path) ⇒ Object



28
29
30
31
# File 'lib/polyrun/spec_quality/fragment.rb', line 28

def truncate_fragment!(path)
  ensure_fragment_dir!(path)
  File.write(path, "")
end