Class: Roodi::Checks::CyclomaticComplexityMethodCheck

Inherits:
CyclomaticComplexityCheck show all
Defined in:
lib/roodi/checks/cyclomatic_complexity_method_check.rb

Instance Method Summary collapse

Methods inherited from Check

#add_error, #errors, #evaluate_node_at_line, #position

Constructor Details

#initialize(complexity = 8) ⇒ CyclomaticComplexityMethodCheck

Returns a new instance of CyclomaticComplexityMethodCheck.



6
7
8
# File 'lib/roodi/checks/cyclomatic_complexity_method_check.rb', line 6

def initialize(complexity = 8)
  super(complexity)
end

Instance Method Details

#evaluate(node) ⇒ Object



14
15
16
17
# File 'lib/roodi/checks/cyclomatic_complexity_method_check.rb', line 14

def evaluate(node)
  complexity = count_complexity(node)
  add_error "Method name \"#{node[1]}\" has a cyclomatic complexity is #{complexity}.  It should be #{@complexity} or less." unless complexity <= @complexity
end

#interesting_nodesObject



10
11
12
# File 'lib/roodi/checks/cyclomatic_complexity_method_check.rb', line 10

def interesting_nodes
  [:defn]
end