Tests to validate apt::{conf,backports}
[puppet-modules/puppetlabs-apt.git] / spec / defines / pin_spec.rb
1 require 'spec_helper'
2 describe 'apt::pin', :type => :define do
3   let(:title) { 'my_pin' }
4
5   let :default_params do
6     {
7       :packages => '*',
8       :priority => '0'
9     }
10   end
11
12   [{},
13    {
14       :packages  => 'apache',
15       :priority  => '1'
16     }
17   ].each do |param_set|
18     describe "when #{param_set == {} ? "using default" : "specifying"} define parameters" do
19       let :param_hash do
20         default_params.merge(param_set)
21       end
22
23       let :params do
24         param_set
25       end
26
27       it { should include_class("apt::params") }
28
29       it { should contain_file("#{title}.pref").with({
30           'ensure'  => 'file',
31           'path'    => "/etc/apt/preferences.d/#{title}",
32           'owner'   => 'root',
33           'group'   => 'root',
34           'mode'    => '0644',
35           'content' => "# #{title}\nPackage: #{param_hash[:packages]}\nPin: release a=#{title}\nPin-Priority: #{param_hash[:priority]}",
36         })
37       }
38     end
39   end
40 end