From a7c41208cc4a6e9b543487bf606b551307fdc05a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rapha=C3=ABl=20Pinson?= Date: Fri, 15 Mar 2013 21:53:17 +0100 Subject: Add spec/defines/augeas_lens_spec.rb --- spec/defines/augeas_lens_spec.rb | 68 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 spec/defines/augeas_lens_spec.rb (limited to 'spec/defines') diff --git a/spec/defines/augeas_lens_spec.rb b/spec/defines/augeas_lens_spec.rb new file mode 100644 index 0000000..57d30b6 --- /dev/null +++ b/spec/defines/augeas_lens_spec.rb @@ -0,0 +1,68 @@ +require 'spec_helper' + +describe 'augeas::lens' do + let (:title) { 'foo' } + let (:facts) { { + :osfamily => 'RedHat', + } } + context 'when no lens_source is passed' do + it 'should error' do + expect { + should contain_file('/usr/share/augeas/lenses/foo.aug') + }.to raise_error(Puppet::Error, /Must pass lens_source/) + end + end + + context 'when lens_source is passed' do + let (:params) { { + :lens_source => '/tmp/foo.aug', + } } + + it { should contain_file('/usr/share/augeas/lenses/foo.aug') } + it { should contain_exec('Typecheck lens foo') } + it { should_not contain_file('/usr/share/augeas/lenses/tests/test_foo.aug') } + it { should_not contain_exec('Test lens foo') } + end + + context 'when lens_source and test_source are passed' do + let (:params) { { + :lens_source => '/tmp/foo.aug', + :test_source => '/tmp/test_foo.aug', + } } + + it { should contain_file('/usr/share/augeas/lenses/foo.aug') } + it { should contain_exec('Typecheck lens foo') } + it { should contain_file('/usr/share/augeas/lenses/tests/test_foo.aug') } + it { should contain_exec('Test lens foo') } + end + + context 'when stock_since is passed and augeas is older' do + let (:params) { { + :lens_source => '/tmp/foo.aug', + :stock_since => '1.2.3', + } } + + let (:facts) { { + :osfamily => 'RedHat', + :augeasversion => '1.0.0', + } } + + it { should contain_file('/usr/share/augeas/lenses/foo.aug') } + it { should contain_exec('Typecheck lens foo') } + end + + context 'when stock_since is passed and augeas is newer' do + let (:params) { { + :lens_source => '/tmp/foo.aug', + :stock_since => '1.2.3', + } } + + let (:facts) { { + :osfamily => 'RedHat', + :augeasversion => '1.5.0', + } } + + it { should_not contain_file('/usr/share/augeas/lenses/foo.aug') } + it { should_not contain_exec('Typecheck lens foo') } + end +end -- cgit v1.2.3