I have a puppet module that I am not sure hot to write a test for: Example
below:
class appsuite (
$param1,
$param2,
$param3,
$param4,
) {
include appsuite::params
include appsuite::repo
include appsuite::preconfig
}
#nothing in params, repo or preconfig really matter, other then preconfig
lays down a shared settings file: /etc/appsuite/settings
# /etc/appsuite/settings is required to be in place during the install of
any component of appsuite as it is sued to do its own setup.
So then I have a seperate class
class appsuite::component1 (
$component_param1,
$component_param2,
) {
...
package { 'component1': ensure => installed }
...
}
Now, class appsuite::component1 requires appsuite to be defined and all
those classes to be ran before it starts all it's magic. How do I test
that?
I got this
describe 'appsuite' do
context "test appsuite" do
let :params do {
param1 = 'blah1',
param2 = 'blah2',
param3 = 'blah3',
param4 = 'blah4',
}
end
it { is_expected.to contain_file('/etc/appsuite/settings').with({'mode'
=> '0644'}) }
end
end
Now the above works fine, but I do not understand how to then call
appsuite::component1 from that test with those parameters, I tried
nesting in the descibe, but it then says i need to pass params to
appsuite. Seems like this would be a pretty common thing to do so I hope I
am just missing something.
Any ideas?
Thanks
Trey
--
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/9f1a987b-a9d6-4f8a-befa-187c72d6d797%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.