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 $