Class: ChurnVsComplexity::Delta::Checker
- Inherits:
-
Object
- Object
- ChurnVsComplexity::Delta::Checker
- Defined in:
- lib/churn_vs_complexity/delta/checker.rb
Instance Method Summary collapse
- #check(folder:) ⇒ Object
-
#initialize(serializer:, factory:, commit:, language:, excluded:, data_isolation_id: 0) ⇒ Checker
constructor
A new instance of Checker.
Constructor Details
#initialize(serializer:, factory:, commit:, language:, excluded:, data_isolation_id: 0) ⇒ Checker
Returns a new instance of Checker.
6 7 8 9 10 11 12 13 |
# File 'lib/churn_vs_complexity/delta/checker.rb', line 6 def initialize(serializer:, factory:, commit:, language:, excluded:, data_isolation_id: 0) @serializer = serializer @excluded = excluded @factory = factory @commit = commit @language = language @data_isolation_id = data_isolation_id end |
Instance Method Details
#check(folder:) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/churn_vs_complexity/delta/checker.rb', line 15 def check(folder:) raise Error, 'Invalid commit' unless valid_commit?(folder:) worktree = setup_worktree(folder:) changes = @factory.git_strategy(folder: worktree.folder).changes(commit: @commit) result = commit_summary(folder:) unless changes.empty? ComplexityAnnotator.new(factory: @factory, changes:) .enhance(worktree_folder: worktree.folder, language: @language, excluded: @excluded, commit: @commit) result[:changes] = changes end @serializer.serialize(result) end |