12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- require 'spec_helper'
- describe 'apt::hold' do
- let :facts do {
- :osfamily => 'Debian',
- :lsbdistid => 'Debian',
- :lsbrelease => 'wheezy',
- } end
- let :title do
- 'vim'
- end
- let :default_params do {
- :version => '1.1.1',
- } end
- describe 'default params' do
- let :params do default_params end
- it 'creates an apt preferences file' do
- should contain_apt__pin("hold_#{title}").with({
- :ensure => 'present',
- :packages => title,
- :version => params[:version],
- :priority => 1001,
- })
- end
- end
- describe 'ensure => absent' do
- let :params do default_params.merge({:ensure => 'absent',}) end
- it 'creates an apt preferences file' do
- should contain_apt__pin("hold_#{title}").with({
- :ensure => params[:ensure],
- })
- end
- end
- describe 'priority => 990' do
- let :params do default_params.merge({:priority => 990,}) end
- it 'creates an apt preferences file' do
- should contain_apt__pin("hold_#{title}").with({
- :ensure => 'present',
- :packages => title,
- :version => params[:version],
- :priority => params[:priority],
- })
- end
- end
- describe 'package => foo' do
- let :params do default_params.merge({:package => 'foo'}) end
- it 'creates an apt preferences file' do
- should contain_apt__pin("hold_foo").with({
- :ensure => 'present',
- :packages => 'foo',
- :version => params[:version],
- :priority => 1001,
- })
- end
- end
- describe 'validation' do
- context 'version => {}' do
- let :params do { :version => {}, } end
- it 'should fail' do
- expect { subject }.to raise_error(/is not a string/)
- end
- end
- context 'ensure => bananana' do
- let :params do default_params.merge({:ensure => 'bananana',}) end
- it 'should fail' do
- expect { subject }.to raise_error(/does not match/)
- end
- end
- context 'package => []' do
- let :params do default_params.merge({:package => [],}) end
- it 'should fail' do
- expect { subject }.to raise_error(/is not a string/)
- end
- end
- context 'priority => bananana' do
- let :params do default_params.merge({:priority => 'bananana',}) end
- it 'should fail' do
- expect { subject }.to raise_error(/must be an integer/)
- end
- end
- end
- end
|