Class: Health::Checker

Inherits:
Object
  • Object
show all
Defined in:
lib/health/checker.rb

Instance Method Summary collapse

Instance Method Details

#check(name_or_object, &block) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/health/checker.rb', line 11

def check(name_or_object, &block)
  if name_or_object.respond_to?(:call)
    checks[name_or_object.name] = name_or_object
  else
    checks[name_or_object] = block
  end
end

#checksObject



3
4
5
# File 'lib/health/checker.rb', line 3

def checks
  @checks ||= {}
end

#configure(&block) ⇒ Object



7
8
9
# File 'lib/health/checker.rb', line 7

def configure(&block)
  instance_eval(&block)
end

#namesObject



19
20
21
# File 'lib/health/checker.rb', line 19

def names
  checks.keys
end

#perform(name) ⇒ Object



23
24
25
26
27
# File 'lib/health/checker.rb', line 23

def perform(name)
  checks[name.to_sym].call.tap do |result|
    assert_necessary_keys(result)
  end
end