Update stdlib and concat to 6.1.0 both
[mirror/dsa-puppet.git] / 3rdparty / modules / concat / spec / unit / defines / concat_spec.rb
diff --git a/3rdparty/modules/concat/spec/unit/defines/concat_spec.rb b/3rdparty/modules/concat/spec/unit/defines/concat_spec.rb
deleted file mode 100644 (file)
index ca698af..0000000
+++ /dev/null
@@ -1,355 +0,0 @@
-require 'spec_helper'
-
-describe 'concat', :type => :define do
-
-  shared_examples 'concat' do |title, params, id|
-    params = {} if params.nil?
-    id = 'root' if id.nil?
-
-    # default param values
-    p = {
-      :ensure         => 'present',
-      :path           => title,
-      :owner          => nil,
-      :group          => nil,
-      :mode           => '0644',
-      :warn           => false,
-      :backup         => 'puppet',
-      :replace        => true,
-    }.merge(params)
-
-    file_defaults = {
-      :backup  => p[:backup],
-    }
-
-    let(:title) { title }
-    let(:params) { params }
-    let(:facts) do
-      {
-        :id             => id,
-        :osfamily       => 'Debian',
-        :path           => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
-        :kernel         => 'Linux',
-        :is_pe          => false,
-      }
-    end
-
-    if p[:ensure] == 'present'
-      it do
-        should contain_concat(title).with(file_defaults.merge({
-          :ensure                  => 'present',
-          :owner                   => p[:owner],
-          :group                   => p[:group],
-          :mode                    => p[:mode],
-          :path                    => p[:path],
-          :backup                  => p[:backup],
-          :replace                 => p[:replace],
-          :selinux_ignore_defaults => p[:selinux_ignore_defaults],
-          :selrange                => p[:selrange],
-          :selrole                 => p[:selrole],
-          :seltype                 => p[:seltype],
-          :seluser                 => p[:seluser],
-        }))
-      end
-    else
-      it do
-        should contain_concat(title).with(file_defaults.merge({
-          :ensure => 'absent',
-          :backup => p[:backup],
-        }))
-      end
-    end
-  end
-
-  context 'title' do
-    context 'without path param' do
-      # title/name is the default value for the path param. therefore, the
-      # title must be an absolute path unless path is specified
-      ['/foo', '/foo/bar', '/foo/bar/baz'].each do |title|
-        context title do
-          it_behaves_like 'concat', '/etc/foo.bar'
-        end
-      end
-
-      ['./foo', 'foo', 'foo/bar'].each do |title|
-        context title do
-          let(:title) { title }
-          it 'should fail' do
-            expect { catalogue }.to raise_error(Puppet::Error, /Stdlib::Unixpath/)
-          end
-        end
-      end
-    end
-
-    context 'with path param' do
-      ['/foo', 'foo', 'foo/bar'].each do |title|
-        context title do
-          it_behaves_like 'concat', title, { :path => '/etc/foo.bar' }
-        end
-      end
-    end
-
-    context 'with special characters in title' do
-      ['foo:bar', 'foo*bar', 'foo(bar)', 'foo@bar'].each do |title|
-        context title do
-          it_behaves_like 'concat', title, { :path => '/etc/foo.bar' }
-        end
-      end
-    end
-  end # title =>
-
-  context 'as non-root user' do
-    it_behaves_like 'concat', '/etc/foo.bar', {}, 'bob'
-  end
-
-  context 'ensure =>' do
-    ['present', 'absent'].each do |ens|
-      context ens do
-        it_behaves_like 'concat', '/etc/foo.bar', { :ensure => ens }
-      end
-    end
-
-    context 'invalid' do
-      let(:title) { '/etc/foo.bar' }
-      let(:params) {{ :ensure => 'invalid' }}
-      it 'should fail' do
-        expect { catalogue }.to raise_error(Puppet::Error, /expects a match for Enum\['absent', 'present'\]/)
-      end
-    end
-  end # ensure =>
-
-  context 'path =>' do
-    context '/foo' do
-      it_behaves_like 'concat', '/etc/foo.bar', { :path => '/foo' }
-    end
-
-    context 'false' do
-      let(:title) { '/etc/foo.bar' }
-      let(:params) {{ :path => false }}
-      it 'should fail' do
-        expect { catalogue }.to raise_error(Puppet::Error, /Stdlib::Unixpath/)
-      end
-    end
-
-    ['./foo', 'foo', 'foo/bar'].each do |path|
-      context path do
-        let(:title) { '/etc/foo.bar' }
-        let(:params) {{ :path => path }}
-        it 'should fail' do
-          expect { catalogue }.to raise_error(Puppet::Error, /Stdlib::Unixpath/)
-        end
-      end
-    end
-  end # path =>
-
-  context 'owner =>' do
-    ['apenney',1000,'1001'].each do |owner|
-      context owner do
-        it_behaves_like 'concat', '/etc/foo.bar', { :owner => owner }
-      end
-    end
-
-    context 'false' do
-      let(:title) { '/etc/foo.bar' }
-      let(:params) {{ :owner => false }}
-      it 'should fail' do
-        expect { catalogue }.to raise_error(Puppet::Error, /Evaluation Error.*expects.*String.*Boolean.*/)
-      end
-    end
-  end # owner =>
-
-  context 'group =>' do
-    ['apenney',1000,'1001'].each do |group|
-      context group do
-        it_behaves_like 'concat', '/etc/foo.bar', { :group => group }
-      end
-    end
-
-    context 'false' do
-      let(:title) { '/etc/foo.bar' }
-      let(:params) {{ :group => false }}
-      it 'should fail' do
-        expect { catalogue }.to raise_error(Puppet::Error, /Evaluation Error.*expects.*String.*Boolean.*/)
-      end
-    end
-  end # group =>
-
-  context 'mode =>' do
-    context '1755' do
-      it_behaves_like 'concat', '/etc/foo.bar', { :mode => '1755' }
-    end
-
-    context 'false' do
-      let(:title) { '/etc/foo.bar' }
-      let(:params) {{ :mode => false }}
-      it 'should fail' do
-        expect { catalogue }.to raise_error(Puppet::Error, /parameter 'mode' expects .*String.*/)
-      end
-    end
-  end # mode =>
-
-  context 'warn =>' do
-    [true, false, '# foo'].each do |warn|
-      context warn do
-        it_behaves_like 'concat', '/etc/foo.bar', { :warn => warn }
-      end
-    end
-
-    context '(stringified boolean)' do
-      ['true', 'yes', 'on', 'false', 'no', 'off'].each do |warn|
-        context warn do
-          it_behaves_like 'concat', '/etc/foo.bar', { :warn => warn }
-
-          it 'should create a warning' do
-            skip('rspec-puppet support for testing warning()')
-          end
-        end
-      end
-    end
-
-    context '123' do
-      let(:title) { '/etc/foo.bar' }
-      let(:params) {{ :warn => 123 }}
-      it 'should fail' do
-        expect { catalogue }.to raise_error(Puppet::Error, /parameter 'warn' expects .*Boolean.*String.*/)
-      end
-    end
-  end # warn =>
-
-  context 'show_diff =>' do
-    [true, false].each do |show_diff|
-      context show_diff do
-        it_behaves_like 'concat', '/etc/foo.bar', { :show_diff => show_diff }
-      end
-    end
-
-    context '123' do
-      let(:title) { '/etc/foo.bar' }
-      let(:params) {{ :show_diff => 123 }}
-      it 'should fail' do
-        expect { catalogue }.to raise_error(Puppet::Error, /parameter 'show_diff' expects .*Boolean.*/)
-      end
-    end
-  end # show_diff =>
-
-  context 'backup =>' do
-    ['reverse',false,true].each do |backup|
-      context "#{backup}" do
-        it_behaves_like 'concat', '/etc/foo.bar', { :backup => backup }
-      end
-    end
-
-    context 'true' do
-      let(:title) { '/etc/foo.bar' }
-      let(:params) {{ :backup => [] }}
-      it 'should fail' do
-        expect { catalogue }.to raise_error(Puppet::Error, /parameter 'backup' expects .*Boolean.*String.*/)
-      end
-    end
-  end # backup =>
-
-  context 'replace =>' do
-    [true, false].each do |replace|
-      context replace do
-        it_behaves_like 'concat', '/etc/foo.bar', { :replace => replace }
-      end
-    end
-
-    context '123' do
-      let(:title) { '/etc/foo.bar' }
-      let(:params) {{ :replace => 123 }}
-      it 'should fail' do
-        expect { catalogue }.to raise_error(Puppet::Error, /parameter 'replace' expects .*Boolean.*/)
-      end
-    end
-  end # replace =>
-
-  context 'order =>' do
-    ['alpha', 'numeric'].each do |order|
-      context order do
-        it_behaves_like 'concat', '/etc/foo.bar', { :order => order }
-      end
-    end
-
-    context 'invalid' do
-      let(:title) { '/etc/foo.bar' }
-      let(:params) {{ :order => 'invalid' }}
-      it 'should fail' do
-        expect { catalogue }.to raise_error(Puppet::Error, /expects a match for Enum\['alpha', 'numeric'\]/)
-      end
-    end
-  end # order =>
-
-  context 'ensure_newline =>' do
-    [true, false].each do |ensure_newline|
-      context 'true' do
-        it_behaves_like 'concat', '/etc/foo.bar', { :ensure_newline => ensure_newline}
-      end
-    end
-
-    context '123' do
-      let(:title) { '/etc/foo.bar' }
-      let(:params) {{ :ensure_newline => 123 }}
-      it 'should fail' do
-        expect { catalogue }.to raise_error(Puppet::Error, /parameter 'ensure_newline' expects a Boolean value/)
-      end
-    end
-  end # ensure_newline =>
-
-  context 'validate_cmd =>' do
-    context '/usr/bin/test -e %' do
-      it_behaves_like 'concat', '/etc/foo.bar', { :validate_cmd => '/usr/bin/test -e %' }
-    end
-
-    [ 1234, true ].each do |cmd|
-      context cmd do
-        let(:title) { '/etc/foo.bar' }
-        let(:params) {{ :validate_cmd => cmd }}
-        it 'should fail' do
-          expect { catalogue }.to raise_error(Puppet::Error, /parameter 'validate_cmd' expects.*String.*/)
-        end
-      end
-    end
-  end # validate_cmd =>
-
-  context 'selinux_ignore_defaults =>' do
-    let(:title) { '/etc/foo.bar' }
-
-    [true, false].each do |v|
-      context v do
-        it_behaves_like 'concat', '/etc/foo.bar', { :selinux_ignore_defaults => v }
-      end
-    end
-
-    context '123' do
-      let(:title) { '/etc/foo.bar' }
-      let(:params) {{ :selinux_ignore_defaults => 123 }}
-      it 'should fail' do
-        expect { catalogue }.to raise_error(Puppet::Error, /Evaluation Error.*expects.*Boolean.*/)
-      end
-    end
-  end # selinux_ignore_defaults =>
-
-  [
-    :selrange,
-    :selrole,
-    :seltype,
-    :seluser,
-  ].each do |p|
-    context " #{p} =>" do
-      let(:title) { '/etc/foo.bar' }
-
-      context 'foo' do
-        it_behaves_like 'concat', '/etc/foo.bar', { p => 'foo' }
-      end
-
-      context 'false' do
-        let(:title) { '/etc/foo.bar' }
-        let(:params) {{ p => false }}
-        it 'should fail' do
-          expect { catalogue }.to raise_error(Puppet::Error, /parameter '#{p}' expects.*String.*/)
-        end
-      end
-    end # #{p} =>
-  end
-end