X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;f=spec%2Fdefines%2Fsource_compat_spec.rb;h=dc261fbb88210fd2f0fd447e2f91d183bbf4def9;hb=4513a5845c2a18aece7e17ad82612ec4da3efaa0;hp=0c42ef1393a31ae26a65e333a9f803756d6a97bd;hpb=222d68ee9aca05ab81b6d01994cd88fa73bee5ee;p=puppet-modules%2Fpuppetlabs-apt.git diff --git a/spec/defines/source_compat_spec.rb b/spec/defines/source_compat_spec.rb index 0c42ef1..dc261fb 100644 --- a/spec/defines/source_compat_spec.rb +++ b/spec/defines/source_compat_spec.rb @@ -11,10 +11,18 @@ describe 'apt::source', type: :define do let :facts do { - os: { family: 'Debian', name: 'Debian', release: { major: '8', full: '8.0' } }, - lsbdistid: 'Debian', - lsbdistcodename: 'jessie', - osfamily: 'Debian', + os: { + family: 'Debian', + name: 'Debian', + release: { + major: '9', + full: '9.0', + }, + distro: { + codename: 'stretch', + id: 'Debian', + }, + }, } end @@ -27,64 +35,76 @@ describe 'apt::source', type: :define do end it { - is_expected.to contain_apt__setting('list-my_source').with_content(%r{# my_source\ndeb-src http://debian.mirror.iweb.ca/debian/ jessie main\n}) + expect(subject).to contain_apt__setting('list-my_source').with_content(%r{# my_source\ndeb-src http://debian.mirror.iweb.ca/debian/ stretch main\n}) } end context 'with no defaults' do let :params do { - 'comment' => 'foo', - 'location' => 'http://debian.mirror.iweb.ca/debian/', - 'release' => 'sid', - 'repos' => 'testing', - 'include' => { 'src' => false }, - 'key' => GPG_KEY_ID, - 'pin' => '10', - 'architecture' => 'x86_64', + 'comment' => 'foo', + 'location' => 'http://debian.mirror.iweb.ca/debian/', + 'release' => 'sid', + 'repos' => 'testing', + 'include' => { 'src' => false }, + 'key' => GPG_KEY_ID, + 'pin' => '10', + 'architecture' => 'x86_64', 'allow_unsigned' => true, } end it { - is_expected.to contain_apt__setting('list-my_source').with_content(%r{# foo\ndeb \[arch=x86_64 trusted=yes\] http://debian.mirror.iweb.ca/debian/ sid testing\n}) - .without_content(%r{deb-src}) + expect(subject).to contain_apt__setting('list-my_source').with_content(%r{# foo\ndeb \[arch=x86_64 trusted=yes\] http://debian.mirror.iweb.ca/debian/ sid testing\n}) + .without_content(%r{deb-src}) } it { - is_expected.to contain_apt__pin('my_source').that_comes_before('Apt::Setting[list-my_source]').with('ensure' => 'present', - 'priority' => '10', - 'origin' => 'debian.mirror.iweb.ca') + expect(subject).to contain_apt__pin('my_source').that_comes_before('Apt::Setting[list-my_source]').with('ensure' => 'present', + 'priority' => '10', + 'origin' => 'debian.mirror.iweb.ca') } it { - is_expected.to contain_apt__key("Add key: #{GPG_KEY_ID} from Apt::Source my_source").that_comes_before('Apt::Setting[list-my_source]').with('ensure' => 'present', - 'id' => GPG_KEY_ID) + expect(subject).to contain_apt__key("Add key: #{GPG_KEY_ID} from Apt::Source my_source").that_comes_before('Apt::Setting[list-my_source]').with('ensure' => 'present', + 'id' => GPG_KEY_ID) } end + context 'when allow_insecure true' do + let :params do + { + 'include' => { 'src' => false }, + 'location' => 'http://debian.mirror.iweb.ca/debian/', + 'allow_insecure' => true, + } + end + + it { is_expected.to contain_apt__setting('list-my_source').with_content(%r{# my_source\ndeb \[allow-insecure=yes\] http://debian.mirror.iweb.ca/debian/ stretch main\n}) } + end + context 'when allow_unsigned true' do let :params do { - 'include' => { 'src' => false }, - 'location' => 'http://debian.mirror.iweb.ca/debian/', + 'include' => { 'src' => false }, + 'location' => 'http://debian.mirror.iweb.ca/debian/', 'allow_unsigned' => true, } end - it { is_expected.to contain_apt__setting('list-my_source').with_content(%r{# my_source\ndeb \[trusted=yes\] http://debian.mirror.iweb.ca/debian/ jessie main\n}) } + it { is_expected.to contain_apt__setting('list-my_source').with_content(%r{# my_source\ndeb \[trusted=yes\] http://debian.mirror.iweb.ca/debian/ stretch main\n}) } end context 'with architecture equals x86_64' do let :params do { - 'location' => 'http://debian.mirror.iweb.ca/debian/', + 'location' => 'http://debian.mirror.iweb.ca/debian/', 'architecture' => 'x86_64', } end it { - is_expected.to contain_apt__setting('list-my_source').with_content(%r{# my_source\ndeb \[arch=x86_64\] http://debian.mirror.iweb.ca/debian/ jessie main\n}) + expect(subject).to contain_apt__setting('list-my_source').with_content(%r{# my_source\ndeb \[arch=x86_64\] http://debian.mirror.iweb.ca/debian/ stretch main\n}) } end @@ -96,7 +116,7 @@ describe 'apt::source', type: :define do end it { - is_expected.to contain_apt__setting('list-my_source').with('ensure' => 'absent') + expect(subject).to contain_apt__setting('list-my_source').with('ensure' => 'absent') } end @@ -104,13 +124,22 @@ describe 'apt::source', type: :define do context 'with no release' do let :facts do { - os: { family: 'Debian', name: 'Debian', release: { major: '8', full: '8.0' } }, - osfamily: 'Debian', + os: { + family: 'Debian', + name: 'Debian', + release: { + major: '8', + full: '8.0', + }, + distro: { + id: 'Debian', + }, + }, } end it do - is_expected.to raise_error(Puppet::Error, %r{lsbdistcodename fact not available: release parameter required}) + expect(subject).to raise_error(Puppet::Error, %r{os.distro.codename fact not available: release parameter required}) end end end