Class: SandiMeter::RulesChecker
- Inherits:
-
Object
- Object
- SandiMeter::RulesChecker
- Defined in:
- lib/sandi_meter/rules_checker.rb
Instance Method Summary collapse
-
#initialize(data, config) ⇒ RulesChecker
constructor
A new instance of RulesChecker.
- #ok? ⇒ Boolean
Constructor Details
#initialize(data, config) ⇒ RulesChecker
Returns a new instance of RulesChecker.
3 4 5 6 7 8 9 10 |
# File 'lib/sandi_meter/rules_checker.rb', line 3 def initialize(data, config) @config = config @rules = [] @rules << percentage(data[:first_rule][:small_classes_amount], data[:first_rule][:total_classes_amount]) @rules << percentage(data[:second_rule][:small_methods_amount], data[:second_rule][:total_methods_amount]) @rules << percentage(data[:third_rule][:proper_method_calls], data[:third_rule][:total_method_calls]) @rules << percentage(data[:fourth_rule][:proper_controllers_amount], data[:fourth_rule][:total_controllers_amount]) end |
Instance Method Details
#ok? ⇒ Boolean
12 13 14 15 16 17 18 19 20 |
# File 'lib/sandi_meter/rules_checker.rb', line 12 def ok? if @config[:threshold] puts "DEPRECATION WARNING: sandi_meter threshold will be deprecated. Set thresholds for each rule in sandi_meter config.yml" @rules.reduce(:+) / 4 > @config[:threshold] elsif @config[:thresholds] @rules.each_with_index.map { |percentage, index| percentage >= @config[:thresholds][index].to_f }.reduce(:&) end end |