I am trying to write unit tests of my puppet modules. In my
profiles::logstash::install, I disambiguate the call to
/etc/puppet/modules/logstash by using ::logstash in my class definition
like so:
class profiles::logstash::install() {
$ensure = $profiles::logstash::enable ? {true => present, default =>
absent}
$status = $profiles::logstash::start ? {true => enabled, default =>
disabled}
class { '::logstash':
ensure => $ensure,
status => $status,
version => $profiles::logstash::version
}
}
However, when I run my spec file:
require 'spec_helper'
describe "profiles::logstash" do
it { should contain_class("::logstash") }
it { should contain_class("profiles::logstash::install") }
it { should contain_class("profiles::logstash::config") }
end
I get the errors:
1) profiles::logstash
Failure/Error: it { should contain_class("::logstash") }
Puppet::Error:
Puppet::Parser::AST::Resource failed with error ArgumentError: Could
not find declared class ::logstash at
/etc/puppet/modules/profiles/spec/fixtures/modules/profiles/manifests/logstash/install.pp:10
on node els4167.els.dev
# ./spec/classes/logstash_spec.rb:4
2) profiles::logstash
Failure/Error: it { should
contain_class("profiles::logstash::install") }
Puppet::Error:
Puppet::Parser::AST::Resource failed with error ArgumentError: Could
not find declared class ::logstash at
/etc/puppet/modules/profiles/spec/fixtures/modules/profiles/manifests/logstash/install.pp:10
on node els4167.els.dev
# ./spec/classes/logstash_spec.rb:5
3) profiles::logstash
Failure/Error: it { should contain_class("profiles::logstash::config")
}
Puppet::Error:
Puppet::Parser::AST::Resource failed with error ArgumentError: Could
not find declared class ::logstash at
/etc/puppet/modules/profiles/spec/fixtures/modules/profiles/manifests/logstash/install.pp:10
on node els4167.els.dev
# ./spec/classes/logstash_spec.rb:6
How do I get rspec to find my class /etc/puppet/modules/logstash and get it
to reference ::logstash as a disambiguation?
--
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-users/a47b6fdb-519a-453c-92ec-40787c7d2470%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.