Camino   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 21
Duplicated Lines 0 %

Test Coverage

Coverage 45.45%

Importance

Changes 0
Metric Value
dl 0
loc 21
ccs 5
cts 11
cp 0.4545
rs 10
c 0
b 0
f 0
wmc 4

4 Methods

Rating   Name   Duplication   Size   Complexity  
A img_path() 0 3 1
A conocidos() 0 6 1
A name() 0 3 1
A pasos() 0 3 1
1
# Los caminos de un heroe.
2 1
class Camino < Array
3 1
  def name
4
    first
5
  end
6
7 1
  def pasos
8
    last
9
  end
10
11
  # Es posible que este method sea muy pesado
12 1
  def conocidos
13
    n = heros.select(&:camino).map do |h| # Filtra los heroes sin camino
14
      h.id if h.camino.first == name      # Asocia el camino con el ID
15
    end
16
    n.compact # descarta los valores nil
17
  end
18
19 1
  def img_path
20
    "'../images/caminos/#{name}.png'"
21
  end
22
end
23
24
# YAML DB Loader
25 1
def caminos
26
  load_yaml('personaje/caminos')
27
end
28
29 1
def camino(nombre)
30
  caminos.find { |c| c.first == nombre }
31
end
32