Update CODEOWNERS
[puppet-modules/puppetlabs-apt.git] / spec / classes / apt_backports_spec.rb
index 2f3865bc32c8ade2aaa27c97791c77b80e45897e..e7a951a7583fdcb908c678710223a367bca1fa47 100644 (file)
@@ -13,24 +13,25 @@ describe 'apt::backports', type: :class do
             family: 'Debian',
             name: 'Debian',
             release: {
-              major: '8',
-              full: '8.0',
+              major: '9',
+              full: '9.0'
             },
             distro: {
-              codename: 'jessie',
-              id: 'Debian',
-            },
-          },
+              codename: 'stretch',
+              id: 'Debian'
+            }
+          }
         }
       end
 
       it {
-        is_expected.to contain_apt__source('backports').with(location: 'http://deb.debian.org/debian',
-                                                             repos: 'main contrib non-free',
-                                                             release: 'jessie-backports',
-                                                             pin: { 'priority' => 200, 'release' => 'jessie-backports' })
+        expect(subject).to contain_apt__source('backports').with(location: 'http://deb.debian.org/debian',
+                                                                 repos: 'main contrib non-free',
+                                                                 release: 'stretch-backports',
+                                                                 pin: { 'priority' => 200, 'release' => 'stretch-backports' })
       }
     end
+
     context 'with defaults on ubuntu' do
       let(:facts) do
         {
@@ -38,25 +39,26 @@ describe 'apt::backports', type: :class do
             family: 'Debian',
             name: 'Ubuntu',
             release: {
-              major: '16',
-              full: '16.04',
+              major: '18',
+              full: '18.04'
             },
             distro: {
-              codename: 'xenial',
-              id: 'Ubuntu',
-            },
-          },
+              codename: 'bionac',
+              id: 'Ubuntu'
+            }
+          }
         }
       end
 
       it {
-        is_expected.to contain_apt__source('backports').with(location: 'http://archive.ubuntu.com/ubuntu',
-                                                             key: '630239CC130E1A7FD81A27B140976EAF437D05B5',
-                                                             repos: 'main universe multiverse restricted',
-                                                             release: 'xenial-backports',
-                                                             pin: { 'priority' => 200, 'release' => 'xenial-backports' })
+        expect(subject).to contain_apt__source('backports').with(location: 'http://archive.ubuntu.com/ubuntu',
+                                                                 key: '630239CC130E1A7FD81A27B140976EAF437D05B5',
+                                                                 repos: 'main universe multiverse restricted',
+                                                                 release: 'bionac-backports',
+                                                                 pin: { 'priority' => 200, 'release' => 'bionac-backports' })
       }
     end
+
     context 'with everything set' do
       let(:facts) do
         {
@@ -64,14 +66,14 @@ describe 'apt::backports', type: :class do
             family: 'Debian',
             name: 'Ubuntu',
             release: {
-              major: '16',
-              full: '16.04',
+              major: '18',
+              full: '18.04'
             },
             distro: {
-              codename: 'xenial',
-              id: 'Ubuntu',
-            },
-          },
+              codename: 'bionac',
+              id: 'Ubuntu'
+            }
+          }
         }
       end
       let(:params) do
@@ -80,18 +82,19 @@ describe 'apt::backports', type: :class do
           release: 'vivid',
           repos: 'main',
           key: 'A1BD8E9D78F7FE5C3E65D8AF8B48AD6246925553',
-          pin: '90',
+          pin: '90'
         }
       end
 
       it {
-        is_expected.to contain_apt__source('backports').with(location: 'http://archive.ubuntu.com/ubuntu-test',
-                                                             key: 'A1BD8E9D78F7FE5C3E65D8AF8B48AD6246925553',
-                                                             repos: 'main',
-                                                             release: 'vivid',
-                                                             pin: { 'priority' => 90, 'release' => 'vivid' })
+        expect(subject).to contain_apt__source('backports').with(location: 'http://archive.ubuntu.com/ubuntu-test',
+                                                                 key: 'A1BD8E9D78F7FE5C3E65D8AF8B48AD6246925553',
+                                                                 repos: 'main',
+                                                                 release: 'vivid',
+                                                                 pin: { 'priority' => 90, 'release' => 'vivid' })
       }
     end
