summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Rakefile14
-rw-r--r--spec/defines/init_spec.rb21
-rw-r--r--spec/spec_helper.rb18
3 files changed, 53 insertions, 0 deletions
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