summaryrefslogtreecommitdiff
path: root/spec/unit/provider/package/windows_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/unit/provider/package/windows_spec.rb')
-rw-r--r--spec/unit/provider/package/windows_spec.rb48
1 files changed, 10 insertions, 38 deletions
diff --git a/spec/unit/provider/package/windows_spec.rb b/spec/unit/provider/package/windows_spec.rb
index c327e4217b..c52012b938 100644
--- a/spec/unit/provider/package/windows_spec.rb
+++ b/spec/unit/provider/package/windows_spec.rb
@@ -414,51 +414,23 @@ describe Chef::Provider::Package::Windows, :windows_only do
Chef::Config[:why_run] = false
end
end
- end
-
- shared_context "valid checksum" do
- context "checksum is valid" do
- before do
- allow(provider).to receive(:checksum).and_return("jiie00u3bbs92vsbhvgvklb2lasgh20ah")
- end
-
- it "does not raise the checksum mismatch exception" do
- expect { provider.send(:validate_content!) }.to_not raise_error
- end
- end
- end
- shared_context "invalid checksum" do
- context "checksum is invalid" do
- before do
- allow(provider).to receive(:checksum).and_return("kiie30u3bbs92vsbhvgvklb2lasgh20ah")
- end
+ it "does not raise an error with a valid checksum" do
+ expect(Chef::Digester).to receive(:checksum_for_file).with(new_resource.source).and_return("abcdef1234567890")
+ expect(provider).to receive(:install_package)
- it "raises the checksum mismatch exception" do
- expect { provider.send(:validate_content!) }.to raise_error(
- Chef::Exceptions::ChecksumMismatch
- )
- end
- end
- end
+ new_resource.checksum("abcdef1234567890")
- describe "validate_content!" do
- before(:each) do
- new_resource.checksum("jiie00u3bbs92vsbhvgvklb2lasgh20ah")
+ provider.run_action(:install)
end
- context "checksum is in lowercase" do
- include_context "valid checksum"
- include_context "invalid checksum"
- end
+ it "raises an error with an invalid checksum" do
+ expect(Chef::Digester).to receive(:checksum_for_file).with(new_resource.source).and_return("abcdef1234567890")
+ expect(provider).not_to receive(:install_package)
- context "checksum is in uppercase" do
- before do
- new_resource.checksum = new_resource.checksum.upcase
- end
+ new_resource.checksum("ffffffffffffffff")
- include_context "valid checksum"
- include_context "invalid checksum"
+ expect { provider.run_action(:install) }.to raise_error(Chef::Exceptions::Package)
end
end
end