+
     context 'when set things with hashes' do
       let(:facts) do
         {
@@ -99,33 +102,34 @@ describe 'apt::backports', type: :class do
             family: 'Debian',
             name: 'Ubuntu',
             release: {
-              major: '16',
-              full: '16.04',
+              major: '18',
+              full: '18.04'
             },
             distro: {
-              codename: 'xenial',
-              id: 'Ubuntu',
-            },
-          },
+              codename: 'bionac',
+              id: 'Ubuntu'
+            }
+          }
         }
       end
       let(:params) do
         {
           key: {
-            'id' => 'A1BD8E9D78F7FE5C3E65D8AF8B48AD6246925553',
+            'id' => 'A1BD8E9D78F7FE5C3E65D8AF8B48AD6246925553'
           },
           pin: {
-            'priority' => '90',
-          },
+            'priority' => '90'
+          }
         }
       end
 
       it {
-        is_expected.to contain_apt__source('backports').with(key: { 'id' => 'A1BD8E9D78F7FE5C3E65D8AF8B48AD6246925553' },
-                                                             pin: { 'priority' => '90' })
+        expect(subject).to contain_apt__source('backports').with(key: { 'id' => 'A1BD8E9D78F7FE5C3E65D8AF8B48AD6246925553' },
+                                                                 pin: { 'priority' => '90' })
       }
     end
   end
+
   describe 'mint tests' do
     let(:facts) do
       {
@@ -134,13 +138,13 @@ describe 'apt::backports', type: :class do
           name: 'LinuxMint',
           release: {
             major: '17',
-            full: '17',
+            full: '17'
           },
           distro: {
             codename: 'qiana',
-            id: 'LinuxMint',
-          },
-        },
+            id: 'LinuxMint'
+          }
+        }
       }
     end
 
@@ -150,71 +154,76 @@ describe 'apt::backports', type: :class do
           location: 'http://archive.ubuntu.com/ubuntu',
           release: 'trusty-backports',
           repos: 'main universe multiverse restricted',
-          key: '630239CC130E1A7FD81A27B140976EAF437D05B5',
+          key: '630239CC130E1A7FD81A27B140976EAF437D05B5'
         }
       end
 
       it {
-        is_expected.to contain_apt__source('backports').with(location: 'http://archive.ubuntu.com/ubuntu',
-                                                             key: '630239CC130E1A7FD81A27B140976EAF437D05B5',
-                                                             repos: 'main universe multiverse restricted',
-                                                             release: 'trusty-backports',
-                                                             pin: { 'priority' => 200, 'release' => 'trusty-backports' })
+        expect(subject).to contain_apt__source('backports').with(location: 'http://archive.ubuntu.com/ubuntu',
+                                                                 key: '630239CC130E1A7FD81A27B140976EAF437D05B5',
+                                                                 repos: 'main universe multiverse restricted',
+                                                                 release: 'trusty-backports',
+                                                                 pin: { 'priority' => 200, 'release' => 'trusty-backports' })
       }
     end
+
     context 'with missing location' do
       let(:params) do
         {
           release: 'trusty-backports',
           repos: 'main universe multiverse restricted',
-          key: '630239CC130E1A7FD81A27B140976EAF437D05B5',
+          key: '630239CC130E1A7FD81A27B140976EAF437D05B5'
         }
       end
 
       it do
-        is_expected.to raise_error(Puppet::Error, %r{If not on Debian or Ubuntu, you must explicitly pass location, release, repos, and key})
+        expect(subject).to raise_error(Puppet::Error, %r{If not on Debian or Ubuntu, you must explicitly pass location, release, repos, and key})
       end
     end
