Class: Overcommit::MessageProcessor
- Inherits:
-
Object
- Object
- Overcommit::MessageProcessor
- Defined in:
- lib/overcommit/message_processor.rb
Overview
Utility class that encapsulates the handling of hook messages and whether they affect lines the user has modified or not.
This class exposes an endpoint that extracts an appropriate hook/status output tuple from an array of Hook::Messages, respecting the configuration settings for the given hook.
Constant Summary collapse
- ERRORS_MODIFIED_HEADER =
'Errors on modified lines:'
- WARNINGS_MODIFIED_HEADER =
'Warnings on modified lines:'
- ERRORS_UNMODIFIED_HEADER =
"Errors on lines you didn't modify:"
- WARNINGS_UNMODIFIED_HEADER =
"Warnings on lines you didn't modify:"
Instance Method Summary collapse
-
#hook_result(messages) ⇒ Array<Symbol,String>
Returns a hook status/output tuple from the messages this processor was initialized with.
-
#initialize(hook, unmodified_lines_setting) ⇒ MessageProcessor
constructor
A new instance of MessageProcessor.
Constructor Details
#initialize(hook, unmodified_lines_setting) ⇒ MessageProcessor
Returns a new instance of MessageProcessor.
17 18 19 20 |
# File 'lib/overcommit/message_processor.rb', line 17 def initialize(hook, unmodified_lines_setting) @hook = hook @setting = unmodified_lines_setting end |
Instance Method Details
#hook_result(messages) ⇒ Array<Symbol,String>
Returns a hook status/output tuple from the messages this processor was initialized with.
26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/overcommit/message_processor.rb', line 26 def hook_result() status, output = basic_status_and_output() # Nothing to do if there are no problems to begin with return [status, output] if status == :pass # Return as-is if this type of hook doesn't have the concept of modified lines return [status, output] unless @hook.respond_to?(:modified_lines_in_file) handle_modified_lines(, status) end |