diff options
author | Bryan McLellan <btm@opscode.com> | 2011-05-20 16:03:11 -0700 |
---|---|---|
committer | Bryan McLellan <btm@opscode.com> | 2011-05-20 16:03:11 -0700 |
commit | beaa38c7ce78d89e30fe1ac9d0695b096e070f7c (patch) | |
tree | a80f5aebc21b47e2918fcc56d6962e1b2f173c45 | |
parent | 7c35ecc080aa67895bc910cdde83b4481b3db6fa (diff) | |
download | chef-beaa38c7ce78d89e30fe1ac9d0695b096e070f7c.tar.gz |
CHEF-2129: update and add specs for zypper < 1.0
-rw-r--r-- | chef/spec/unit/provider/package/zypper_spec.rb | 36 |
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 |