From 653444bd0a52ba3d2e2a2d91cccb2e256fb61bf5 Mon Sep 17 00:00:00 2001 From: sathlan Date: Thu, 31 May 2012 14:31:43 +0200 Subject: Adding basic tests. Successfully tested inside rvm: - ruby 1.8.7-p302; - puppet (2.7.13) - facter (1.6.9) - bundler (1.1.3) - diff-lcs (1.1.3) - metaclass (0.0.1) - mocha (0.11.4) - puppet-lint (0.1.13) - rake (0.9.2.2) - rspec (2.8.0) - rspec-core (2.8.0) - rspec-expectations (2.8.0) - rspec-mocks (2.8.0) - rspec-puppet (0.1.3) - rubygems-bundler (1.0.2) - rvm (1.11.3.3) --- Rakefile | 14 ++++++++++++++ spec/defines/init_spec.rb | 21 +++++++++++++++++++++ spec/spec_helper.rb | 18 ++++++++++++++++++ 3 files changed, 53 insertions(+) create mode 100644 Rakefile create mode 100644 spec/defines/init_spec.rb create mode 100644 spec/spec_helper.rb diff --git a/Rakefile b/Rakefile new file mode 100644 index 0000000..8c2d56c --- /dev/null +++ b/Rakefile @@ -0,0 +1,14 @@ +#require 'rubygems' +require 'rake' +require 'rspec/core/rake_task' + +task :default => [:spec] + +desc "Run all module spec tests (Requires rspec-puppet gem)" +RSpec::Core::RakeTask.new(:spec) + +desc "Build package" +task :build do + system("puppet-module build") +end + diff --git a/spec/defines/init_spec.rb b/spec/defines/init_spec.rb new file mode 100644 index 0000000..038bde2 --- /dev/null +++ b/spec/defines/init_spec.rb @@ -0,0 +1,21 @@ +require 'spec_helper' + +describe 'concat' do +# basedir = '/var/lib/puppet/concat' + basedir = '/var/lib/puppet/concat' + let(:title) { '/etc/foo.bar' } + let(:facts) { { :concat_basedir => '/var/lib/puppet/concat' } } + let :pre_condition do + 'include concat::setup' + end + it { should contain_file("#{basedir}/_etc_foo.bar").with('ensure' => 'directory') } + it { should contain_file("#{basedir}/_etc_foo.bar/fragments").with('ensure' => 'directory') } + + it { should contain_file("#{basedir}/_etc_foo.bar/fragments.concat").with('ensure' => 'present') } + it { should contain_file("/etc/foo.bar").with('ensure' => 'present') } + it { should contain_exec("concat_/etc/foo.bar").with_command( + "#{basedir}/bin/concatfragments.sh "+ + "-o #{basedir}/_etc_foo.bar/fragments.concat.out "+ + "-d #{basedir}/_etc_foo.bar ") + } +end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb new file mode 100644 index 0000000..91e0064 --- /dev/null +++ b/spec/spec_helper.rb @@ -0,0 +1,18 @@ +require 'puppet' +require 'rspec' +require 'rspec-puppet' + +#def param_value(subject, type, title, param) +# subject.resource(type, title).send(:parameters)[param.to_sym] +#end +# +#def verify_contents(subject, title, expected_lines) +# content = subject.resource('file', title).send(:parameters)[:content] +# (content.split("\n") & expected_lines).should == expected_lines +#end + +RSpec.configure do |c| + c.module_path = File.expand_path(File.join(File.dirname(__FILE__), 'fixtures/modules/')) + # Using an empty site.pp file to avoid: https://github.com/rodjek/rspec-puppet/issues/15 + c.manifest_dir = File.expand_path(File.join(File.dirname(__FILE__), 'fixtures/manifests')) +end -- cgit v1.2.3 From 1fbe790b9aa086dab38846e7c454080dbe54da00 Mon Sep 17 00:00:00 2001 From: sathlan Date: Thu, 31 May 2012 14:42:49 +0200 Subject: Cleanup. --- Rakefile | 1 - spec/defines/init_spec.rb | 1 - spec/spec_helper.rb | 9 --------- 3 files changed, 11 deletions(-) diff --git a/Rakefile b/Rakefile index 8c2d56c..764aebd 100644 --- a/Rakefile +++ b/Rakefile @@ -1,4 +1,3 @@ -#require 'rubygems' require 'rake' require 'rspec/core/rake_task' diff --git a/spec/defines/init_spec.rb b/spec/defines/init_spec.rb index 038bde2..d968a26 100644 --- a/spec/defines/init_spec.rb +++ b/spec/defines/init_spec.rb @@ -1,7 +1,6 @@ require 'spec_helper' describe 'concat' do -# basedir = '/var/lib/puppet/concat' basedir = '/var/lib/puppet/concat' let(:title) { '/etc/foo.bar' } let(:facts) { { :concat_basedir => '/var/lib/puppet/concat' } } diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 91e0064..e6e9309 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -2,15 +2,6 @@ require 'puppet' require 'rspec' require 'rspec-puppet' -#def param_value(subject, type, title, param) -# subject.resource(type, title).send(:parameters)[param.to_sym] -#end -# -#def verify_contents(subject, title, expected_lines) -# content = subject.resource('file', title).send(:parameters)[:content] -# (content.split("\n") & expected_lines).should == expected_lines -#end - RSpec.configure do |c| c.module_path = File.expand_path(File.join(File.dirname(__FILE__), 'fixtures/modules/')) # Using an empty site.pp file to avoid: https://github.com/rodjek/rspec-puppet/issues/15 -- cgit v1.2.3