summaryrefslogtreecommitdiff
path: root/spec/unit/platform/query_helpers_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/unit/platform/query_helpers_spec.rb')
-rw-r--r--spec/unit/platform/query_helpers_spec.rb74
1 files changed, 1 insertions, 73 deletions
diff --git a/spec/unit/platform/query_helpers_spec.rb b/spec/unit/platform/query_helpers_spec.rb
index 55e2b4b44c..3ed86cdc4c 100644
--- a/spec/unit/platform/query_helpers_spec.rb
+++ b/spec/unit/platform/query_helpers_spec.rb
@@ -1,6 +1,6 @@
#
# Author:: Bryan McLellan <btm@loftninjas.org>
-# Copyright:: Copyright 2014-2018, Chef Software Inc.
+# Copyright:: Copyright 2014-2020, Chef Software Inc.
# License:: Apache License, Version 2.0
#
# Licensed under the Apache License, Version 2.0 (the "License");
@@ -18,78 +18,6 @@
require "spec_helper"
-describe "Chef::Platform#supports_msi?" do
- include_context "Win32" # clear and restore Win32:: namespace
-
- let(:key) { "System\\CurrentControlSet\\Services\\msiserver" }
- let(:key_query_value) { 0x0001 }
- let(:access) { key_query_value }
- let(:hive) { double("Win32::Registry::HKEY_LOCAL_MACHINE") }
- let(:registry) { double("Win32::Registry") }
-
- before(:all) do
- Win32::Registry = Class.new
- Win32::Registry::Error = Class.new(RuntimeError)
- end
-
- before do
- Win32::Registry::HKEY_LOCAL_MACHINE = hive
- Win32::Registry::KEY_QUERY_VALUE = key_query_value
- end
-
- after do
- Win32::Registry.send(:remove_const, "HKEY_LOCAL_MACHINE") if defined?(Win32::Registry::HKEY_LOCAL_MACHINE)
- Win32::Registry.send(:remove_const, "KEY_QUERY_VALUE") if defined?(Win32::Registry::KEY_QUERY_VALUE)
- end
-
- it "returns false early when not on windows" do
- allow(ChefUtils).to receive(:windows?).and_return(false)
- expect(Chef::Platform).to_not receive(:require)
- expect(Chef::Platform.supports_msi?).to be false
- end
-
- it "returns true when the registry key exists" do
- allow(ChefUtils).to receive(:windows?).and_return(true)
- allow(Chef::Platform).to receive(:require).with("win32/registry")
- expect(Win32::Registry::HKEY_LOCAL_MACHINE).to receive(:open)
- .with(key, access)
- .and_yield(registry)
- expect(Chef::Platform.supports_msi?).to be true
- end
-
- it "returns false when the registry key does not exist" do
- allow(ChefUtils).to receive(:windows?).and_return(true)
- allow(Chef::Platform).to receive(:require).with("win32/registry")
- expect(Win32::Registry::HKEY_LOCAL_MACHINE).to receive(:open)
- .with(key, access)
- .and_raise(Win32::Registry::Error, "The system cannot find the file specified.")
- expect(Chef::Platform.supports_msi?).to be false
- end
-end
-
-describe "Chef::Platform#supports_dsc?" do
- it "returns false if PowerShell is not present" do
- node = Chef::Node.new
- expect(Chef::Platform.supports_dsc?(node)).to be_falsey
- end
-
- ["1.0", "2.0", "3.0"].each do |version|
- it "returns false for PowerShell #{version}" do
- node = Chef::Node.new
- node.automatic[:languages][:powershell][:version] = version
- expect(Chef::Platform.supports_dsc?(node)).to be_falsey
- end
- end
-
- ["4.0", "5.0"].each do |version|
- it "returns true for PowerShell #{version}" do
- node = Chef::Node.new
- node.automatic[:languages][:powershell][:version] = version
- expect(Chef::Platform.supports_dsc?(node)).to be_truthy
- end
- end
-end
-
describe "Chef::Platform#supports_dsc_invoke_resource?" do
it "returns false if powershell is not present" do
node = Chef::Node.new