module Undercover::CLI

Constants

WARNINGS_TO_S

TODO: Report calls >parser< for each file instead of traversing the whole project at first!

Public Class Methods

changeset(opts) click to toggle source
# File lib/undercover/cli.rb, line 45
def self.changeset(opts)
  git_dir = File.join(opts.path, opts.git_dir)
  Undercover::Changeset.new(git_dir, opts.compare)
end
run(args) click to toggle source
# File lib/undercover/cli.rb, line 17
def self.run(args)
  opts = Undercover::Options.new.parse(args)
  syntax_version(opts.syntax_version)

  run_report(opts)
end
run_report(opts) click to toggle source

rubocop:enable

# File lib/undercover/cli.rb, line 25
def self.run_report(opts)
  report = Undercover::Report.new(changeset(opts), opts).build

  error = report.validate(opts.lcov)
  if error
    puts(WARNINGS_TO_S[error])
    return 0 if error == :no_changes
  end

  flagged = report.flagged_results
  puts Undercover::Formatter.new(flagged)
  flagged.any? ? 1 : 0
end
syntax_version(version) click to toggle source
# File lib/undercover/cli.rb, line 39
def self.syntax_version(version)
  return unless version

  Imagen.parser_version = version
end