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