class Clerq::Services::CheckAssembly

Find errors in hierarchy and prints in console

Public Class Methods

new(node) click to toggle source
# File lib/clerq/services/check_assembly.rb, line 102
def initialize(node)
  @node = node
end

Public Instance Methods

call() click to toggle source
# File lib/clerq/services/check_assembly.rb, line 13
def call
  print_nonuniq_id
  print_lost_roots
  print_lost_index
  print_lost_links
end

Protected Instance Methods

how_many_times(n) click to toggle source

humanize number of how many times the error occurred in one file

# File lib/clerq/services/check_assembly.rb, line 94
def how_many_times(n)
  case n
  when 1 then 'once'
  when 2 then 'twice'
  else "#{n} times"
  end
end
nonuniq_id() click to toggle source
# File lib/clerq/services/check_assembly.rb, line 22
def nonuniq_id
  @node.inject({}) do |memo, node|
    memo[node.id] ||= []
    memo[node.id] << node
    memo
  end.select{|_, v| v.size > 1}
end
print_lost_index() click to toggle source
print_lost_roots() click to toggle source
print_nonuniq_id() click to toggle source