Module: NodeSpec::RuntimeGemLoader

Defined in:
lib/nodespec/runtime_gem_loader.rb

Constant Summary collapse

DEFAULT_ERROR_MSG =
'Consider installing the missing gem'

Class Method Summary collapse

Class Method Details

.require_or_fail(gem_name, error_message = nil) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/nodespec/runtime_gem_loader.rb', line 4

def self.require_or_fail(gem_name, error_message = nil)
begin
  require gem_name
    yield if block_given?
rescue LoadError => e
  err = "Error: \#{e.message}\n\#{error_message || DEFAULT_ERROR_MSG}\n\ngem install '\#{gem_name}'\n"
  fail(err)
  end
end