class RSpec::Puppet::FacterTestImpl
Implements a simple hash-based version of Facter to be used in module tests that use rspec-puppet.
Public Class Methods
new()
click to toggle source
# File lib/rspec-puppet/facter_impl.rb, line 7 def initialize @facts = {} end
Public Instance Methods
add(name, _options = {}, &block)
click to toggle source
# File lib/rspec-puppet/facter_impl.rb, line 25 def add(name, _options = {}, &block) raise 'Facter.add expects a block' unless block @facts[name.to_s] = instance_eval(&block) end
clear()
click to toggle source
# File lib/rspec-puppet/facter_impl.rb, line 17 def clear @facts.clear end
debugging(arg)
click to toggle source
noop methods
# File lib/rspec-puppet/facter_impl.rb, line 32 def debugging(arg); end
reset()
click to toggle source
# File lib/rspec-puppet/facter_impl.rb, line 34 def reset; end
search(*paths)
click to toggle source
# File lib/rspec-puppet/facter_impl.rb, line 36 def search(*paths); end
setup_logging()
click to toggle source
# File lib/rspec-puppet/facter_impl.rb, line 38 def setup_logging; end
to_hash()
click to toggle source
# File lib/rspec-puppet/facter_impl.rb, line 21 def to_hash @facts end
value(fact_name)
click to toggle source
# File lib/rspec-puppet/facter_impl.rb, line 11 def value(fact_name) @facts.dig(*fact_name.to_s.split('.')) rescue TypeError nil end
Private Instance Methods
setcode(string = nil) { || ... }
click to toggle source
# File lib/rspec-puppet/facter_impl.rb, line 42 def setcode(string = nil, &block) if block yield else string end end