Hi,
Does someone knows more rspec code examples for working with files ?
I stumbled across
https://github.com/puppetlabs/puppetlabs-inifile/blob/master/spec/unit/puppet/provider/ini_setting/ruby_spec.rb
,
but cannot find more examples, and struggling a bit in writing good
rspec tests for the following code snippet :
(intention is to read the uid from a yaml file for users)
require 'yaml'
module Puppet::Parser::Functions
newfunction(:lookup_uid, :type => :rvalue ) do |args|
# read the configuration file from puppets configuration dir
configfile = File.join([File.dirname(Puppet.settings[:config]),
'lookup_uid.yaml'])
raise(Puppet::ParseError, "lookup_uid configfile not readable")
unless File.exist?(configfile)
config = YAML.load_file(configfile)
# read the user yaml file
raise(Puppet::ParseError, "Could not load user mapping file
(#{config['user_file']}") unless File.exists?(config['user_file'])
# Lookup the uid, and convert it to an integer
users = YAML.load_file(config['user_file'])
uid = users.fetch(args[0], ifnone = nil)
raise(Puppet::ParseError, "#{args[0]} user not found in
#{config['user_file']}") unless uid
uid.to_int
end
end
Thxs
johan
--
Johan De Wit
Open Source Consultant
Red Hat Certified Engineer (805008667232363)
Puppet Certified Professional 2013/2014 (PCP0000006)
_________________________________________________________
Open-Future Phone +32 (0)2/255 70 70
Zavelstraat 72 Fax +32 (0)2/255 70 71
3071 KORTENBERG Mobile +32 (0)474/42 40 73
BELGIUM http://www.open-future.be
_________________________________________________________
Next Events:
Linux Training | https://www.open-future.be/linux-training-8-till-12th-september
Puppet Introduction Course |
https://www.open-future.be/puppet-introduction-course-15th-september
Puppet Fundamentals Training | https://www.open-future.be/puppet-fundamentals-training-16-till-18th-september
Zabbix Certified Specialist | https://www.open-future.be/zabbix-certified-specialisttraining-22-till-24th-september
Zabbix Certified Professional |
https://www.open-future.be/zabbix-certified-professional-training-25-till-26th-september
Subscribe to our newsletter | http://eepurl.com/BUG8H
--
You received this message because you are subscribed to the Google Groups "Puppet
Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to puppet-dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-dev/53D248D8.9020304%40open-future.be.
For more options, visit https://groups.google.com/d/optout.