Class: ChurnVsComplexity::Normal::Config
- Inherits:
-
Object
- Object
- ChurnVsComplexity::Normal::Config
- Defined in:
- lib/churn_vs_complexity/normal/config.rb
Instance Method Summary collapse
- #checker ⇒ Object
-
#initialize(language:, serializer:, excluded: [], since: nil, relative_period: nil, complexity_validator: ComplexityValidator, since_validator: SinceValidator, **options) ⇒ Config
constructor
A new instance of Config.
- #validate! ⇒ Object
Constructor Details
#initialize(language:, serializer:, excluded: [], since: nil, relative_period: nil, complexity_validator: ComplexityValidator, since_validator: SinceValidator, **options) ⇒ Config
Returns a new instance of Config.
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/churn_vs_complexity/normal/config.rb', line 6 def initialize( language:, serializer:, excluded: [], since: nil, relative_period: nil, complexity_validator: ComplexityValidator, since_validator: SinceValidator, ** ) @language = language @serializer = serializer @excluded = excluded @since = since @relative_period = relative_period @complexity_validator = complexity_validator @since_validator = since_validator @options = end |
Instance Method Details
#checker ⇒ Object
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/churn_vs_complexity/normal/config.rb', line 36 def checker case @language when :java Engine.concurrent( complexity: Complexity::PMD::FolderCalculator, churn:, file_selector: FileSelector::Java.excluding(@excluded), serializer:, since: @since || @relative_period, ) when :ruby Engine.concurrent( complexity: Complexity::FlogCalculator, churn:, file_selector: FileSelector::Ruby.excluding(@excluded), serializer:, since: @since || @relative_period, ) when :javascript Engine.concurrent( complexity: Complexity::ESLintCalculator, churn:, file_selector: FileSelector::JavaScript.excluding(@excluded), serializer:, since: @since || @relative_period, ) end end |
#validate! ⇒ Object
26 27 28 29 30 31 32 33 34 |
# File 'lib/churn_vs_complexity/normal/config.rb', line 26 def validate! LanguageValidator.validate!(@language) SerializerValidator.validate!(serializer: @serializer) @since_validator.validate!(since: @since, relative_period: @relative_period) RelativePeriodValidator.validate!(relative_period: @relative_period) @complexity_validator.validate!(@language) end |