Class: PreCommit::LocalCheck

Inherits:
Object
  • Object
show all
Defined in:
lib/pre-commit/checks/local_check.rb

Constant Summary collapse

DEFAULT_LOCATION =
"config/pre-commit.rb"

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#error_messageObject

Returns the value of attribute error_message.



7
8
9
# File 'lib/pre-commit/checks/local_check.rb', line 7

def error_message
  @error_message
end

Class Method Details

.call(quiet = false) ⇒ Object



9
10
11
12
13
14
# File 'lib/pre-commit/checks/local_check.rb', line 9

def self.call(quiet=false)
  check = new
  result = check.run(DEFAULT_LOCATION, Utils.staged_files("."))
  puts check.error_message if !result && !quiet
  result
end

Instance Method Details

#run(file, staged_files) ⇒ Object



16
17
18
19
20
21
22
23
24
25
# File 'lib/pre-commit/checks/local_check.rb', line 16

def run(file, staged_files)
  return true unless File.exist?(file)
  output = `ruby #{file} #{staged_files} 2>&1`
  if $?.success?
    true
  else
    self.error_message = "#{file} failed:\n#{output}"
    false
  end
end