Class: Overcommit::HookContext::RunAll

Inherits:
Base
  • Object
show all
Defined in:
lib/overcommit/hook_context/run_all.rb

Overview

Simulates a pre-commit context pretending that all files have been changed.

This results in pre-commit hooks running against the entire repository, which is useful for automated CI scripts.

Instance Method Summary collapse

Methods inherited from Base

#all_files, #cleanup_environment, #execute_hook, #initialize, #input_lines, #input_string, #setup_environment

Constructor Details

This class inherits a constructor from Overcommit::HookContext::Base

Instance Method Details

#hook_class_nameObject



23
24
25
# File 'lib/overcommit/hook_context/run_all.rb', line 23

def hook_class_name
  'PreCommit'
end

#hook_script_nameObject



31
32
33
# File 'lib/overcommit/hook_context/run_all.rb', line 31

def hook_script_name
  'pre-commit'
end

#hook_type_nameObject



27
28
29
# File 'lib/overcommit/hook_context/run_all.rb', line 27

def hook_type_name
  'pre_commit'
end

#initial_commit?Boolean

Returns:

  • (Boolean)


35
36
37
38
# File 'lib/overcommit/hook_context/run_all.rb', line 35

def initial_commit?
  return @initial_commit unless @initial_commit.nil?
  @initial_commit = Overcommit::GitRepo.initial_commit?
end

#modified_filesObject



9
10
11
# File 'lib/overcommit/hook_context/run_all.rb', line 9

def modified_files
  @modified_files ||= all_files
end

#modified_lines_in_file(file) ⇒ Set

Returns all lines in the file since in this context the entire repo is being scrutinized.

Parameters:

  • file (String)

Returns:

  • (Set)


18
19
20
21
# File 'lib/overcommit/hook_context/run_all.rb', line 18

def modified_lines_in_file(file)
  @modified_lines_in_file ||= {}
  @modified_lines_in_file[file] ||= Set.new(1..count_lines(file))
end