+
     context 'with missing release' do
       let(:params) do
         {
           location: 'http://archive.ubuntu.com/ubuntu',
           repos: 'main universe multiverse restricted',
-          key: '630239CC130E1A7FD81A27B140976EAF437D05B5',
+          key: '630239CC130E1A7FD81A27B140976EAF437D05B5'
         }
       end
 
       it do
-        is_expected.to raise_error(Puppet::Error, %r{If not on Debian or Ubuntu, you must explicitly pass location, release, repos, and key})
+        expect(subject).to raise_error(Puppet::Error, %r{If not on Debian or Ubuntu, you must explicitly pass location, release, repos, and key})
       end
     end
+
     context 'with missing repos' do
       let(:params) do
         {
           location: 'http://archive.ubuntu.com/ubuntu',
           release: 'trusty-backports',
-          key: '630239CC130E1A7FD81A27B140976EAF437D05B5',
+          key: '630239CC130E1A7FD81A27B140976EAF437D05B5'
         }
       end
 
       it do
-        is_expected.to raise_error(Puppet::Error, %r{If not on Debian or Ubuntu, you must explicitly pass location, release, repos, and key})
+        expect(subject).to raise_error(Puppet::Error, %r{If not on Debian or Ubuntu, you must explicitly pass location, release, repos, and key})
       end
     end
+
     context 'with missing key' do
       let(:params) do
         {
           location: 'http://archive.ubuntu.com/ubuntu',
           release: 'trusty-backports',
-          repos: 'main universe multiverse restricted',
+          repos: 'main universe multiverse restricted'
         }
       end
 
       it do
-        is_expected.to raise_error(Puppet::Error, %r{If not on Debian or Ubuntu, you must explicitly pass location, release, repos, and key})
+        expect(subject).to raise_error(Puppet::Error, %r{If not on Debian or Ubuntu, you must explicitly pass location, release, repos, and key})
       end
     end
   end
+
   describe 'validation' do
     let(:facts) do
       {
@@ -222,70 +231,74 @@ describe 'apt::backports', type: :class do
           family: 'Debian',
           name: 'Ubuntu',
           release: {
-            major: '16',
-            full: '16.04',
+            major: '18',
+            full: '18.04'
           },
           distro: {
-            codename: 'xenial',
-            id: 'Ubuntu',
-          },
-        },
+            codename: 'bionac',
+            id: 'Ubuntu'
+          }
+        }
       }
     end
 
     context 'with invalid location' do
       let(:params) do
         {
-          location: true,
+          location: true
         }
       end
 
       it do
-        is_expected.to raise_error(Puppet::Error, %r{expects a})
+        expect(subject).to raise_error(Puppet::Error, %r{expects a})
       end
     end
+
     context 'with invalid release' do
       let(:params) do
         {
-          release: true,
+          release: true
         }
       end
 
       it do
-        is_expected.to raise_error(Puppet::Error, %r{expects a})
+        expect(subject).to raise_error(Puppet::Error, %r{expects a})
       end
     end
+
     context 'with invalid repos' do
       let(:params) do
         {
-          repos: true,
+          repos: true
         }
       end
 
       it do
-        is_expected.to raise_error(Puppet::Error, %r{expects a})
+        expect(subject).to raise_error(Puppet::Error, %r{expects a})
       end
     end
+
     context 'with invalid key' do
       let(:params) do
         {
-          key: true,
+          key: true
         }
       end
 
       it do
-        is_expected.to raise_error(Puppet::Error, %r{expects a})
+        expect(subject).to raise_error(Puppet::Error, %r{expects a})
       end
     end
+
     context 'with invalid pin' do
       let(:params) do
         {
-          pin: true,
+          pin: true
         }
       end
 
       it do
-        is_expected.to raise_error(Puppet::Error, %r{expects a})
+        expect(subject).to raise_error(Puppet::Error, %r{expects a})
       end
     end
   end