inspec/test/unit/resources/registry_key_test.rb

40 lines
1.5 KiB
Ruby
Raw Normal View History

require "helper"
require "inspec/resource"
require "inspec/resources/registry_key"
describe "Inspec::Resources::RegistryKey" do
it "read reg key with human readable name" do
resource = MockLoader.new(:windows).load_resource("registry_key", "Task Scheduler", 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Schedule')
2015-09-22 16:33:05 +00:00
_(resource.Start).must_equal 2
end
it "read reg key without human readable name" do
resource_without_name = MockLoader.new(:windows).load_resource("registry_key", 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Schedule')
2015-09-22 16:33:05 +00:00
_(resource_without_name.Start).must_equal 2
end
it "supports array syntax for keys with periods in them" do
resource = MockLoader.new(:windows).load_resource("registry_key", 'HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Schedule')
_(resource.send(:[], "key.with.period")).must_equal 12345
end
it "generates a proper path from options" do
resource = MockLoader.new(:windows).load_resource(
"registry_key",
"Test 1",
{ hive: "my_hive", key: '\\my_prefixed_key' }
)
_(resource.send(:generate_registry_key_path_from_options)).must_equal 'my_hive\\my_prefixed_key'
end
it "generates a proper path from options when the key has no leading slash" do
resource = MockLoader.new(:windows).load_resource(
"registry_key",
"Test 1",
{ hive: "my_hive", key: "key_with_no_slash" }
)
_(resource.send(:generate_registry_key_path_from_options)).must_equal 'my_hive\\key_with_no_slash'
end
end