2 describe 'apt::hold' do
5 :lsbdistid => 'Debian',
6 :lsbrelease => 'wheezy',
13 let :default_params do {
17 describe 'default params' do
18 let :params do default_params end
20 it 'creates an apt preferences file' do
21 should contain_apt__hold(title).with({
24 :version => params[:version],
28 should contain_apt__pin("hold #{title} at #{params[:version]}").with({
31 :version => params[:version],
37 describe 'ensure => absent' do
38 let :params do default_params.merge({:ensure => 'absent',}) end
40 it 'creates an apt preferences file' do
41 should contain_apt__hold(title).with({
42 :ensure => params[:ensure],
45 should contain_apt__pin("hold #{title} at #{params[:version]}").with({
46 :ensure => params[:ensure],
51 describe 'priority => 990' do
52 let :params do default_params.merge({:priority => 990,}) end
54 it 'creates an apt preferences file' do
55 should contain_apt__hold(title).with({
58 :version => params[:version],
59 :priority => params[:priority],
62 should contain_apt__pin("hold #{title} at #{params[:version]}").with({
65 :version => params[:version],
66 :priority => params[:priority],
71 describe 'validation' do
72 context 'version => {}' do
73 let :params do { :version => {}, } end
75 expect { subject }.to raise_error(/is not a string/)
79 context 'ensure => bananana' do
80 let :params do default_params.merge({:ensure => 'bananana',}) end
82 expect { subject }.to raise_error(/does not match/)
86 context 'package => []' do
87 let :params do default_params.merge({:package => [],}) end
89 expect { subject }.to raise_error(/is not a string/)
93 context 'priority => bananana' do
94 let :params do default_params.merge({:priority => 'bananana',}) end
96 expect { subject }.to raise_error(/must be an integer/)