summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBryan McLellan <btm@opscode.com>2011-05-20 16:03:11 -0700
committerBryan McLellan <btm@opscode.com>2011-05-20 16:03:11 -0700
commitbeaa38c7ce78d89e30fe1ac9d0695b096e070f7c (patch)
treea80f5aebc21b47e2918fcc56d6962e1b2f173c45
parent7c35ecc080aa67895bc910cdde83b4481b3db6fa (diff)
downloadchef-beaa38c7ce78d89e30fe1ac9d0695b096e070f7c.tar.gz
CHEF-2129: update and add specs for zypper < 1.0
-rw-r--r--chef/spec/unit/provider/package/zypper_spec.rb36
1 files changed, 34 insertions, 2 deletions
diff --git a/chef/spec/unit/provider/package/zypper_spec.rb b/chef/spec/unit/provider/package/zypper_spec.rb
index 5b6e9f93b5..03207343f9 100644
--- a/chef/spec/unit/provider/package/zypper_spec.rb
+++ b/chef/spec/unit/provider/package/zypper_spec.rb
@@ -34,6 +34,7 @@ describe Chef::Provider::Package::Zypper do
@stderr = StringIO.new
@stdout = StringIO.new
@pid = mock("PID")
+ @provider.stub!(:`).and_return("2.0")
end
describe "when loading the current package state" do
@@ -89,14 +90,12 @@ describe Chef::Provider::Package::Zypper do
end
describe "install_package" do
-
it "should run zypper install with the package name and version" do
@provider.should_receive(:run_command).with({
:command => "zypper -n --no-gpg-checks install -l emacs=1.0",
})
@provider.install_package("emacs", "1.0")
end
-
end
describe "upgrade_package" do
@@ -123,4 +122,37 @@ describe Chef::Provider::Package::Zypper do
@provider.purge_package("emacs", "1.0")
end
end
+
+ describe "on an older zypper" do
+ before(:each) do
+ @provider.stub!(:`).and_return("0.11.6")
+ end
+
+ describe "install_package" do
+ it "should run zypper install with the package name and version" do
+ @provider.should_receive(:run_command).with({
+ :command => "zypper install -y emacs"
+ })
+ @provider.install_package("emacs", "1.0")
+ end
+ end
+
+ describe "upgrade_package" do
+ it "should run zypper update with the package name and version" do
+ @provider.should_receive(:run_command).with({
+ :command => "zypper install -y emacs"
+ })
+ @provider.upgrade_package("emacs", "1.0")
+ end
+ end
+
+ describe "remove_package" do
+ it "should run zypper remove with the package name" do
+ @provider.should_receive(:run_command).with({
+ :command => "zypper remove -y emacs"
+ })
+ @provider.remove_package("emacs", "1.0")
+ end
+ end
+ end
end