It is needed to disambiguate from profiles::logstash and just logstash 
classes. If I remove it, then it will complain that logstash is already 
loaded when it tries to load profiles::logstash.

On Wednesday, June 4, 2014 3:52:01 PM UTC-4, Garrett Honeycutt wrote:
>
> 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/141ee867-2464-4187-9e55-5aab364c1700%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to