So, rspec-puppet can't and won't ever work this way.  What it's testing is the 
resulting catalogue of Puppet resources that your host executes (the behaviour 
of Puppet).  Instead of testing that a variable is defined, you should be 
testing the resource(s) that those variables control/adjust.

For example, if your variable changes the templated contents of a file 
resource, then you should be testing the contents of that file resource. 


On Monday, 23 April 2012 at 10:06 AM, Craig Dunn wrote:

> On 23/04/2012 16:51, Shantanu wrote:
> > 
> > I have a module in which parameterized classes inherit regular (non-
> > parameterized) 'params' class. I am writing RSpec tests for this
> > module and would like to make sure that required variables have been
> > declared in the params class. Also, is it possible to write RSpec test
> > to make sure that these variables/parameters are accepted by the
> > required parameterized classes? Any pointers will be really helpful.
> > 
> 
> 
> Funnily enough I was asking a similar thing on IRC the other day but 
> didn't get much luck. We're implementing Hiera across modules that 
> require significant amounts of variables. We have a lot of environments 
> (>20) and we often get problems where someone introduces a new variable, 
> adds it to a template and tests it in dev but dont add a default, or add 
> it to each environment, therefore catalog compilation fails in non-dev 
> environments.
> 
> Ideally I'd like to be able to catch this with rspec-puppet but can't 
> see an easy way to say "class bar should have variable foo and it 
> shouldn't be undefined", or something when sourcing variables from other 
> classes or hiera.
> 
> Craig
> 
> -- 
> Craig Dunn | http://www.craigdunn.org
> Yahoo/Skype: craigrdunn | Twitter: @crayfishX
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Puppet Users" group.
> To post to this group, send email to puppet-users@googlegroups.com 
> (mailto:puppet-users@googlegroups.com).
> To unsubscribe from this group, send email to 
> puppet-users+unsubscr...@googlegroups.com 
> (mailto:puppet-users+unsubscr...@googlegroups.com).
> For more options, visit this group at 
> http://groups.google.com/group/puppet-users?hl=en.
> 
> 


-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to