- let(:facts_d) do
- if fact('is_pe', '--puppet') == "true"
- if fact('osfamily') =~ /windows/i
- if fact('kernelmajversion').to_f < 6.0
- 'c:/documents and settings/all users/application data/puppetlabs/facter/facts.d'
- else
- 'c:/programdata/puppetlabs/facter/facts.d'
- end
- else
- '/etc/puppetlabs/facter/facts.d'
+ include_context 'with faked facts'
+ context "when the FQDN is 'fakehost.localdomain'" do
+ before :each do
+ fake_fact('fqdn', 'fakehost.localdomain')
+ end
+
+ pp1 = <<-PUPPETCODE
+ $l = 10
+ $o = fqdn_rand_string($l)
+ notice(inline_template('fqdn_rand_string is <%= @o.inspect %>'))
+ PUPPETCODE
+ it 'generates random alphanumeric strings' do
+ apply_manifest(pp1, :catch_failures => true) do |r|
+ expect(r.stdout).to match(%r{fqdn_rand_string is "(7oDp0KOr1b|9Acvnhkt4J)"})