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)
This commit is contained in:
sathlan 2012-05-31 14:31:43 +02:00
parent 52d5f36c75
commit 653444bd0a
3 changed files with 53 additions and 0 deletions

14
Rakefile Normal file
View file

@ -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

21
spec/defines/init_spec.rb Normal file
View file

@ -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

18
spec/spec_helper.rb Normal file
View file

@ -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