test/ral/providers/package/apt.rb in puppet-0.22.4 vs test/ral/providers/package/apt.rb in puppet-0.23.0

- old
+ new

@@ -26,11 +26,11 @@ '--showformat', '${Status} ${Package} ${Version}\n', 'faff' ).returns( "deinstall ok config-files faff 1.2.3-1\n" - ) + ).times(1) pkg.provider.expects( :aptget ).with( '-q', @@ -54,11 +54,11 @@ '--showformat', '${Status} ${Package} ${Version}\n', 'faff' ).returns( "install ok installed faff 1.2.3-1\n" - ) + ).times(1) pkg.provider.expects( :aptget ).with( '-y', '-q', @@ -68,10 +68,79 @@ ).returns(0) pkg.evaluate.each { |state| state.transaction = self; state.forward } end + def test_dont_try_to_purge_if_already_purged + pkg = @type.create :name => 'faff', :provider => :apt, :ensure => :purged + + pkg.provider.expects( + :dpkgquery + ).with( + '-W', + '--showformat', + '${Status} ${Package} ${Version}\n', + 'faff' + ).raises( + Puppet::ExecutionFailure, + "No packages found matching faff.\n" + ).times(1) + pkg.provider.expects( + :aptget + ).never + + pkg.evaluate.each { |state| state.transaction = self; state.forward } + end + + def test_dont_try_to_purge_if_already_purged_and_we_want_it_absent + pkg = @type.create :name => 'faff', :provider => :apt, :ensure => :absent + + pkg.provider.expects( + :dpkgquery + ).with( + '-W', + '--showformat', + '${Status} ${Package} ${Version}\n', + 'faff' + ).raises( + Puppet::ExecutionFailure, + "No packages found matching faff.\n" + ).times(1) + pkg.provider.expects( + :aptget + ).never + + pkg.evaluate.each { |state| state.transaction = self; state.forward } + end + + def test_make_sure_we_purge_if_package_still_has_conffiles + pkg = @type.create :name => 'faff', :provider => :apt, :ensure => :purged + + pkg.provider.expects( + :dpkgquery + ).with( + '-W', + '--showformat', + '${Status} ${Package} ${Version}\n', + 'faff' + ).returns( + "deinstall ok config-files faff 1.2.3-1\n" + ).times(1) + pkg.provider.expects( + :aptget + ).with( + '-y', + '-q', + 'remove', + '--purge', + 'faff' + ).returns(0) + + pkg.evaluate.each { |state| state.transaction = self; state.forward } + end + + def test_latest pkg = @type.create :name => 'base-files', :provider => :apt assert(pkg, "did not create pkg") status = pkg.provider.query @@ -84,6 +153,6 @@ end assert(latest, "Could not get latest value from apt") end end -# $Id: apt.rb 2390 2007-04-06 15:49:38Z luke $ +# $Id: apt.rb 2555 2007-06-08 17:20:00Z luke $