aboutsummaryrefslogtreecommitdiff
path: root/spec/acceptance/tests/destroy_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/acceptance/tests/destroy_spec.rb')
-rw-r--r--spec/acceptance/tests/destroy_spec.rb27
1 files changed, 27 insertions, 0 deletions
diff --git a/spec/acceptance/tests/destroy_spec.rb b/spec/acceptance/tests/destroy_spec.rb
new file mode 100644
index 0000000..f55c24b
--- /dev/null
+++ b/spec/acceptance/tests/destroy_spec.rb
@@ -0,0 +1,27 @@
+test_name 'should be able to remove a host record'
+
+tag 'audit:low',
+ 'audit:refactor', # Use block style `test_name`
+ 'audit:acceptance' # Could be done at the integration (or unit) layer though
+# actual changing of resources could irreparably damage a
+# host running this, or require special permissions.
+
+agents.each do |agent|
+ file = agent.tmpfile('host-destroy')
+ line = '127.0.0.7 test1'
+
+ step 'set up files for the test'
+ on agent, "printf '#{line}\n' > #{file}"
+
+ step 'delete the resource from the file'
+ on(agent, puppet_resource('host', 'test1', "target=#{file}",
+ 'ensure=absent', 'ip=127.0.0.7'))
+
+ step 'verify that the content was removed'
+ on(agent, "cat #{file}; rm -f #{file}") do
+ fail_test 'the content was still present' if stdout.include? line
+ end
+
+ step 'clean up after the test'
+ on agent, "rm -f #{file}"
+end