summaryrefslogtreecommitdiff
path: root/spec/support
diff options
context:
space:
mode:
authorLamont Granquist <lamont@scriptkiddie.org>2020-06-26 10:20:50 -0700
committerLamont Granquist <lamont@scriptkiddie.org>2020-06-26 10:20:50 -0700
commit9d75e3b7cc2e87eb3c7950561a2c064feeb243f1 (patch)
treed05d6939fdffa3e4324eb75462dbe6fef86aeff1 /spec/support
parent696ecf12ff818f86c1d0853b407c0dd6cac9bc9f (diff)
downloadchef-9d75e3b7cc2e87eb3c7950561a2c064feeb243f1.tar.gz
Pick some of the unit test fixes from #10068lcg/win-unit-test-cherrypick
This picks some of the more obviously correct looking fixes from #10068 Signed-off-by: Lamont Granquist <lamont@scriptkiddie.org>
Diffstat (limited to 'spec/support')
-rw-r--r--spec/support/shared/unit/provider/file.rb20
1 files changed, 12 insertions, 8 deletions
diff --git a/spec/support/shared/unit/provider/file.rb b/spec/support/shared/unit/provider/file.rb
index 509ab15bb6..f624a6ae44 100644
--- a/spec/support/shared/unit/provider/file.rb
+++ b/spec/support/shared/unit/provider/file.rb
@@ -484,19 +484,23 @@ shared_examples_for Chef::Provider::File do
it "raises an exception if any verification fails" do
allow(File).to receive(:directory?).with("C:\\Windows\\system32/cmd.exe").and_return(false)
- provider.new_resource.verify windows? ? "REM" : "true"
- provider.new_resource.verify windows? ? "cmd.exe /c exit 1" : "false"
- msg = "Proposed content for #{provider.new_resource.path} failed verification #{windows? ? "cmd.exe /c exit 1" : "false"}"
- expect { provider.send(:do_validate_content) }.to raise_error(Chef::Exceptions::ValidationFailed, /#{msg}/)
+ allow(provider).to receive(:tempfile).and_return(tempfile)
+ provider.new_resource.verify windows? ? "cmd.exe c exit 1" : "false"
+ provider.new_resource.verify.each do |v|
+ allow(v).to receive(:verify).and_return(false)
+ end
+ expect { provider.send(:do_validate_content) }.to raise_error(Chef::Exceptions::ValidationFailed)
end
it "does not show verification for sensitive resources" do
allow(File).to receive(:directory?).with("C:\\Windows\\system32/cmd.exe").and_return(false)
- provider.new_resource.verify windows? ? "REM" : "true"
- provider.new_resource.verify windows? ? "cmd.exe /c exit 1" : "false"
+ allow(provider).to receive(:tempfile).and_return(tempfile)
provider.new_resource.sensitive true
- msg = "Proposed content for #{provider.new_resource.path} failed verification [sensitive]\nTemporary file moved to #{backupfile}"
- expect { provider.send(:do_validate_content) }.to raise_error(Chef::Exceptions::ValidationFailed, msg)
+ provider.new_resource.verify windows? ? "cmd.exe c exit 1" : "false"
+ provider.new_resource.verify.each do |v|
+ allow(v).to receive(:verify).and_return(false)
+ end
+ expect { provider.send(:do_validate_content) }.to raise_error(Chef::Exceptions::ValidationFailed, /sensitive/)
end
end
end