diff options
| author | Rick Bradley <rick@rickbradley.com> | 2008-02-18 11:42:01 -0600 |
|---|---|---|
| committer | Rick Bradley <rick@rickbradley.com> | 2008-02-18 11:42:01 -0600 |
| commit | 12f139ce7fb040753440b37727eb5dacd0e3e1cb (patch) | |
| tree | 9e23a86d72ed283823b830f3d4dbfa7e74e6b85e /spec/unit | |
| parent | b8d5ce0aa8de40ac8ab84e97d54f77c2499dc65f (diff) | |
| download | puppet-12f139ce7fb040753440b37727eb5dacd0e3e1cb.tar.gz puppet-12f139ce7fb040753440b37727eb5dacd0e3e1cb.tar.xz puppet-12f139ce7fb040753440b37727eb5dacd0e3e1cb.zip | |
converting package type specs from setup/teardown to before/after
Diffstat (limited to 'spec/unit')
| -rwxr-xr-x | spec/unit/ral/types/package.rb | 185 |
1 files changed, 94 insertions, 91 deletions
diff --git a/spec/unit/ral/types/package.rb b/spec/unit/ral/types/package.rb index f14a792b9..785d2eb37 100755 --- a/spec/unit/ral/types/package.rb +++ b/spec/unit/ral/types/package.rb @@ -102,7 +102,13 @@ describe Puppet::Type::Package, "when validating attribute values" do end module PackageEvaluationTesting - def setup + def setprops(properties) + @provider.stubs(:properties).returns(properties) + end +end + +describe Puppet::Type::Package do + before :each do @provider = stub 'provider', :class => Puppet::Type::Package.defaultprovider, :clear => nil, :satisfies? => true, :name => :mock Puppet::Type::Package.defaultprovider.stubs(:new).returns(@provider) @package = Puppet::Type::Package.create(:name => "yay") @@ -110,135 +116,132 @@ module PackageEvaluationTesting @catalog = Puppet::Node::Catalog.new @catalog.add_resource(@package) end - - def setprops(properties) - @provider.stubs(:properties).returns(properties) - end - - def teardown + + after :each do @catalog.clear(true) Puppet::Type::Package.clear end -end -describe Puppet::Type::Package, "when it should be purged" do - include PackageEvaluationTesting - before { @package[:ensure] = :purged } + describe Puppet::Type::Package, "when it should be purged" do + include PackageEvaluationTesting - it "should do nothing if it is :purged" do - @provider.expects(:properties).returns(:ensure => :purged) - @catalog.apply - end + before { @package[:ensure] = :purged } - [:absent, :installed, :present, :latest].each do |state| - it "should purge if it is #{state.to_s}" do - @provider.stubs(:properties).returns(:ensure => state) - @provider.expects(:purge) + it "should do nothing if it is :purged" do + @provider.expects(:properties).returns(:ensure => :purged) @catalog.apply end + + [:absent, :installed, :present, :latest].each do |state| + it "should purge if it is #{state.to_s}" do + @provider.stubs(:properties).returns(:ensure => state) + @provider.expects(:purge) + @catalog.apply + end + end end -end -describe Puppet::Type::Package, "when it should be absent" do - include PackageEvaluationTesting + describe Puppet::Type::Package, "when it should be absent" do + include PackageEvaluationTesting - before { @package[:ensure] = :absent } + before { @package[:ensure] = :absent } - [:purged, :absent].each do |state| - it "should do nothing if it is #{state.to_s}" do - @provider.expects(:properties).returns(:ensure => state) - @catalog.apply + [:purged, :absent].each do |state| + it "should do nothing if it is #{state.to_s}" do + @provider.expects(:properties).returns(:ensure => state) + @catalog.apply + end end - end - [:installed, :present, :latest].each do |state| - it "should uninstall if it is #{state.to_s}" do - @provider.stubs(:properties).returns(:ensure => state) - @provider.expects(:uninstall) - @catalog.apply + [:installed, :present, :latest].each do |state| + it "should uninstall if it is #{state.to_s}" do + @provider.stubs(:properties).returns(:ensure => state) + @provider.expects(:uninstall) + @catalog.apply + end end end -end -describe Puppet::Type::Package, "when it should be present" do - include PackageEvaluationTesting + describe Puppet::Type::Package, "when it should be present" do + include PackageEvaluationTesting - before { @package[:ensure] = :present } + before { @package[:ensure] = :present } - [:present, :latest, "1.0"].each do |state| - it "should do nothing if it is #{state.to_s}" do - @provider.expects(:properties).returns(:ensure => state) - @catalog.apply + [:present, :latest, "1.0"].each do |state| + it "should do nothing if it is #{state.to_s}" do + @provider.expects(:properties).returns(:ensure => state) + @catalog.apply + end end - end - [:purged, :absent].each do |state| - it "should install if it is #{state.to_s}" do - @provider.stubs(:properties).returns(:ensure => state) - @provider.expects(:install) - @catalog.apply + [:purged, :absent].each do |state| + it "should install if it is #{state.to_s}" do + @provider.stubs(:properties).returns(:ensure => state) + @provider.expects(:install) + @catalog.apply + end end end -end -describe Puppet::Type::Package, "when it should be latest" do - include PackageEvaluationTesting + describe Puppet::Type::Package, "when it should be latest" do + include PackageEvaluationTesting - before { @package[:ensure] = :latest } + before { @package[:ensure] = :latest } - [:purged, :absent].each do |state| - it "should upgrade if it is #{state.to_s}" do - @provider.stubs(:properties).returns(:ensure => state) + [:purged, :absent].each do |state| + it "should upgrade if it is #{state.to_s}" do + @provider.stubs(:properties).returns(:ensure => state) + @provider.expects(:update) + @catalog.apply + end + end + + it "should upgrade if the current version is not equal to the latest version" do + @provider.stubs(:properties).returns(:ensure => "1.0") + @provider.stubs(:latest).returns("2.0") @provider.expects(:update) @catalog.apply end - end - it "should upgrade if the current version is not equal to the latest version" do - @provider.stubs(:properties).returns(:ensure => "1.0") - @provider.stubs(:latest).returns("2.0") - @provider.expects(:update) - @catalog.apply - end + it "should do nothing if it is equal to the latest version" do + @provider.stubs(:properties).returns(:ensure => "1.0") + @provider.stubs(:latest).returns("1.0") + @provider.expects(:update).never + @catalog.apply + end - it "should do nothing if it is equal to the latest version" do - @provider.stubs(:properties).returns(:ensure => "1.0") - @provider.stubs(:latest).returns("1.0") - @provider.expects(:update).never - @catalog.apply + it "should do nothing if the provider returns :present as the latest version" do + @provider.stubs(:properties).returns(:ensure => :present) + @provider.stubs(:latest).returns("1.0") + @provider.expects(:update).never + @catalog.apply + end end - it "should do nothing if the provider returns :present as the latest version" do - @provider.stubs(:properties).returns(:ensure => :present) - @provider.stubs(:latest).returns("1.0") - @provider.expects(:update).never - @catalog.apply - end -end + describe Puppet::Type::Package, "when it should be a specific version" do + include PackageEvaluationTesting -describe Puppet::Type::Package, "when it should be a specific version" do - include PackageEvaluationTesting + before { @package[:ensure] = "1.0" } - before { @package[:ensure] = "1.0" } + [:purged, :absent].each do |state| + it "should install if it is #{state.to_s}" do + @provider.stubs(:properties).returns(:ensure => state) + @provider.expects(:install) + @catalog.apply + end + end - [:purged, :absent].each do |state| - it "should install if it is #{state.to_s}" do - @provider.stubs(:properties).returns(:ensure => state) - @provider.expects(:install) + it "should do nothing if the current version is equal to the desired version" do + @provider.stubs(:properties).returns(:ensure => "1.0") + @provider.expects(:install).never @catalog.apply end - end - it "should do nothing if the current version is equal to the desired version" do - @provider.stubs(:properties).returns(:ensure => "1.0") - @provider.expects(:install).never - @catalog.apply - end - - it "should install if the current version is not equal to the specified version" do - @provider.stubs(:properties).returns(:ensure => "2.0") - @provider.expects(:install) - @catalog.apply + it "should install if the current version is not equal to the specified version" do + @provider.stubs(:properties).returns(:ensure => "2.0") + @provider.expects(:install) + @catalog.apply + end end end |
