Class: ChurnVsComplexity::Engine
- Inherits:
-
Object
- Object
- ChurnVsComplexity::Engine
- Defined in:
- lib/churn_vs_complexity/engine.rb
Class Method Summary collapse
Instance Method Summary collapse
- #check(folder:) ⇒ Object
-
#initialize(file_selector:, calculator:, serializer:, since:) ⇒ Engine
constructor
A new instance of Engine.
Constructor Details
#initialize(file_selector:, calculator:, serializer:, since:) ⇒ Engine
Returns a new instance of Engine.
5 6 7 8 9 10 |
# File 'lib/churn_vs_complexity/engine.rb', line 5 def initialize(file_selector:, calculator:, serializer:, since:) @file_selector = file_selector @calculator = calculator @serializer = serializer @since = since end |
Class Method Details
.concurrent(since:, complexity:, churn:, serializer: Normal::Serializer::None, file_selector: FileSelector::Any) ⇒ Object
18 19 20 |
# File 'lib/churn_vs_complexity/engine.rb', line 18 def self.concurrent(since:, complexity:, churn:, serializer: Normal::Serializer::None, file_selector: FileSelector::Any) Engine.new(since:, file_selector:, serializer:, calculator: ConcurrentCalculator.new(complexity:, churn:)) end |
Instance Method Details
#check(folder:) ⇒ Object
12 13 14 15 16 |
# File 'lib/churn_vs_complexity/engine.rb', line 12 def check(folder:) files = @file_selector.select_files(folder) result = @calculator.calculate(folder:, files:, since: @since) @serializer.serialize(result) end |