2 describe 'apt::force', :type => :define do
11 let :default_params do
18 describe "when using default parameters" do
22 it { should contain_exec("/usr/bin/apt-get -y install #{title}").with(
23 :unless => "/usr/bin/dpkg -s #{title} | grep -q 'Status: install'",
28 describe "when specifying release parameter" do
30 default_params.merge(:release => 'testing')
32 it { should contain_exec("/usr/bin/apt-get -y -t #{params[:release]} install #{title}").with(
33 :unless => "/usr/bin/test \$(/usr/bin/apt-cache policy -t #{params[:release]} #{title} | /bin/grep -E 'Installed|Candidate' | /usr/bin/uniq -s 14 | /usr/bin/wc -l) -eq 1"
37 describe "when specifying version parameter" do
39 default_params.merge(:version => '1')
41 it { should contain_exec("/usr/bin/apt-get -y install #{title}=#{params[:version]}").with(
42 :unless => "/usr/bin/dpkg -s #{title} | grep -q 'Version: #{params[:version]}'"
46 describe "when specifying release and version parameters" do
49 :release => 'testing',
53 it { should contain_exec("/usr/bin/apt-get -y -t #{params[:release]} install #{title}=1").with(
54 :unless => "/usr/bin/apt-cache policy -t #{params[:release]} #{title} | /bin/grep -q 'Installed: #{params[:version]}'"