On 6/4/14, 3:13 PM, Brian Wilkins wrote:
> I think you missed the part where it is complaining about line 10 in my
> profiles::logstash::install module
>
> class { '::logstash':
>
> Removing ::logstash from the spec file has the same complaint.
>
> Brian
>
> On Wednesday, June 4, 2014 3:11:14 PM UTC-4, Garrett Honeycutt wrote:
>
> On 6/4/14, 2:30 PM, Brian Wilkins wrote:
> > 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?
>
> Hi Brian,
>
> Using ::class is not needed and should not be done. If you still
> want to
> do that in your class, try changing the spec by dropping the preceding
> double colons.
>
> Best regards,
> -g
>
> --
> Garrett Honeycutt
> @learnpuppet
> Puppet Training with LearnPuppet.com
> Mobile: +1.206.414.8658
>
Hi Brian,
Recommend dropping the preceding double colons all around. It is not
needed at all.
Br,
-g
--
Garrett Honeycutt
@learnpuppet
Puppet Training with LearnPuppet.com
Mobile: +1.206.414.8658
--
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/538F78D3.8050806%40garretthoneycutt.com.
For more options, visit https://groups.google.com/d/optout.