chef 16.1.16-universal-mingw32 → 16.3.45-universal-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile +6 -7
- data/README.md +3 -3
- data/Rakefile +3 -16
- data/chef-universal-mingw32.gemspec +2 -2
- data/chef.gemspec +7 -6
- data/lib/chef/application.rb +12 -0
- data/lib/chef/application/apply.rb +2 -1
- data/lib/chef/application/base.rb +1 -1
- data/lib/chef/application/client.rb +1 -1
- data/lib/chef/application/windows_service_manager.rb +1 -1
- data/lib/chef/{whitelist.rb → attribute_allowlist.rb} +11 -11
- data/lib/chef/{blacklist.rb → attribute_blocklist.rb} +9 -9
- data/lib/chef/chef_fs/data_handler/data_bag_item_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/organization_data_handler.rb +1 -2
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_file.rb +2 -2
- data/lib/chef/chef_fs/file_system/chef_server/cookbooks_dir.rb +1 -5
- data/lib/chef/chef_fs/file_system/repository/base_file.rb +1 -0
- data/lib/chef/chef_fs/parallelizer/parallel_enumerable.rb +1 -1
- data/lib/chef/chef_fs/path_utils.rb +1 -1
- data/lib/chef/client.rb +3 -3
- data/lib/chef/cookbook/chefignore.rb +1 -1
- data/lib/chef/cookbook/metadata.rb +1 -1
- data/lib/chef/cookbook/remote_file_vendor.rb +1 -3
- data/lib/chef/cookbook/syntax_check.rb +1 -2
- data/lib/chef/cookbook_loader.rb +15 -29
- data/lib/chef/cookbook_version.rb +2 -2
- data/lib/chef/data_bag.rb +5 -6
- data/lib/chef/deprecated.rb +12 -0
- data/lib/chef/digester.rb +3 -2
- data/lib/chef/dsl/platform_introspection.rb +2 -0
- data/lib/chef/environment.rb +1 -2
- data/lib/chef/exceptions.rb +3 -0
- data/lib/chef/file_access_control.rb +1 -1
- data/lib/chef/file_access_control/windows.rb +2 -2
- data/lib/chef/file_content_management/deploy/mv_unix.rb +1 -1
- data/lib/chef/formatters/error_inspectors/compile_error_inspector.rb +1 -1
- data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +3 -3
- data/lib/chef/handler.rb +2 -0
- data/lib/chef/http.rb +27 -13
- data/lib/chef/http/authenticator.rb +3 -1
- data/lib/chef/http/http_request.rb +1 -1
- data/lib/chef/http/json_output.rb +1 -1
- data/lib/chef/http/ssl_policies.rb +18 -0
- data/lib/chef/knife.rb +5 -5
- data/lib/chef/knife/bootstrap.rb +19 -19
- data/lib/chef/knife/bootstrap/templates/chef-full.erb +9 -9
- data/lib/chef/knife/bootstrap/train_connector.rb +1 -0
- data/lib/chef/knife/client_bulk_delete.rb +1 -1
- data/lib/chef/knife/config_get.rb +2 -1
- data/lib/chef/knife/config_list_profiles.rb +4 -1
- data/lib/chef/knife/config_use_profile.rb +15 -5
- data/lib/chef/knife/configure.rb +1 -1
- data/lib/chef/knife/cookbook_delete.rb +1 -1
- data/lib/chef/knife/cookbook_upload.rb +6 -14
- data/lib/chef/knife/core/bootstrap_context.rb +1 -1
- data/lib/chef/knife/core/cookbook_scm_repo.rb +1 -1
- data/lib/chef/knife/core/gem_glob_loader.rb +1 -1
- data/lib/chef/knife/core/hashed_command_loader.rb +1 -0
- data/lib/chef/knife/core/subcommand_loader.rb +20 -1
- data/lib/chef/knife/core/ui.rb +8 -2
- data/lib/chef/knife/core/windows_bootstrap_context.rb +2 -3
- data/lib/chef/knife/data_bag_create.rb +1 -1
- data/lib/chef/knife/node_bulk_delete.rb +1 -1
- data/lib/chef/knife/node_run_list_remove.rb +1 -1
- data/lib/chef/knife/rehash.rb +3 -21
- data/lib/chef/knife/role_bulk_delete.rb +1 -1
- data/lib/chef/knife/ssh.rb +6 -2
- data/lib/chef/knife/supermarket_share.rb +1 -1
- data/lib/chef/knife/supermarket_unshare.rb +1 -1
- data/lib/chef/log.rb +8 -3
- data/{spec/functional/resource/base.rb → lib/chef/mixin/chef_utils_wiring.rb} +24 -12
- data/{spec/unit/log_spec.rb → lib/chef/mixin/default_paths.rb} +13 -5
- data/lib/chef/mixin/openssl_helper.rb +27 -5
- data/lib/chef/mixin/path_sanity.rb +5 -4
- data/lib/chef/mixin/securable.rb +2 -2
- data/lib/chef/mixin/shell_out.rb +4 -188
- data/lib/chef/mixin/template.rb +1 -0
- data/lib/chef/mixin/which.rb +6 -3
- data/lib/chef/mixins.rb +1 -0
- data/lib/chef/node.rb +36 -12
- data/lib/chef/node_map.rb +21 -18
- data/lib/chef/platform/service_helpers.rb +31 -28
- data/lib/chef/powershell.rb +1 -1
- data/lib/chef/provider/batch.rb +3 -10
- data/lib/chef/provider/cron.rb +2 -14
- data/lib/chef/provider/execute.rb +2 -1
- data/lib/chef/provider/git.rb +12 -4
- data/lib/chef/provider/group/dscl.rb +2 -2
- data/lib/chef/provider/group/windows.rb +1 -1
- data/lib/chef/provider/ifconfig.rb +7 -7
- data/lib/chef/provider/mount/aix.rb +1 -1
- data/lib/chef/provider/mount/solaris.rb +0 -1
- data/lib/chef/provider/mount/windows.rb +2 -2
- data/lib/chef/provider/noop.rb +1 -1
- data/lib/chef/provider/package/openbsd.rb +1 -1
- data/lib/chef/provider/package/portage.rb +2 -2
- data/lib/chef/provider/package/powershell.rb +6 -2
- data/lib/chef/provider/package/rubygems.rb +2 -2
- data/lib/chef/provider/package/snap.rb +97 -29
- data/lib/chef/provider/package/windows.rb +9 -4
- data/lib/chef/provider/package/windows/msi.rb +3 -3
- data/lib/chef/provider/package/windows/registry_uninstall_entry.rb +1 -1
- data/lib/chef/provider/package/zypper.rb +0 -1
- data/lib/chef/provider/powershell_script.rb +10 -14
- data/lib/chef/provider/remote_file/http.rb +4 -1
- data/lib/chef/provider/script.rb +4 -75
- data/lib/chef/provider/service.rb +2 -2
- data/lib/chef/provider/service/arch.rb +1 -1
- data/lib/chef/provider/service/debian.rb +2 -2
- data/lib/chef/provider/service/openbsd.rb +4 -4
- data/lib/chef/provider/service/redhat.rb +1 -1
- data/lib/chef/provider/service/windows.rb +1 -1
- data/lib/chef/provider/subversion.rb +2 -2
- data/lib/chef/provider/user/dscl.rb +4 -4
- data/lib/chef/provider/user/linux.rb +3 -3
- data/lib/chef/provider/user/mac.rb +5 -5
- data/lib/chef/provider/windows_script.rb +87 -25
- data/lib/chef/provider/yum_repository.rb +1 -1
- data/lib/chef/provider/zypper_repository.rb +31 -11
- data/lib/chef/resource.rb +24 -11
- data/lib/chef/resource/alternatives.rb +1 -1
- data/lib/chef/resource/apt_package.rb +1 -1
- data/lib/chef/resource/archive_file.rb +28 -8
- data/lib/chef/resource/bash.rb +0 -1
- data/lib/chef/resource/batch.rb +4 -2
- data/lib/chef/resource/build_essential.rb +2 -2
- data/lib/chef/resource/chef_client_scheduled_task.rb +14 -2
- data/lib/chef/resource/chef_gem.rb +57 -21
- data/lib/chef/resource/chocolatey_feature.rb +1 -2
- data/lib/chef/resource/cron/_cron_shared.rb +98 -0
- data/lib/chef/resource/cron/cron.rb +46 -0
- data/lib/chef/resource/{cron_d.rb → cron/cron_d.rb} +7 -87
- data/lib/chef/resource/cron_access.rb +13 -5
- data/lib/chef/resource/csh.rb +0 -1
- data/lib/chef/resource/dmg_package.rb +2 -2
- data/lib/chef/resource/execute.rb +479 -9
- data/lib/chef/resource/file.rb +1 -1
- data/lib/chef/resource/freebsd_package.rb +1 -1
- data/lib/chef/resource/gem_package.rb +35 -2
- data/lib/chef/resource/helpers/cron_validations.rb +6 -3
- data/lib/chef/resource/homebrew_package.rb +30 -1
- data/lib/chef/resource/homebrew_update.rb +107 -0
- data/lib/chef/resource/hostname.rb +23 -36
- data/lib/chef/resource/kernel_module.rb +14 -1
- data/lib/chef/resource/launchd.rb +1 -1
- data/lib/chef/resource/lwrp_base.rb +1 -0
- data/lib/chef/resource/macos_userdefaults.rb +176 -61
- data/lib/chef/resource/mount.rb +1 -1
- data/lib/chef/resource/openssl_x509_certificate.rb +11 -14
- data/lib/chef/resource/openssl_x509_crl.rb +1 -2
- data/lib/chef/resource/perl.rb +0 -1
- data/lib/chef/resource/plist.rb +23 -4
- data/lib/chef/resource/powershell_script.rb +4 -2
- data/lib/chef/resource/python.rb +0 -1
- data/lib/chef/resource/remote_file.rb +26 -10
- data/lib/chef/resource/ruby.rb +0 -1
- data/lib/chef/resource/service.rb +2 -2
- data/lib/chef/resource/ssh_known_hosts_entry.rb +16 -1
- data/lib/chef/resource/sudo.rb +30 -3
- data/lib/chef/resource/swap_file.rb +17 -0
- data/lib/chef/resource/template.rb +1 -1
- data/lib/chef/resource/timezone.rb +15 -0
- data/lib/chef/resource/user_ulimit.rb +1 -1
- data/lib/chef/resource/windows_ad_join.rb +30 -1
- data/lib/chef/resource/windows_audit_policy.rb +227 -0
- data/lib/chef/resource/windows_auto_run.rb +11 -0
- data/lib/chef/resource/windows_certificate.rb +26 -0
- data/lib/chef/resource/windows_dns_record.rb +17 -0
- data/lib/chef/resource/windows_firewall_profile.rb +197 -0
- data/lib/chef/resource/windows_font.rb +3 -3
- data/lib/chef/resource/windows_package.rb +1 -1
- data/lib/chef/resource/windows_pagefile.rb +1 -1
- data/lib/chef/resource/windows_script.rb +2 -16
- data/lib/chef/resource/windows_security_policy.rb +67 -36
- data/lib/chef/resource/windows_shortcut.rb +1 -2
- data/lib/chef/resource/windows_task.rb +4 -4
- data/lib/chef/resource/windows_user_privilege.rb +30 -7
- data/lib/chef/resource/yum_repository.rb +9 -9
- data/lib/chef/resource_inspector.rb +7 -1
- data/lib/chef/resources.rb +5 -2
- data/lib/chef/role.rb +1 -2
- data/lib/chef/search/query.rb +1 -1
- data/lib/chef/server_api_versions.rb +4 -0
- data/lib/chef/shell/shell_session.rb +2 -0
- data/lib/chef/util/diff.rb +2 -3
- data/lib/chef/util/windows/net_user.rb +1 -1
- data/lib/chef/util/windows/volume.rb +1 -1
- data/lib/chef/version.rb +2 -2
- data/lib/chef/win32/file.rb +1 -1
- data/lib/chef/win32/registry.rb +3 -4
- data/lib/chef/win32/security.rb +1 -1
- data/spec/data/lwrp/providers/buck_passer.rb +1 -1
- data/spec/data/lwrp/providers/buck_passer_2.rb +1 -1
- data/spec/data/lwrp/providers/embedded_resource_accesses_providers_scope.rb +1 -1
- data/spec/functional/knife/configure_spec.rb +1 -1
- data/spec/functional/knife/ssh_spec.rb +5 -16
- data/spec/functional/resource/aix_service_spec.rb +9 -2
- data/spec/functional/resource/aixinit_service_spec.rb +1 -2
- data/spec/functional/resource/apt_package_spec.rb +0 -1
- data/spec/functional/resource/bash_spec.rb +3 -2
- data/spec/functional/resource/bff_spec.rb +1 -1
- data/spec/functional/resource/chocolatey_package_spec.rb +4 -0
- data/spec/functional/resource/cron_spec.rb +20 -2
- data/spec/functional/resource/dnf_package_spec.rb +4 -1
- data/spec/functional/resource/execute_spec.rb +1 -1
- data/spec/functional/resource/git_spec.rb +23 -1
- data/spec/functional/resource/group_spec.rb +15 -3
- data/spec/functional/resource/ifconfig_spec.rb +9 -1
- data/spec/functional/resource/insserv_spec.rb +3 -3
- data/spec/functional/resource/link_spec.rb +2 -5
- data/spec/functional/resource/mount_spec.rb +9 -1
- data/spec/functional/resource/msu_package_spec.rb +9 -3
- data/spec/functional/resource/powershell_script_spec.rb +4 -4
- data/spec/functional/resource/remote_file_spec.rb +9 -15
- data/spec/functional/resource/rpm_spec.rb +1 -1
- data/spec/functional/resource/timezone_spec.rb +2 -0
- data/spec/functional/resource/windows_package_spec.rb +0 -1
- data/spec/functional/resource/windows_path_spec.rb +4 -0
- data/spec/functional/resource/windows_security_policy_spec.rb +0 -1
- data/spec/functional/resource/windows_service_spec.rb +4 -0
- data/spec/functional/resource/windows_task_spec.rb +12 -11
- data/spec/functional/resource/windows_user_privilege_spec.rb +1 -2
- data/spec/functional/resource/yum_package_spec.rb +4 -1
- data/spec/functional/resource/zypper_package_spec.rb +4 -1
- data/spec/functional/run_lock_spec.rb +2 -1
- data/spec/functional/shell_spec.rb +5 -6
- data/spec/functional/util/powershell/cmdlet_spec.rb +1 -1
- data/spec/functional/version_spec.rb +1 -1
- data/spec/functional/win32/crypto_spec.rb +1 -1
- data/spec/integration/knife/config_list_profiles_spec.rb +30 -2
- data/spec/integration/knife/config_use_profile_spec.rb +55 -2
- data/spec/integration/knife/cookbook_upload_spec.rb +28 -1
- data/spec/integration/knife/data_bag_from_file_spec.rb +1 -1
- data/spec/integration/knife/environment_from_file_spec.rb +1 -1
- data/spec/integration/knife/node_from_file_spec.rb +1 -1
- data/spec/integration/knife/role_from_file_spec.rb +1 -1
- data/spec/integration/recipes/accumulator_spec.rb +1 -1
- data/spec/integration/recipes/lwrp_inline_resources_spec.rb +1 -1
- data/spec/integration/recipes/lwrp_spec.rb +1 -1
- data/spec/integration/recipes/notifies_spec.rb +1 -1
- data/spec/integration/recipes/notifying_block_spec.rb +1 -1
- data/spec/integration/recipes/recipe_dsl_spec.rb +5 -1
- data/spec/integration/recipes/resource_converge_if_changed_spec.rb +2 -0
- data/spec/integration/recipes/resource_load_spec.rb +4 -2
- data/spec/integration/recipes/unified_mode_spec.rb +1 -1
- data/spec/integration/recipes/use_partial_spec.rb +1 -1
- data/spec/scripts/ssl-serve.rb +1 -1
- data/spec/spec_helper.rb +10 -4
- data/spec/support/chef_helpers.rb +1 -20
- data/spec/support/platform_helpers.rb +1 -3
- data/spec/support/platforms/win32/spec_service.rb +1 -1
- data/spec/support/shared/functional/execute_resource.rb +1 -1
- data/spec/support/shared/functional/file_resource.rb +0 -1
- data/spec/support/shared/functional/securable_resource.rb +1 -2
- data/spec/support/shared/functional/securable_resource_with_reporting.rb +0 -1
- data/spec/support/shared/functional/windows_script.rb +2 -2
- data/spec/support/shared/integration/knife_support.rb +2 -9
- data/spec/support/shared/unit/application_dot_d.rb +0 -1
- data/spec/support/shared/unit/execute_resource.rb +1 -1
- data/spec/support/shared/unit/provider/file.rb +12 -8
- data/spec/unit/application/solo_spec.rb +4 -2
- data/spec/unit/application_spec.rb +11 -2
- data/spec/unit/chef_fs/config_spec.rb +2 -2
- data/spec/unit/chef_fs/diff_spec.rb +8 -8
- data/spec/unit/chef_fs/file_system/operation_failed_error_spec.rb +2 -4
- data/spec/unit/chef_fs/{parallelizer.rb → parallelizer_spec.rb} +1 -1
- data/spec/unit/client_spec.rb +4 -1
- data/spec/unit/cookbook/gem_installer_spec.rb +2 -1
- data/spec/unit/cookbook/synchronizer_spec.rb +26 -24
- data/spec/unit/data_bag_spec.rb +6 -3
- data/spec/unit/data_collector_spec.rb +1 -1
- data/spec/unit/decorator_spec.rb +23 -23
- data/spec/unit/dsl/platform_introspection_spec.rb +1 -0
- data/spec/unit/environment_spec.rb +5 -1
- data/spec/unit/event_dispatch/dispatcher_spec.rb +3 -0
- data/spec/unit/guard_interpreter_spec.rb +1 -1
- data/spec/unit/http/api_versions_spec.rb +20 -2
- data/spec/unit/http/ssl_policies_spec.rb +20 -0
- data/spec/unit/json_compat_spec.rb +1 -1
- data/spec/unit/knife/bootstrap_spec.rb +5 -8
- data/spec/unit/knife/cookbook_download_spec.rb +2 -2
- data/spec/unit/knife/cookbook_show_spec.rb +6 -7
- data/spec/unit/knife/cookbook_upload_spec.rb +7 -10
- data/spec/unit/knife/data_bag_edit_spec.rb +1 -1
- data/spec/unit/log/syslog_spec.rb +6 -10
- data/spec/unit/log/winevt_spec.rb +21 -13
- data/spec/unit/lwrp_spec.rb +9 -6
- data/spec/unit/mixin/{path_sanity_spec.rb → default_paths_spec.rb} +14 -14
- data/spec/unit/mixin/powershell_exec_spec.rb +1 -1
- data/spec/unit/mixin/powershell_out_spec.rb +2 -4
- data/spec/unit/mixin/powershell_type_coercions_spec.rb +1 -1
- data/spec/unit/mixin/securable_spec.rb +0 -1
- data/spec/unit/mixin/shell_out_spec.rb +25 -26
- data/spec/unit/mixin/subclass_directive_spec.rb +2 -2
- data/spec/unit/mixin/unformatter_spec.rb +2 -2
- data/spec/unit/mixin/uris_spec.rb +1 -1
- data/spec/unit/mixin/user_context_spec.rb +1 -9
- data/spec/unit/mixin/which.rb +8 -0
- data/spec/unit/node_spec.rb +98 -11
- data/spec/unit/property_spec.rb +6 -6
- data/spec/unit/provider/batch_spec.rb +130 -0
- data/spec/unit/provider/cron/unix_spec.rb +1 -1
- data/spec/unit/provider/cron_spec.rb +9 -49
- data/spec/unit/provider/dsc_resource_spec.rb +22 -38
- data/spec/unit/provider/dsc_script_spec.rb +10 -10
- data/spec/unit/provider/execute_spec.rb +1 -8
- data/spec/unit/provider/git_spec.rb +3 -3
- data/spec/unit/provider/ifconfig_spec.rb +0 -1
- data/spec/unit/provider/mdadm_spec.rb +1 -3
- data/spec/unit/provider/package/dnf/python_helper_spec.rb +1 -1
- data/spec/unit/provider/package/openbsd_spec.rb +1 -1
- data/spec/unit/provider/package/pacman_spec.rb +17 -20
- data/spec/unit/provider/package/powershell_spec.rb +95 -86
- data/spec/unit/provider/package/rubygems_spec.rb +5 -10
- data/spec/unit/provider/package/smartos_spec.rb +1 -1
- data/spec/unit/provider/package/snap_spec.rb +1 -1
- data/spec/unit/provider/package/windows/registry_uninstall_entry_spec.rb +3 -3
- data/spec/unit/provider/package/windows_spec.rb +30 -53
- data/spec/unit/provider/powershell_script_spec.rb +3 -45
- data/spec/unit/provider/script_spec.rb +20 -110
- data/spec/unit/provider/service/redhat_spec.rb +1 -1
- data/spec/unit/provider/service/windows_spec.rb +2 -6
- data/spec/unit/provider/systemd_unit_spec.rb +28 -24
- data/spec/unit/provider/user/dscl_spec.rb +2 -2
- data/spec/unit/provider/windows_env_spec.rb +5 -4
- data/spec/unit/provider/zypper_repository_spec.rb +60 -10
- data/spec/unit/provider_spec.rb +1 -0
- data/spec/unit/resource/archive_file_spec.rb +11 -2
- data/spec/unit/resource/chef_client_cron_spec.rb +23 -7
- data/spec/unit/resource/chef_client_scheduled_task_spec.rb +17 -7
- data/spec/unit/resource/chef_client_systemd_timer_spec.rb +7 -4
- data/spec/unit/resource/cron_spec.rb +2 -2
- data/spec/unit/resource/execute_spec.rb +10 -0
- data/spec/unit/resource/file/verification_spec.rb +2 -1
- data/spec/unit/resource/helpers/cron_validations_spec.rb +5 -1
- data/spec/unit/resource/homebrew_update_spec.rb +30 -0
- data/spec/unit/resource/macos_user_defaults_spec.rb +103 -2
- data/spec/unit/resource/powershell_script_spec.rb +10 -15
- data/spec/unit/resource/timezone_spec.rb +1 -1
- data/spec/unit/resource/windows_audit_policy_spec.rb +64 -0
- data/spec/unit/resource/windows_dns_record_spec.rb +3 -3
- data/spec/unit/resource/windows_dns_zone_spec.rb +2 -2
- data/spec/unit/resource/windows_firewall_profile_spec.rb +77 -0
- data/spec/unit/resource/windows_package_spec.rb +1 -0
- data/spec/unit/resource/windows_task_spec.rb +1 -1
- data/spec/unit/resource/windows_uac_spec.rb +2 -2
- data/spec/unit/resource/yum_repository_spec.rb +21 -21
- data/spec/unit/resource_reporter_spec.rb +1 -1
- data/spec/unit/resource_spec.rb +84 -1
- data/spec/unit/role_spec.rb +23 -21
- data/spec/unit/run_context/cookbook_compiler_spec.rb +1 -1
- data/spec/unit/run_lock_spec.rb +1 -1
- data/spec/unit/scan_access_control_spec.rb +1 -1
- data/spec/unit/server_api_spec.rb +43 -16
- data/spec/unit/util/backup_spec.rb +1 -1
- data/spec/unit/util/diff_spec.rb +1 -15
- data/spec/unit/util/dsc/configuration_generator_spec.rb +1 -1
- data/spec/unit/util/powershell/ps_credential_spec.rb +2 -2
- data/spec/unit/util/selinux_spec.rb +2 -1
- data/spec/unit/util/threaded_job_queue_spec.rb +9 -0
- data/spec/unit/win32/security_spec.rb +4 -3
- metadata +68 -40
- data/lib/chef/resource/cron.rb +0 -157
@@ -112,7 +112,8 @@ describe Chef::Resource::File::Verification do
|
|
112
112
|
end
|
113
113
|
|
114
114
|
it "returns true if the command succeeds" do
|
115
|
-
|
115
|
+
test_command = platform_specific_verify_command("path")
|
116
|
+
v = Chef::Resource::File::Verification.new(parent_resource, test_command, {})
|
116
117
|
expect(v.verify(temp_path)).to eq(true)
|
117
118
|
end
|
118
119
|
|
@@ -34,8 +34,12 @@ describe Chef::ResourceHelpers::CronValidations do
|
|
34
34
|
expect(Chef::ResourceHelpers::CronValidations.validate_dow(8)).to be false
|
35
35
|
end
|
36
36
|
|
37
|
+
it "it accepts the string day with full name" do
|
38
|
+
expect(Chef::ResourceHelpers::CronValidations.validate_dow("monday")).to be true
|
39
|
+
end
|
40
|
+
|
37
41
|
it "returns false for an invalid string" do
|
38
|
-
expect(Chef::ResourceHelpers::CronValidations.validate_dow("
|
42
|
+
expect(Chef::ResourceHelpers::CronValidations.validate_dow("funday")).to be false
|
39
43
|
end
|
40
44
|
end
|
41
45
|
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe Chef::Resource::HomebrewUpdate do
|
4
|
+
let(:node) { Chef::Node.new }
|
5
|
+
let(:events) { Chef::EventDispatch::Dispatcher.new }
|
6
|
+
let(:run_context) { Chef::RunContext.new(node, {}, events) }
|
7
|
+
let(:resource) { Chef::Resource::HomebrewUpdate.new("update", run_context) }
|
8
|
+
|
9
|
+
let(:stamp_dir) { Dir.mktmpdir("brew_update_periodic") }
|
10
|
+
let(:stamp_file) { Dir.mktmpdir("apt_update_periodic") }
|
11
|
+
let(:brew_update_cmd) { %w{homebrew update} }
|
12
|
+
|
13
|
+
it "sets the default action as :periodic" do
|
14
|
+
expect(resource.action).to eql([:periodic])
|
15
|
+
end
|
16
|
+
|
17
|
+
it "supports :periodic, :update actions" do
|
18
|
+
expect { resource.action :periodic }.not_to raise_error
|
19
|
+
expect { resource.action :update }.not_to raise_error
|
20
|
+
end
|
21
|
+
|
22
|
+
it "default frequency is set to be 1 da1y" do
|
23
|
+
expect(resource.frequency).to eql(86_400)
|
24
|
+
end
|
25
|
+
|
26
|
+
it "frequency accepts integers" do
|
27
|
+
resource.frequency(400)
|
28
|
+
expect(resource.frequency).to eql(400)
|
29
|
+
end
|
30
|
+
end
|
@@ -20,16 +20,117 @@ require "spec_helper"
|
|
20
20
|
describe Chef::Resource::MacosUserDefaults do
|
21
21
|
|
22
22
|
let(:resource) { Chef::Resource::MacosUserDefaults.new("foo") }
|
23
|
+
let(:provider) { resource.provider_for_action(:write) }
|
23
24
|
|
24
25
|
it "has a resource name of :macos_userdefaults" do
|
25
|
-
expect(resource.resource_name).to
|
26
|
+
expect(resource.resource_name).to eq(:macos_userdefaults)
|
27
|
+
end
|
28
|
+
|
29
|
+
it "the domain property defaults to NSGlobalDomain" do
|
30
|
+
expect(resource.domain).to eq("NSGlobalDomain")
|
31
|
+
end
|
32
|
+
|
33
|
+
it "the value property coerces keys in hashes to strings so we can compare them with plist data" do
|
34
|
+
resource.value "User": "/Library/Managed Installs/way_fake.log"
|
35
|
+
expect(resource.value).to eq({ "User" => "/Library/Managed Installs/way_fake.log" })
|
36
|
+
end
|
37
|
+
|
38
|
+
it "the host property defaults to nil" do
|
39
|
+
expect(resource.host).to be_nil
|
40
|
+
end
|
41
|
+
|
42
|
+
it "the sudo property defaults to false" do
|
43
|
+
expect(resource.sudo).to be false
|
26
44
|
end
|
27
45
|
|
28
46
|
it "sets the default action as :write" do
|
29
|
-
expect(resource.action).to
|
47
|
+
expect(resource.action).to eq([:write])
|
30
48
|
end
|
31
49
|
|
32
50
|
it "supports :write action" do
|
33
51
|
expect { resource.action :write }.not_to raise_error
|
34
52
|
end
|
53
|
+
|
54
|
+
describe "#defaults_export_cmd" do
|
55
|
+
it "exports NSGlobalDomain if no domain is set" do
|
56
|
+
expect(provider.defaults_export_cmd(resource)).to eq(["/usr/bin/defaults", "export", "NSGlobalDomain", "-"])
|
57
|
+
end
|
58
|
+
|
59
|
+
it "exports a provided domain" do
|
60
|
+
resource.domain "com.tim"
|
61
|
+
expect(provider.defaults_export_cmd(resource)).to eq(["/usr/bin/defaults", "export", "com.tim", "-"])
|
62
|
+
end
|
63
|
+
|
64
|
+
it "sets -currentHost if host is 'current'" do
|
65
|
+
resource.host "current"
|
66
|
+
expect(provider.defaults_export_cmd(resource)).to eq(["/usr/bin/defaults", "-currentHost", "export", "NSGlobalDomain", "-"])
|
67
|
+
end
|
68
|
+
|
69
|
+
it "sets -host 'tim-laptop if host is 'tim-laptop'" do
|
70
|
+
resource.host "tim-laptop"
|
71
|
+
expect(provider.defaults_export_cmd(resource)).to eq(["/usr/bin/defaults", "-host", "tim-laptop", "export", "NSGlobalDomain", "-"])
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
describe "#defaults_modify_cmd" do
|
76
|
+
# avoid needing to set these required values over and over. We'll overwrite them where necessary
|
77
|
+
before do
|
78
|
+
resource.key = "foo"
|
79
|
+
resource.value = "bar"
|
80
|
+
end
|
81
|
+
|
82
|
+
it "writes to NSGlobalDomain if domain isn't specified" do
|
83
|
+
expect(provider.defaults_modify_cmd).to eq(["/usr/bin/defaults", "write", "NSGlobalDomain", "foo", "-string", "bar"])
|
84
|
+
end
|
85
|
+
|
86
|
+
it "uses the domain property if set" do
|
87
|
+
resource.domain = "MyCustomDomain"
|
88
|
+
expect(provider.defaults_modify_cmd).to eq(["/usr/bin/defaults", "write", "MyCustomDomain", "foo", "-string", "bar"])
|
89
|
+
end
|
90
|
+
|
91
|
+
it "sets host specific values using host property" do
|
92
|
+
resource.host = "tims_laptop"
|
93
|
+
expect(provider.defaults_modify_cmd).to eq(["/usr/bin/defaults", "-host", "tims_laptop", "write", "NSGlobalDomain", "foo", "-string", "bar"])
|
94
|
+
end
|
95
|
+
|
96
|
+
it "if host is set to :current it passes CurrentHost" do
|
97
|
+
resource.host = :current
|
98
|
+
expect(provider.defaults_modify_cmd).to eq(["/usr/bin/defaults", "-currentHost", "write", "NSGlobalDomain", "foo", "-string", "bar"])
|
99
|
+
end
|
100
|
+
|
101
|
+
it "raises ArgumentError if bool is specified, but the value can't be made into a bool" do
|
102
|
+
resource.type "bool"
|
103
|
+
expect { provider.defaults_modify_cmd }.to raise_error(ArgumentError)
|
104
|
+
end
|
105
|
+
|
106
|
+
it "autodetects array type and passes individual values" do
|
107
|
+
resource.value = %w{one two three}
|
108
|
+
expect(provider.defaults_modify_cmd).to eq(["/usr/bin/defaults", "write", "NSGlobalDomain", "foo", "-array", "one", "two", "three"])
|
109
|
+
end
|
110
|
+
|
111
|
+
it "autodetects string type and passes a single value" do
|
112
|
+
resource.value = "one"
|
113
|
+
expect(provider.defaults_modify_cmd).to eq(["/usr/bin/defaults", "write", "NSGlobalDomain", "foo", "-string", "one"])
|
114
|
+
end
|
115
|
+
|
116
|
+
it "autodetects integer type and passes a single value" do
|
117
|
+
resource.value = 1
|
118
|
+
expect(provider.defaults_modify_cmd).to eq(["/usr/bin/defaults", "write", "NSGlobalDomain", "foo", "-int", 1])
|
119
|
+
end
|
120
|
+
|
121
|
+
it "autodetects boolean type from TrueClass value and passes a 'TRUE' string" do
|
122
|
+
resource.value = true
|
123
|
+
expect(provider.defaults_modify_cmd).to eq(["/usr/bin/defaults", "write", "NSGlobalDomain", "foo", "-bool", "TRUE"])
|
124
|
+
end
|
125
|
+
|
126
|
+
it "autodetects boolean type from FalseClass value and passes a 'FALSE' string" do
|
127
|
+
resource.value = false
|
128
|
+
expect(provider.defaults_modify_cmd).to eq(["/usr/bin/defaults", "write", "NSGlobalDomain", "foo", "-bool", "FALSE"])
|
129
|
+
end
|
130
|
+
|
131
|
+
it "autodetects dict type from Hash value and flattens keys & values" do
|
132
|
+
resource.value = { "foo" => "bar" }
|
133
|
+
expect(provider.defaults_modify_cmd).to eq(["/usr/bin/defaults", "write", "NSGlobalDomain", "foo", "-dict", "foo", "bar"])
|
134
|
+
end
|
135
|
+
end
|
35
136
|
end
|
@@ -136,23 +136,18 @@ describe Chef::Resource::PowershellScript do
|
|
136
136
|
it_behaves_like "a Windows script resource"
|
137
137
|
end
|
138
138
|
|
139
|
-
|
139
|
+
describe "#flags" do
|
140
140
|
let(:resource) { @resource }
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
flags = "USER FLAGS"
|
148
|
-
resource.flags flags
|
149
|
-
expect(resource.flags).to eql(default + " " + flags)
|
150
|
-
end
|
141
|
+
|
142
|
+
it "appends user's flags to the defaults" do
|
143
|
+
flags = %q{-Lunch "tacos"}
|
144
|
+
resource.flags = flags
|
145
|
+
|
146
|
+
expect(resource.flags).to eq("#{resource.default_flags} #{flags}")
|
151
147
|
end
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
end
|
148
|
+
|
149
|
+
it "uses the defaults when user doesn't provide flags" do
|
150
|
+
expect(resource.flags).to eq(resource.default_flags)
|
156
151
|
end
|
157
152
|
end
|
158
153
|
end
|
@@ -34,6 +34,6 @@ describe Chef::Resource::Timezone do
|
|
34
34
|
|
35
35
|
it "supports the :set action only" do
|
36
36
|
expect { resource.action :set }.not_to raise_error
|
37
|
-
expect { resource.action :unset }.to raise_error
|
37
|
+
expect { resource.action :unset }.to raise_error(Chef::Exceptions::ValidationFailed)
|
38
38
|
end
|
39
39
|
end
|
@@ -0,0 +1,64 @@
|
|
1
|
+
#
|
2
|
+
# Copyright:: Copyright (c) Chef Software Inc.
|
3
|
+
# License:: Apache License, Version 2.0
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
#
|
17
|
+
|
18
|
+
require "spec_helper"
|
19
|
+
|
20
|
+
describe Chef::Resource::WindowsAuditPolicy do
|
21
|
+
let(:resource) { Chef::Resource::WindowsAuditPolicy.new("fakey_fakerton") }
|
22
|
+
|
23
|
+
it "sets resource name as :windows_audit_policy" do
|
24
|
+
expect(resource.resource_name).to eql(:windows_audit_policy)
|
25
|
+
end
|
26
|
+
|
27
|
+
it "expects crash_on_audit_fail to have a true or false value if entered" do
|
28
|
+
expect { resource.crash_on_audit_fail "not_a_true_or_false" }.to raise_error(Chef::Exceptions::ValidationFailed)
|
29
|
+
end
|
30
|
+
|
31
|
+
it "expects full_privilege_auditing to have a true or false value if entered" do
|
32
|
+
expect { resource.full_privilege_auditing "not_a_true_or_false" }.to raise_error(Chef::Exceptions::ValidationFailed)
|
33
|
+
end
|
34
|
+
|
35
|
+
it "expects audit_base_objects to have a true or false value if entered" do
|
36
|
+
expect { resource.audit_base_objects "not_a_true_or_false" }.to raise_error(Chef::Exceptions::ValidationFailed)
|
37
|
+
end
|
38
|
+
|
39
|
+
it "expects audit_base_directories to have a true or false value if entered" do
|
40
|
+
expect { resource.audit_base_directories "not_a_true_or_false" }.to raise_error(Chef::Exceptions::ValidationFailed)
|
41
|
+
end
|
42
|
+
|
43
|
+
it "expects success property to have a true or false value if entered" do
|
44
|
+
expect { resource.success "not_a_true_or_false" }.to raise_error(Chef::Exceptions::ValidationFailed)
|
45
|
+
end
|
46
|
+
|
47
|
+
it "expects failure property to have a true or false value if entered" do
|
48
|
+
expect { resource.failure "not_a_true_or_false" }.to raise_error(Chef::Exceptions::ValidationFailed)
|
49
|
+
end
|
50
|
+
|
51
|
+
Chef::Resource::WindowsAuditPolicy::WIN_AUDIT_SUBCATEGORIES.each do |val|
|
52
|
+
it "the subcategory property accepts :#{val}" do
|
53
|
+
expect { resource.subcategory val }.not_to raise_error
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
it "the resource raises an ArgumentError if invalid subcategory property is set" do
|
58
|
+
expect { resource.subcategory "Logount" }.to raise_error(ArgumentError)
|
59
|
+
end
|
60
|
+
|
61
|
+
it "sets the default action as :set" do
|
62
|
+
expect(resource.action).to eql([:set])
|
63
|
+
end
|
64
|
+
end
|
@@ -29,15 +29,15 @@ describe Chef::Resource::WindowsDnsRecord do
|
|
29
29
|
end
|
30
30
|
|
31
31
|
it "the record_type property accepts 'CNAME'" do
|
32
|
-
expect { resource.record_type "CNAME" }.not_to raise_error
|
32
|
+
expect { resource.record_type "CNAME" }.not_to raise_error
|
33
33
|
end
|
34
34
|
|
35
35
|
it "the record_type property accepts 'ARecord'" do
|
36
|
-
expect { resource.record_type "ARecord" }.not_to raise_error
|
36
|
+
expect { resource.record_type "ARecord" }.not_to raise_error
|
37
37
|
end
|
38
38
|
|
39
39
|
it "the record_type property accepts 'PTR'" do
|
40
|
-
expect { resource.record_type "PTR" }.not_to raise_error
|
40
|
+
expect { resource.record_type "PTR" }.not_to raise_error
|
41
41
|
end
|
42
42
|
|
43
43
|
it "the resource raises an ArgumentError if invalid record_type is set" do
|
@@ -29,11 +29,11 @@ describe Chef::Resource::WindowsDnsZone do
|
|
29
29
|
end
|
30
30
|
|
31
31
|
it "the server_type property accepts 'Standalone'" do
|
32
|
-
expect { resource.server_type "Standalone" }.not_to raise_error
|
32
|
+
expect { resource.server_type "Standalone" }.not_to raise_error
|
33
33
|
end
|
34
34
|
|
35
35
|
it "the server_type property accepts 'Domain'" do
|
36
|
-
expect { resource.server_type "Domain" }.not_to raise_error
|
36
|
+
expect { resource.server_type "Domain" }.not_to raise_error
|
37
37
|
end
|
38
38
|
|
39
39
|
it "the resource raises an ArgumentError if invalid server_type is set" do
|
@@ -0,0 +1,77 @@
|
|
1
|
+
#
|
2
|
+
# Copyright:: Copyright (c) Chef Software Inc.
|
3
|
+
# License:: Apache License, Version 2.0
|
4
|
+
#
|
5
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
6
|
+
# you may not use this file except in compliance with the License.
|
7
|
+
# You may obtain a copy of the License at
|
8
|
+
#
|
9
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
10
|
+
#
|
11
|
+
# Unless required by applicable law or agreed to in writing, software
|
12
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
13
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
14
|
+
# See the License for the specific language governing permissions and
|
15
|
+
# limitations under the License.
|
16
|
+
#
|
17
|
+
|
18
|
+
require "spec_helper"
|
19
|
+
|
20
|
+
describe Chef::Resource::WindowsFirewallProfile do
|
21
|
+
let(:resource) { Chef::Resource::WindowsFirewallProfile.new("fakey_fakerton") }
|
22
|
+
|
23
|
+
it "sets resource name as :windows_firewall_profile" do
|
24
|
+
expect(resource.resource_name).to eql(:windows_firewall_profile)
|
25
|
+
end
|
26
|
+
|
27
|
+
%w{ Domain Private Public }.each do |this_profile|
|
28
|
+
it "The profile accepts values for the \"#{this_profile}\" Profile" do
|
29
|
+
expect { resource.profile this_profile }.not_to raise_error
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
it "the profile property does not accept bad profile names" do
|
34
|
+
expect { resource.profile "Special" }.to raise_error(Chef::Exceptions::ValidationFailed)
|
35
|
+
end
|
36
|
+
|
37
|
+
it "the resource's default_inbound_action property only strings Block, Allow, or NotConfigured" do
|
38
|
+
expect { resource.default_inbound_action "AllowSome" }.to raise_error(ArgumentError)
|
39
|
+
expect { resource.default_inbound_action "Block" }.not_to raise_error
|
40
|
+
end
|
41
|
+
it "the resource's default_outbound_action property only accepts strings Block, Allow, or NotConfigured" do
|
42
|
+
expect { resource.default_outbound_action "BlockMost" }.to raise_error(ArgumentError)
|
43
|
+
expect { resource.default_outbound_action "Allow" }.not_to raise_error
|
44
|
+
end
|
45
|
+
it "the resource's allow_inbound_rules property only accepts strings true, false, or NotConfigured" do
|
46
|
+
expect { resource.allow_inbound_rules "Yes" }.to raise_error(ArgumentError)
|
47
|
+
expect { resource.allow_inbound_rules true }.not_to raise_error
|
48
|
+
end
|
49
|
+
it "the resource's allow_local_firewall_rules property only accepts strings true, false, or NotConfigured" do
|
50
|
+
expect { resource.allow_local_firewall_rules "No" }.to raise_error(ArgumentError)
|
51
|
+
expect { resource.allow_local_firewall_rules false }.not_to raise_error
|
52
|
+
end
|
53
|
+
it "the resource's allow_local_ipsec_rules property only accepts strings true, false, or NotConfigured" do
|
54
|
+
expect { resource.allow_local_ipsec_rules "Yes" }.to raise_error(ArgumentError)
|
55
|
+
expect { resource.allow_local_ipsec_rules true }.not_to raise_error
|
56
|
+
end
|
57
|
+
it "the resource's allow_user_apps property only accepts strings true, false, or NotConfigured" do
|
58
|
+
expect { resource.allow_user_apps "No" }.to raise_error(ArgumentError)
|
59
|
+
expect { resource.allow_user_apps false }.not_to raise_error
|
60
|
+
end
|
61
|
+
it "the resource's allow_user_ports property only accepts strings true, false, or NotConfigured" do
|
62
|
+
expect { resource.allow_user_ports "Nope" }.to raise_error(ArgumentError)
|
63
|
+
expect { resource.allow_user_ports "NotConfigured" }.not_to raise_error
|
64
|
+
end
|
65
|
+
it "the resource's allow_unicast_response property only accepts strings true, false, or NotConfigured" do
|
66
|
+
expect { resource.allow_unicast_response "True" }.to raise_error(ArgumentError)
|
67
|
+
expect { resource.allow_unicast_response true }.not_to raise_error
|
68
|
+
end
|
69
|
+
it "the resource's display_notification property only accepts strings true, false, or NotConfigured" do
|
70
|
+
expect { resource.display_notification "False" }.to raise_error(ArgumentError)
|
71
|
+
expect { resource.display_notification false }.not_to raise_error
|
72
|
+
end
|
73
|
+
|
74
|
+
it "sets the default action as :configure" do
|
75
|
+
expect(resource.action).to eql([:enable])
|
76
|
+
end
|
77
|
+
end
|
@@ -58,6 +58,7 @@ describe Chef::Resource::WindowsPackage, "initialize" do
|
|
58
58
|
expect { resource.installer_type :msi }.not_to raise_error
|
59
59
|
expect { resource.installer_type :nsis }.not_to raise_error
|
60
60
|
expect { resource.installer_type :wise }.not_to raise_error
|
61
|
+
expect { resource.installer_type :something_else_entirely }.to raise_error(Chef::Exceptions::ValidationFailed)
|
61
62
|
expect { resource.installer_type "msi" }.to raise_error(Chef::Exceptions::ValidationFailed)
|
62
63
|
end
|
63
64
|
|
@@ -144,7 +144,7 @@ describe Chef::Resource::WindowsTask, :windows_only do
|
|
144
144
|
resource.frequency :once
|
145
145
|
resource.random_delay "20"
|
146
146
|
resource.start_time "15:00"
|
147
|
-
expect { resource.after_created }.to_not raise_error
|
147
|
+
expect { resource.after_created }.to_not raise_error
|
148
148
|
end
|
149
149
|
|
150
150
|
it "raises error for invalid random_delay" do
|
@@ -26,7 +26,7 @@ describe Chef::Resource::WindowsUac do
|
|
26
26
|
|
27
27
|
%i{no_prompt secure_prompt_for_creds secure_prompt_for_consent prompt_for_creds prompt_for_consent prompt_for_consent_non_windows_binaries}.each do |val|
|
28
28
|
it "the consent_behavior_admins property accepts :#{val}" do
|
29
|
-
expect { resource.consent_behavior_admins val }.not_to raise_error
|
29
|
+
expect { resource.consent_behavior_admins val }.not_to raise_error
|
30
30
|
end
|
31
31
|
end
|
32
32
|
|
@@ -36,7 +36,7 @@ describe Chef::Resource::WindowsUac do
|
|
36
36
|
|
37
37
|
%i{auto_deny secure_prompt_for_creds prompt_for_creds}.each do |val|
|
38
38
|
it "the consent_behavior_users property accepts :#{val}" do
|
39
|
-
expect { resource.consent_behavior_users val }.not_to raise_error
|
39
|
+
expect { resource.consent_behavior_users val }.not_to raise_error
|
40
40
|
end
|
41
41
|
end
|
42
42
|
|
@@ -73,52 +73,52 @@ describe Chef::Resource::YumRepository do
|
|
73
73
|
end
|
74
74
|
|
75
75
|
it "the timeout property expects numeric Strings" do
|
76
|
-
expect { resource.timeout "123" }.not_to raise_error
|
76
|
+
expect { resource.timeout "123" }.not_to raise_error
|
77
77
|
expect { resource.timeout "123foo" }.to raise_error(ArgumentError)
|
78
78
|
end
|
79
79
|
|
80
80
|
it "the priority property expects numeric Strings from '1' to '99'" do
|
81
|
-
expect { resource.priority "99" }.not_to raise_error
|
82
|
-
expect { resource.priority "1" }.not_to raise_error
|
81
|
+
expect { resource.priority "99" }.not_to raise_error
|
82
|
+
expect { resource.priority "1" }.not_to raise_error
|
83
83
|
expect { resource.priority "100" }.to raise_error(ArgumentError)
|
84
84
|
expect { resource.priority "0" }.to raise_error(ArgumentError)
|
85
85
|
end
|
86
86
|
|
87
87
|
it "the failovermethod property accepts 'priority' or 'roundrobin'" do
|
88
|
-
expect { resource.failovermethod "priority" }.not_to raise_error
|
89
|
-
expect { resource.failovermethod "roundrobin" }.not_to raise_error
|
88
|
+
expect { resource.failovermethod "priority" }.not_to raise_error
|
89
|
+
expect { resource.failovermethod "roundrobin" }.not_to raise_error
|
90
90
|
expect { resource.failovermethod "bob" }.to raise_error(ArgumentError)
|
91
91
|
end
|
92
92
|
|
93
93
|
it "the http_caching property accepts 'packages', 'all', or 'none'" do
|
94
|
-
expect { resource.http_caching "packages" }.not_to raise_error
|
95
|
-
expect { resource.http_caching "all" }.not_to raise_error
|
96
|
-
expect { resource.http_caching "none" }.not_to raise_error
|
94
|
+
expect { resource.http_caching "packages" }.not_to raise_error
|
95
|
+
expect { resource.http_caching "all" }.not_to raise_error
|
96
|
+
expect { resource.http_caching "none" }.not_to raise_error
|
97
97
|
expect { resource.http_caching "bob" }.to raise_error(ArgumentError)
|
98
98
|
end
|
99
99
|
|
100
100
|
it "the metadata_expire property accepts a time value or 'never'" do
|
101
|
-
expect { resource.metadata_expire "100" }.not_to raise_error
|
102
|
-
expect { resource.metadata_expire "100d" }.not_to raise_error
|
103
|
-
expect { resource.metadata_expire "100h" }.not_to raise_error
|
104
|
-
expect { resource.metadata_expire "100m" }.not_to raise_error
|
105
|
-
expect { resource.metadata_expire "never" }.not_to raise_error
|
101
|
+
expect { resource.metadata_expire "100" }.not_to raise_error
|
102
|
+
expect { resource.metadata_expire "100d" }.not_to raise_error
|
103
|
+
expect { resource.metadata_expire "100h" }.not_to raise_error
|
104
|
+
expect { resource.metadata_expire "100m" }.not_to raise_error
|
105
|
+
expect { resource.metadata_expire "never" }.not_to raise_error
|
106
106
|
expect { resource.metadata_expire "100s" }.to raise_error(ArgumentError)
|
107
107
|
end
|
108
108
|
|
109
109
|
it "the mirror_expire property accepts a time value" do
|
110
|
-
expect { resource.mirror_expire "100" }.not_to raise_error
|
111
|
-
expect { resource.mirror_expire "100d" }.not_to raise_error
|
112
|
-
expect { resource.mirror_expire "100h" }.not_to raise_error
|
113
|
-
expect { resource.mirror_expire "100m" }.not_to raise_error
|
110
|
+
expect { resource.mirror_expire "100" }.not_to raise_error
|
111
|
+
expect { resource.mirror_expire "100d" }.not_to raise_error
|
112
|
+
expect { resource.mirror_expire "100h" }.not_to raise_error
|
113
|
+
expect { resource.mirror_expire "100m" }.not_to raise_error
|
114
114
|
expect { resource.mirror_expire "never" }.to raise_error(ArgumentError)
|
115
115
|
end
|
116
116
|
|
117
117
|
it "the mirrorlist_expire property accepts a time value" do
|
118
|
-
expect { resource.mirrorlist_expire "100" }.not_to raise_error
|
119
|
-
expect { resource.mirrorlist_expire "100d" }.not_to raise_error
|
120
|
-
expect { resource.mirrorlist_expire "100h" }.not_to raise_error
|
121
|
-
expect { resource.mirrorlist_expire "100m" }.not_to raise_error
|
118
|
+
expect { resource.mirrorlist_expire "100" }.not_to raise_error
|
119
|
+
expect { resource.mirrorlist_expire "100d" }.not_to raise_error
|
120
|
+
expect { resource.mirrorlist_expire "100h" }.not_to raise_error
|
121
|
+
expect { resource.mirrorlist_expire "100m" }.not_to raise_error
|
122
122
|
expect { resource.mirrorlist_expire "never" }.to raise_error(ArgumentError)
|
123
123
|
end
|
124
124
|
|