chef 12.18.31 → 13.0.118
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 +15 -11
- data/README.md +13 -13
- data/Rakefile +1 -19
- data/VERSION +1 -1
- data/acceptance/.shared/kitchen_acceptance/libraries/kitchen.rb +1 -1
- data/acceptance/Gemfile +8 -5
- data/acceptance/Gemfile.lock +90 -81
- data/acceptance/basics/test/integration/chef-current-install/serverspec/chef_client_spec.rb +1 -1
- data/acceptance/data-collector/.acceptance/data-collector-test/metadata.rb +1 -1
- data/acceptance/data-collector/test/integration/default/serverspec/default_spec.rb +4 -0
- data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/top_cookbooks.rb +9 -8
- data/chef-universal-mingw32.gemspec +2 -3
- data/chef.gemspec +8 -7
- data/lib/chef/api_client.rb +8 -15
- data/lib/chef/api_client_v1.rb +9 -11
- data/lib/chef/application/apply.rb +8 -10
- data/lib/chef/application/client.rb +1 -1
- data/lib/chef/application/exit_code.rb +11 -82
- data/lib/chef/application/knife.rb +2 -2
- data/lib/chef/application/solo.rb +0 -1
- data/lib/chef/application/windows_service.rb +36 -37
- data/lib/chef/application/windows_service_manager.rb +1 -1
- data/lib/chef/application.rb +15 -25
- data/lib/chef/audit/audit_event_proxy.rb +2 -2
- data/lib/chef/audit/control_group_data.rb +1 -1
- data/lib/chef/blacklist.rb +81 -0
- data/lib/chef/chef_class.rb +1 -0
- data/lib/chef/chef_fs/chef_fs_data_store.rb +6 -8
- data/lib/chef/chef_fs/command_line.rb +15 -16
- data/lib/chef/chef_fs/data_handler/client_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/container_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/cookbook_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/data_bag_item_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/environment_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/group_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/node_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/organization_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/role_data_handler.rb +1 -1
- data/lib/chef/chef_fs/data_handler/user_data_handler.rb +1 -1
- data/lib/chef/chef_fs/file_pattern.rb +2 -2
- data/lib/chef/chef_fs/file_system/chef_server/chef_server_root_dir.rb +2 -2
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_artifacts_dir.rb +6 -2
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_dir.rb +18 -32
- data/lib/chef/chef_fs/file_system/chef_server/cookbook_file.rb +8 -10
- data/lib/chef/chef_fs/file_system/chef_server/cookbooks_dir.rb +5 -1
- data/lib/chef/chef_fs/file_system/chef_server/data_bags_dir.rb +8 -10
- data/lib/chef/chef_fs/file_system/chef_server/nodes_dir.rb +10 -12
- data/lib/chef/chef_fs/file_system/chef_server/policies_dir.rb +28 -30
- data/lib/chef/chef_fs/file_system/chef_server/policy_group_entry.rb +1 -1
- data/lib/chef/chef_fs/file_system/chef_server/rest_list_dir.rb +27 -29
- data/lib/chef/chef_fs/file_system/chef_server/rest_list_entry.rb +29 -26
- data/lib/chef/chef_fs/file_system/chef_server/versioned_cookbooks_dir.rb +5 -1
- data/lib/chef/chef_fs/file_system/memory/memory_file.rb +1 -1
- data/lib/chef/chef_fs/file_system/multiplexed_dir.rb +10 -12
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb +13 -16
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb +9 -13
- data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_root_dir.rb +2 -0
- data/lib/chef/chef_fs/file_system/repository/cookbooks_dir.rb +1 -1
- data/lib/chef/chef_fs/file_system/repository/nodes_dir.rb +3 -0
- data/lib/chef/chef_fs/file_system.rb +1 -1
- data/lib/chef/chef_fs/parallelizer.rb +9 -11
- data/lib/chef/client.rb +47 -11
- data/lib/chef/config_fetcher.rb +4 -4
- data/lib/chef/constants.rb +1 -1
- data/lib/chef/cookbook/cookbook_version_loader.rb +26 -115
- data/lib/chef/cookbook/file_system_file_vendor.rb +1 -1
- data/lib/chef/cookbook/gem_installer.rb +10 -6
- data/lib/chef/cookbook/manifest_v0.rb +68 -0
- data/lib/chef/cookbook/manifest_v2.rb +41 -0
- data/lib/chef/cookbook/metadata.rb +25 -134
- data/lib/chef/cookbook/remote_file_vendor.rb +3 -3
- data/lib/chef/cookbook/synchronizer.rb +24 -21
- data/lib/chef/cookbook/syntax_check.rb +1 -1
- data/lib/chef/cookbook_manifest.rb +91 -65
- data/lib/chef/cookbook_site_streaming_uploader.rb +7 -9
- data/lib/chef/cookbook_uploader.rb +1 -1
- data/lib/chef/cookbook_version.rb +69 -157
- data/lib/chef/data_bag.rb +1 -7
- data/lib/chef/data_bag_item.rb +5 -10
- data/lib/chef/data_collector/messages.rb +2 -0
- data/lib/chef/data_collector/resource_report.rb +32 -4
- data/lib/chef/data_collector.rb +3 -4
- data/lib/chef/decorator/unchain.rb +0 -16
- data/lib/chef/decorator.rb +1 -1
- data/lib/chef/deprecated.rb +53 -19
- data/lib/chef/dsl/audit.rb +2 -2
- data/lib/chef/dsl/declare_resource.rb +11 -17
- data/lib/chef/dsl/platform_introspection.rb +29 -31
- data/lib/chef/dsl/reboot_pending.rb +1 -1
- data/lib/chef/dsl/recipe.rb +1 -4
- data/lib/chef/dsl/resources.rb +4 -13
- data/lib/chef/encrypted_data_bag_item.rb +2 -2
- data/lib/chef/environment.rb +9 -16
- data/lib/chef/event_dispatch/base.rb +16 -0
- data/lib/chef/event_loggers/windows_eventlog.rb +1 -1
- data/lib/chef/exceptions.rb +6 -10
- data/lib/chef/file_access_control/unix.rb +14 -14
- data/lib/chef/file_access_control/windows.rb +1 -1
- data/lib/chef/formatters/error_description.rb +18 -1
- data/lib/chef/formatters/error_inspectors/api_error_formatting.rb +4 -5
- data/lib/chef/formatters/error_mapper.rb +6 -6
- data/lib/chef/guard_interpreter/default_guard_interpreter.rb +4 -2
- data/lib/chef/http/api_versions.rb +54 -0
- data/lib/chef/http/authenticator.rb +15 -6
- data/lib/chef/http/json_output.rb +4 -1
- data/lib/chef/http/socketless_chef_zero_client.rb +1 -0
- data/lib/chef/http/validate_content_length.rb +2 -2
- data/lib/chef/http.rb +39 -0
- data/lib/chef/json_compat.rb +7 -103
- data/lib/chef/key.rb +5 -10
- data/lib/chef/knife/bootstrap/templates/chef-full.erb +6 -6
- data/lib/chef/knife/bootstrap.rb +6 -0
- data/lib/chef/knife/configure.rb +1 -3
- data/lib/chef/knife/configure_client.rb +1 -3
- data/lib/chef/knife/cookbook_create.rb +1 -434
- data/lib/chef/knife/cookbook_download.rb +3 -4
- data/lib/chef/knife/cookbook_show.rb +7 -3
- data/lib/chef/knife/cookbook_site_install.rb +2 -2
- data/lib/chef/knife/core/bootstrap_context.rb +8 -7
- data/lib/chef/knife/core/cookbook_scm_repo.rb +2 -2
- data/lib/chef/knife/core/gem_glob_loader.rb +1 -1
- data/lib/chef/knife/core/status_presenter.rb +1 -1
- data/lib/chef/knife/core/subcommand_loader.rb +2 -32
- data/lib/chef/knife/core/ui.rb +20 -27
- data/lib/chef/knife/data_bag_create.rb +6 -4
- data/lib/chef/knife/data_bag_secret_options.rb +1 -1
- data/lib/chef/knife/deps.rb +32 -34
- data/lib/chef/knife/edit.rb +1 -1
- data/lib/chef/knife/help.rb +1 -1
- data/lib/chef/knife/list.rb +1 -1
- data/lib/chef/knife/search.rb +9 -20
- data/lib/chef/knife/ssh.rb +62 -36
- data/lib/chef/knife/ssl_check.rb +1 -1
- data/lib/chef/knife/user_delete.rb +1 -1
- data/lib/chef/knife/xargs.rb +1 -1
- data/lib/chef/knife.rb +6 -7
- data/lib/chef/mash.rb +1 -1
- data/lib/chef/mixin/create_path.rb +3 -5
- data/lib/chef/mixin/from_file.rb +2 -2
- data/lib/chef/mixin/get_source_from_package.rb +2 -2
- data/lib/chef/mixin/notifying_block.rb +7 -9
- data/lib/chef/mixin/params_validate.rb +9 -8
- data/lib/chef/mixin/path_sanity.rb +17 -19
- data/lib/chef/mixin/securable.rb +1 -1
- data/lib/chef/mixin/shell_out.rb +33 -29
- data/lib/chef/mixin/unformatter.rb +2 -2
- data/lib/chef/mixin/uris.rb +4 -6
- data/lib/chef/mixin/versioned_api.rb +84 -0
- data/lib/chef/mixin/which.rb +25 -8
- data/lib/chef/mixin/windows_architecture_helper.rb +2 -2
- data/lib/chef/mixin/xml_escape.rb +3 -5
- data/lib/chef/mixins.rb +0 -1
- data/lib/chef/monkey_patches/webrick-utils.rb +1 -1
- data/lib/chef/node/attribute.rb +9 -32
- data/lib/chef/node/attribute_collections.rb +1 -19
- data/lib/chef/node/common_api.rb +5 -7
- data/lib/chef/node/immutable_collections.rb +42 -38
- data/lib/chef/node/mixin/immutablize_array.rb +1 -1
- data/lib/chef/node/mixin/immutablize_hash.rb +1 -1
- data/lib/chef/node.rb +21 -20
- data/lib/chef/node_map.rb +2 -5
- data/lib/chef/org.rb +10 -17
- data/lib/chef/platform/provider_mapping.rb +2 -169
- data/lib/chef/platform/query_helpers.rb +1 -1
- data/lib/chef/platform/rebooter.rb +1 -2
- data/lib/chef/policy_builder/expand_node_object.rb +3 -29
- data/lib/chef/policy_builder/policyfile.rb +8 -6
- data/lib/chef/property.rb +66 -80
- data/lib/chef/provider/apt_repository.rb +6 -10
- data/lib/chef/provider/apt_update.rb +1 -7
- data/lib/chef/provider/batch.rb +1 -1
- data/lib/chef/provider/breakpoint.rb +2 -2
- data/lib/chef/provider/cookbook_file.rb +3 -9
- data/lib/chef/provider/cron.rb +42 -60
- data/lib/chef/provider/deploy/revision.rb +3 -5
- data/lib/chef/provider/deploy.rb +82 -88
- data/lib/chef/provider/directory.rb +33 -37
- data/lib/chef/provider/dsc_resource.rb +23 -11
- data/lib/chef/provider/dsc_script.rb +1 -5
- data/lib/chef/provider/env/windows.rb +5 -1
- data/lib/chef/provider/env.rb +32 -30
- data/lib/chef/provider/erl_call.rb +15 -47
- data/lib/chef/provider/execute.rb +7 -8
- data/lib/chef/provider/file.rb +49 -61
- data/lib/chef/provider/git.rb +56 -60
- data/lib/chef/provider/group.rb +1 -7
- data/lib/chef/provider/http_request.rb +37 -41
- data/lib/chef/provider/ifconfig/redhat.rb +1 -1
- data/lib/chef/provider/ifconfig.rb +0 -6
- data/lib/chef/provider/launchd.rb +6 -2
- data/lib/chef/provider/link.rb +51 -55
- data/lib/chef/provider/log.rb +3 -7
- data/lib/chef/provider/lwrp_base.rb +0 -9
- data/lib/chef/provider/mdadm.rb +25 -33
- data/lib/chef/provider/mount/aix.rb +2 -2
- data/lib/chef/provider/mount/mount.rb +2 -2
- data/lib/chef/provider/mount.rb +1 -5
- data/lib/chef/provider/noop.rb +1 -1
- data/lib/chef/provider/ohai.rb +1 -7
- data/lib/chef/provider/osx_profile.rb +24 -29
- data/lib/chef/provider/package/aix.rb +55 -53
- data/lib/chef/provider/package/apt.rb +15 -13
- data/lib/chef/provider/package/cab.rb +48 -20
- data/lib/chef/provider/package/chocolatey.rb +9 -10
- data/lib/chef/provider/package/dnf/dnf_helper.py +1 -1
- data/lib/chef/provider/package/dnf/python_helper.rb +63 -26
- data/lib/chef/provider/package/dnf/version.rb +1 -1
- data/lib/chef/provider/package/dnf.rb +21 -19
- data/lib/chef/provider/package/dpkg.rb +8 -9
- data/lib/chef/provider/package/freebsd/base.rb +10 -10
- data/lib/chef/provider/package/freebsd/pkg.rb +15 -15
- data/lib/chef/provider/package/freebsd/pkgng.rb +13 -15
- data/lib/chef/provider/package/freebsd/port.rb +7 -7
- data/lib/chef/provider/package/homebrew.rb +11 -10
- data/lib/chef/provider/package/ips.rb +18 -24
- data/lib/chef/provider/package/macports.rb +23 -23
- data/lib/chef/provider/package/msu.rb +11 -12
- data/lib/chef/provider/package/openbsd.rb +25 -22
- data/lib/chef/provider/package/pacman.rb +16 -17
- data/lib/chef/provider/package/paludis.rb +26 -27
- data/lib/chef/provider/package/portage.rb +22 -23
- data/lib/chef/provider/package/powershell.rb +17 -17
- data/lib/chef/provider/package/rpm.rb +25 -26
- data/lib/chef/provider/package/rubygems.rb +64 -62
- data/lib/chef/provider/package/smartos.rb +16 -16
- data/lib/chef/provider/package/solaris.rb +44 -45
- data/lib/chef/provider/package/windows/exe.rb +6 -6
- data/lib/chef/provider/package/windows/msi.rb +7 -7
- data/lib/chef/provider/package/windows/registry_uninstall_entry.rb +9 -3
- data/lib/chef/provider/package/windows.rb +3 -3
- data/lib/chef/provider/package/yum/rpm_utils.rb +34 -34
- data/lib/chef/provider/package/yum/yum_cache.rb +12 -12
- data/lib/chef/provider/package/yum.rb +319 -269
- data/lib/chef/provider/package/zypper.rb +10 -20
- data/lib/chef/provider/package.rb +71 -63
- data/lib/chef/provider/powershell_script.rb +15 -7
- data/lib/chef/provider/reboot.rb +10 -14
- data/lib/chef/provider/registry_key.rb +39 -43
- data/lib/chef/provider/remote_directory.rb +3 -15
- data/lib/chef/provider/remote_file.rb +3 -9
- data/lib/chef/provider/route.rb +1 -7
- data/lib/chef/provider/ruby_block.rb +4 -8
- data/lib/chef/provider/script.rb +42 -6
- data/lib/chef/provider/service/aix.rb +1 -5
- data/lib/chef/provider/service/debian.rb +15 -21
- data/lib/chef/provider/service/freebsd.rb +0 -1
- data/lib/chef/provider/service/gentoo.rb +0 -1
- data/lib/chef/provider/service/init.rb +0 -1
- data/lib/chef/provider/service/insserv.rb +2 -2
- data/lib/chef/provider/service/openbsd.rb +0 -1
- data/lib/chef/provider/service/redhat.rb +2 -2
- data/lib/chef/provider/service/simple.rb +0 -5
- data/lib/chef/provider/service/solaris.rb +5 -4
- data/lib/chef/provider/service/systemd.rb +1 -1
- data/lib/chef/provider/service/upstart.rb +10 -12
- data/lib/chef/provider/service/windows.rb +1 -5
- data/lib/chef/provider/service.rb +51 -58
- data/lib/chef/provider/subversion.rb +40 -46
- data/lib/chef/provider/systemd_unit.rb +2 -0
- data/lib/chef/provider/template/content.rb +24 -1
- data/lib/chef/provider/template.rb +3 -9
- data/lib/chef/provider/user/dscl.rb +3 -3
- data/lib/chef/provider/user/linux.rb +6 -5
- data/lib/chef/provider/user/pw.rb +4 -10
- data/lib/chef/provider/user/solaris.rb +2 -2
- data/lib/chef/provider/user/useradd.rb +5 -5
- data/lib/chef/provider/user.rb +43 -59
- data/lib/chef/provider/whyrun_safe_ruby_block.rb +4 -4
- data/lib/chef/provider/windows_task.rb +418 -0
- data/lib/chef/provider/yum_repository.rb +3 -6
- data/lib/chef/provider.rb +63 -115
- data/lib/chef/provider_resolver.rb +8 -34
- data/lib/chef/providers.rb +1 -1
- data/lib/chef/recipe.rb +9 -1
- data/lib/chef/resource/action_class.rb +13 -17
- data/lib/chef/resource/apt_repository.rb +0 -1
- data/lib/chef/resource/apt_update.rb +3 -1
- data/lib/chef/resource/chef_gem.rb +4 -11
- data/lib/chef/resource/chocolatey_package.rb +4 -1
- data/lib/chef/resource/dnf_package.rb +6 -3
- data/lib/chef/resource/dsc_resource.rb +9 -1
- data/lib/chef/resource/execute.rb +66 -19
- data/lib/chef/resource/file/verification/systemd_unit.rb +67 -0
- data/lib/chef/resource/file/verification.rb +2 -7
- data/lib/chef/resource/freebsd_package.rb +1 -1
- data/lib/chef/resource/gem_package.rb +16 -2
- data/lib/chef/resource/launchd.rb +3 -3
- data/lib/chef/resource/lwrp_base.rb +0 -2
- data/lib/chef/resource/mount.rb +5 -12
- data/lib/chef/resource/package.rb +2 -2
- data/lib/chef/resource/powershell_script.rb +1 -1
- data/lib/chef/resource/registry_key.rb +1 -1
- data/lib/chef/resource/script.rb +8 -34
- data/lib/chef/resource/service.rb +15 -13
- data/lib/chef/resource/systemd_unit.rb +5 -0
- data/lib/chef/resource/user/aix_user.rb +1 -1
- data/lib/chef/resource/user/dscl_user.rb +1 -1
- data/lib/chef/resource/user/linux_user.rb +1 -10
- data/lib/chef/resource/user/pw_user.rb +1 -1
- data/lib/chef/resource/user/solaris_user.rb +1 -1
- data/lib/chef/resource/user/windows_user.rb +1 -1
- data/lib/chef/resource/user.rb +1 -19
- data/lib/chef/resource/windows_package.rb +4 -1
- data/lib/chef/resource/windows_task.rb +237 -0
- data/lib/chef/resource/yum_package.rb +13 -4
- data/lib/chef/resource/yum_repository.rb +0 -1
- data/lib/chef/resource/zypper_package.rb +2 -0
- data/lib/chef/resource.rb +90 -202
- data/lib/chef/resource_builder.rb +1 -65
- data/lib/chef/resource_collection/resource_collection_serialization.rb +11 -4
- data/lib/chef/resource_collection/resource_list.rb +6 -0
- data/lib/chef/resource_collection/resource_set.rb +44 -17
- data/lib/chef/resource_collection.rb +10 -0
- data/lib/chef/resource_reporter.rb +1 -1
- data/lib/chef/resource_resolver.rb +1 -25
- data/lib/chef/resources.rb +1 -1
- data/lib/chef/role.rb +0 -6
- data/lib/chef/run_context/cookbook_compiler.rb +49 -5
- data/lib/chef/run_context.rb +4 -25
- data/lib/chef/run_list/run_list_item.rb +1 -1
- data/lib/chef/run_list/versioned_recipe_list.rb +14 -12
- data/lib/chef/search/query.rb +26 -31
- data/lib/chef/server_api.rb +2 -0
- data/lib/chef/{resource/easy_install_package.rb → server_api_versions.rb} +18 -10
- data/lib/chef/shell/ext.rb +3 -3
- data/lib/chef/shell/shell_session.rb +14 -4
- data/lib/chef/shell.rb +32 -7
- data/lib/chef/user.rb +9 -16
- data/lib/chef/user_v1.rb +9 -16
- data/lib/chef/util/diff.rb +1 -1
- data/lib/chef/util/dsc/lcm_output_parser.rb +1 -1
- data/lib/chef/util/selinux.rb +1 -1
- data/lib/chef/util/windows/net_group.rb +18 -30
- data/lib/chef/util/windows/net_use.rb +7 -11
- data/lib/chef/util/windows/net_user.rb +12 -18
- data/lib/chef/util/windows/volume.rb +9 -15
- data/lib/chef/version.rb +1 -1
- data/lib/chef/version_class.rb +1 -1
- data/lib/chef/win32/api/file.rb +25 -31
- data/lib/chef/win32/api/installer.rb +2 -2
- data/lib/chef/win32/api.rb +4 -6
- data/lib/chef/win32/file.rb +4 -6
- data/lib/chef/win32/registry.rb +9 -9
- data/lib/chef/win32/security/acl.rb +2 -2
- data/lib/chef/win32/security/sid.rb +5 -0
- data/lib/chef/win32/security.rb +2 -2
- data/lib/chef/win32/unicode.rb +2 -2
- data/lib/chef/win32/version.rb +1 -1
- data/lib/chef.rb +1 -2
- data/spec/data/cookbooks/openldap/templates/default/openldap_nested_variable_stuff.erb +1 -0
- 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/data/lwrp/providers/inline_compiler.rb +0 -2
- data/spec/data/lwrp/resources/buck_passer.rb +5 -0
- data/spec/data/lwrp/resources/buck_passer_2.rb +3 -0
- data/spec/data/lwrp/resources/embedded_resource_accesses_providers_scope.rb +3 -0
- data/spec/data/lwrp/resources/inline_compiler.rb +3 -0
- data/spec/data/lwrp/resources/monkey_name_printer.rb +5 -0
- data/spec/data/lwrp/resources/paint_drying_watcher.rb +3 -0
- data/spec/data/lwrp/resources/thumb_twiddler.rb +3 -0
- data/spec/data/prefer_metadata_json/metadata.json +51 -0
- data/spec/data/prefer_metadata_json/metadata.rb +6 -0
- data/spec/data/prefer_metadata_json/recipes/default.rb +0 -0
- data/spec/data/root_alias_cookbooks/dup_attr/attributes/default.rb +1 -0
- data/spec/data/root_alias_cookbooks/dup_attr/attributes.rb +1 -0
- data/spec/data/root_alias_cookbooks/dup_attr/metadata.rb +2 -0
- data/spec/data/root_alias_cookbooks/dup_attr/recipe.rb +3 -0
- data/spec/data/root_alias_cookbooks/dup_recipe/attributes.rb +1 -0
- data/spec/data/root_alias_cookbooks/dup_recipe/metadata.rb +2 -0
- data/spec/data/root_alias_cookbooks/dup_recipe/recipe.rb +3 -0
- data/spec/data/root_alias_cookbooks/dup_recipe/recipes/default.rb +3 -0
- data/spec/data/root_alias_cookbooks/simple/attributes.rb +1 -0
- data/spec/data/root_alias_cookbooks/simple/metadata.rb +2 -0
- data/spec/data/root_alias_cookbooks/simple/recipe.rb +3 -0
- data/spec/data/shef-config.rb +11 -10
- data/spec/functional/knife/ssh_spec.rb +34 -6
- data/spec/functional/rebooter_spec.rb +1 -0
- data/spec/functional/resource/bash_spec.rb +11 -45
- data/spec/functional/resource/batch_spec.rb +5 -1
- data/spec/functional/resource/cron_spec.rb +2 -2
- data/spec/functional/resource/dsc_script_spec.rb +2 -4
- data/spec/functional/resource/execute_spec.rb +17 -0
- data/spec/functional/resource/link_spec.rb +3 -3
- data/spec/functional/resource/template_spec.rb +33 -0
- data/spec/functional/resource/user/dscl_spec.rb +2 -4
- data/spec/functional/root_alias_spec.rb +78 -0
- data/spec/functional/shell_spec.rb +38 -40
- data/spec/integration/client/client_spec.rb +109 -16
- data/spec/integration/client/exit_code_spec.rb +1 -105
- data/spec/integration/knife/chef_repository_file_system_spec.rb +0 -97
- data/spec/integration/knife/cookbook_download_spec.rb +0 -24
- data/spec/integration/knife/cookbook_show_spec.rb +12 -23
- data/spec/integration/knife/deps_spec.rb +5 -9
- data/spec/integration/knife/search_node_spec.rb +39 -0
- data/spec/integration/knife/serve_spec.rb +58 -22
- data/spec/integration/knife/upload_spec.rb +3 -11
- data/spec/integration/recipes/lwrp_inline_resources_spec.rb +7 -11
- data/spec/integration/recipes/notifies_spec.rb +60 -0
- data/spec/integration/recipes/recipe_dsl_spec.rb +76 -226
- data/spec/integration/recipes/resource_action_spec.rb +37 -30
- data/spec/spec_helper.rb +7 -0
- data/spec/support/chef_helpers.rb +5 -7
- data/spec/support/platform_helpers.rb +10 -3
- data/spec/support/platforms/prof/gc.rb +4 -6
- data/spec/support/shared/context/client.rb +9 -2
- data/spec/support/shared/functional/execute_resource.rb +150 -0
- data/spec/support/shared/functional/windows_script.rb +74 -4
- data/spec/support/shared/integration/knife_support.rb +1 -1
- data/spec/support/shared/unit/execute_resource.rb +37 -9
- data/spec/support/shared/unit/provider/file.rb +10 -0
- data/spec/support/shared/unit/script_resource.rb +1 -9
- data/spec/unit/application/exit_code_spec.rb +4 -89
- data/spec/unit/application_spec.rb +39 -29
- data/spec/unit/chef_fs/file_system/operation_failed_error_spec.rb +1 -1
- data/spec/unit/client_spec.rb +72 -31
- data/spec/unit/config_fetcher_spec.rb +2 -2
- data/spec/unit/cookbook/cookbook_version_loader_spec.rb +31 -19
- data/spec/unit/cookbook/file_vendor_spec.rb +20 -9
- data/spec/unit/cookbook/gem_installer_spec.rb +85 -0
- data/spec/unit/cookbook/manifest_v0_spec.rb +133 -0
- data/spec/unit/cookbook/manifest_v2_spec.rb +70 -0
- data/spec/unit/cookbook/metadata_spec.rb +29 -108
- data/spec/unit/cookbook/synchronizer_spec.rb +5 -6
- data/spec/unit/cookbook/syntax_check_spec.rb +9 -2
- data/spec/unit/cookbook_loader_spec.rb +17 -19
- data/spec/unit/cookbook_manifest_spec.rb +12 -44
- data/spec/unit/cookbook_site_streaming_uploader_spec.rb +0 -4
- data/spec/unit/cookbook_spec.rb +10 -14
- data/spec/unit/cookbook_uploader_spec.rb +1 -1
- data/spec/unit/cookbook_version_file_specificity_spec.rb +55 -28
- data/spec/unit/cookbook_version_spec.rb +19 -128
- data/spec/unit/data_bag_item_spec.rb +4 -0
- data/spec/unit/data_collector/messages_spec.rb +137 -0
- data/spec/unit/data_collector/resource_report_spec.rb +145 -0
- data/spec/unit/deprecation_spec.rb +0 -14
- data/spec/unit/encrypted_data_bag_item_spec.rb +6 -6
- data/spec/unit/formatters/error_description_spec.rb +52 -7
- data/spec/unit/http/api_versions_spec.rb +79 -0
- data/spec/unit/http/authenticator_spec.rb +20 -0
- data/spec/unit/http/socketless_chef_zero_client_spec.rb +2 -1
- data/spec/unit/json_compat_spec.rb +0 -32
- data/spec/unit/knife/bootstrap_spec.rb +34 -0
- data/spec/unit/knife/configure_client_spec.rb +0 -2
- data/spec/unit/knife/cookbook_create_spec.rb +1 -220
- data/spec/unit/knife/cookbook_download_spec.rb +46 -28
- data/spec/unit/knife/cookbook_show_spec.rb +42 -9
- data/spec/unit/knife/core/bootstrap_context_spec.rb +17 -0
- data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +1 -1
- data/spec/unit/knife/core/subcommand_loader_spec.rb +0 -6
- data/spec/unit/knife/core/ui_spec.rb +21 -11
- data/spec/unit/knife/data_bag_create_spec.rb +65 -45
- data/spec/unit/knife/ssh_spec.rb +34 -36
- data/spec/unit/knife_spec.rb +2 -2
- data/spec/unit/lwrp_spec.rb +38 -127
- data/spec/unit/mixin/path_sanity_spec.rb +7 -7
- data/spec/unit/mixin/shell_out_spec.rb +18 -84
- data/spec/unit/mixin/versioned_api_spec.rb +128 -0
- data/spec/unit/mixin/which.rb +160 -0
- data/spec/unit/node/attribute_spec.rb +65 -33
- data/spec/unit/node/immutable_collections_spec.rb +104 -1
- data/spec/unit/node_map_spec.rb +1 -23
- data/spec/unit/node_spec.rb +81 -98
- data/spec/unit/policy_builder/expand_node_object_spec.rb +2 -27
- data/spec/unit/policy_builder/policyfile_spec.rb +12 -12
- data/spec/unit/property/validation_spec.rb +51 -69
- data/spec/unit/property_spec.rb +105 -125
- data/spec/unit/provider/apt_repository_spec.rb +33 -27
- data/spec/unit/provider/cron_spec.rb +15 -39
- data/spec/unit/provider/deploy_spec.rb +1 -1
- data/spec/unit/provider/directory_spec.rb +10 -0
- data/spec/unit/provider/dsc_resource_spec.rb +175 -0
- data/spec/unit/provider/erl_call_spec.rb +5 -13
- data/spec/unit/provider/execute_spec.rb +3 -14
- data/spec/unit/provider/launchd_spec.rb +2 -2
- data/spec/unit/provider/package/aix_spec.rb +22 -22
- data/spec/unit/provider/package/apt_spec.rb +37 -27
- data/spec/unit/provider/package/cab_spec.rb +59 -5
- data/{lib-backcompat/chef/chef_fs/file_system/repository/file_system_root_dir.rb → spec/unit/provider/package/dnf/python_helper_spec.rb} +10 -15
- data/spec/unit/provider/package/dpkg_spec.rb +16 -16
- data/spec/unit/provider/package/freebsd/pkg_spec.rb +15 -15
- data/spec/unit/provider/package/freebsd/pkgng_spec.rb +9 -9
- data/spec/unit/provider/package/freebsd/port_spec.rb +9 -9
- data/spec/unit/provider/package/homebrew_spec.rb +9 -9
- data/spec/unit/provider/package/ips_spec.rb +37 -31
- data/spec/unit/provider/package/macports_spec.rb +10 -10
- data/spec/unit/provider/package/openbsd_spec.rb +10 -10
- data/spec/unit/provider/package/pacman_spec.rb +6 -6
- data/spec/unit/provider/package/paludis_spec.rb +7 -7
- data/spec/unit/provider/package/portage_spec.rb +6 -7
- data/spec/unit/provider/package/rpm_spec.rb +23 -23
- data/spec/unit/provider/package/rubygems_spec.rb +135 -46
- data/spec/unit/provider/package/solaris_spec.rb +15 -15
- data/spec/unit/provider/package/windows/msi_spec.rb +1 -1
- data/spec/unit/provider/package/windows/registry_uninstall_entry_spec.rb +25 -0
- data/spec/unit/provider/package/windows_spec.rb +2 -1
- data/spec/unit/provider/package/yum_spec.rb +58 -50
- data/spec/unit/provider/package/zypper_spec.rb +54 -97
- data/spec/unit/provider/package_spec.rb +8 -0
- data/spec/unit/provider/powershell_script_spec.rb +14 -4
- data/spec/unit/provider/remote_file/sftp_spec.rb +3 -3
- data/spec/unit/provider/route_spec.rb +7 -1
- data/spec/unit/provider/script_spec.rb +49 -6
- data/spec/unit/provider/service/debian_service_spec.rb +14 -20
- data/spec/unit/provider/service/solaris_smf_service_spec.rb +37 -1
- data/spec/unit/provider/service/upstart_service_spec.rb +12 -25
- data/spec/unit/provider/subversion_spec.rb +2 -2
- data/spec/unit/provider/user/linux_spec.rb +5 -43
- data/spec/unit/provider/user/pw_spec.rb +7 -27
- data/spec/unit/provider/windows_task_spec.rb +392 -0
- data/spec/unit/provider_resolver_spec.rb +0 -1
- data/spec/unit/provider_spec.rb +10 -3
- data/spec/unit/recipe_spec.rb +3 -172
- data/spec/unit/resource/chef_gem_spec.rb +16 -62
- data/spec/unit/resource/conditional_spec.rb +4 -4
- data/spec/unit/resource/cookbook_file_spec.rb +2 -2
- data/spec/unit/resource/cron_spec.rb +1 -1
- data/spec/unit/resource/deploy_spec.rb +4 -4
- data/spec/unit/resource/directory_spec.rb +2 -2
- data/spec/unit/resource/dsc_resource_spec.rb +6 -0
- data/spec/unit/resource/env_spec.rb +1 -1
- data/spec/unit/resource/execute_spec.rb +215 -1
- data/spec/unit/resource/file/verification/systemd_unit_spec.rb +103 -0
- data/spec/unit/resource/file/verification_spec.rb +8 -14
- data/spec/unit/resource/file_spec.rb +3 -3
- data/spec/unit/resource/freebsd_package_spec.rb +2 -2
- data/spec/unit/resource/group_spec.rb +2 -2
- data/spec/unit/resource/ifconfig_spec.rb +1 -1
- data/spec/unit/resource/link_spec.rb +2 -2
- data/spec/unit/resource/mdadm_spec.rb +1 -1
- data/spec/unit/resource/mount_spec.rb +3 -3
- data/spec/unit/resource/ohai_spec.rb +1 -1
- data/spec/unit/resource/package_spec.rb +14 -4
- data/spec/unit/resource/registry_key_spec.rb +2 -2
- data/spec/unit/resource/remote_directory_spec.rb +2 -2
- data/spec/unit/resource/remote_file_spec.rb +2 -2
- data/spec/unit/resource/route_spec.rb +1 -1
- data/spec/unit/resource/scm_spec.rb +2 -2
- data/spec/unit/resource/script_spec.rb +1 -1
- data/spec/unit/resource/service_spec.rb +25 -5
- data/spec/unit/resource/systemd_unit_spec.rb +1 -1
- data/spec/unit/resource/template_spec.rb +2 -2
- data/spec/unit/resource/user_spec.rb +6 -6
- data/spec/unit/resource/windows_task_spec.rb +213 -0
- data/spec/unit/resource/yum_package_spec.rb +42 -1
- data/spec/unit/resource_collection/resource_set_spec.rb +46 -1
- data/spec/unit/resource_collection_spec.rb +4 -3
- data/spec/unit/resource_reporter_spec.rb +6 -6
- data/spec/unit/resource_spec.rb +55 -71
- data/spec/unit/run_context/cookbook_compiler_spec.rb +1 -3
- data/spec/unit/run_list/versioned_recipe_list_spec.rb +7 -4
- data/spec/unit/runner_spec.rb +10 -28
- data/spec/unit/search/query_spec.rb +32 -34
- data/spec/unit/server_api_versions_spec.rb +44 -0
- data/spec/unit/shell/shell_session_spec.rb +33 -2
- data/spec/unit/util/selinux_spec.rb +3 -14
- data/spec/unit/win32/error_spec.rb +67 -0
- data/spec/unit/win32/security_spec.rb +66 -0
- data/tasks/bundle.rb +36 -52
- data/tasks/changelog.rb +1 -1
- data/tasks/dependencies.rb +54 -52
- data/tasks/version.rb +41 -0
- metadata +91 -76
- data/lib/chef/deprecation/mixin/template.rb +0 -48
- data/lib/chef/deprecation/provider/cookbook_file.rb +0 -54
- data/lib/chef/deprecation/provider/file.rb +0 -198
- data/lib/chef/deprecation/provider/remote_directory.rb +0 -52
- data/lib/chef/deprecation/provider/remote_file.rb +0 -85
- data/lib/chef/deprecation/provider/template.rb +0 -63
- data/lib/chef/dsl/method_missing.rb +0 -75
- data/lib/chef/knife/cookbook_site_vendor.rb +0 -46
- data/lib/chef/knife/core/custom_manifest_loader.rb +0 -69
- data/lib/chef/mixin/command/unix.rb +0 -220
- data/lib/chef/mixin/command/windows.rb +0 -71
- data/lib/chef/mixin/command.rb +0 -194
- data/lib/chef/monkey_patches/net-ssh-multi.rb +0 -141
- data/lib/chef/provider/package/easy_install.rb +0 -135
- data/lib/chef/rest.rb +0 -210
- data/lib/chef/shell_out.rb +0 -13
- data/lib/chef/tasks/chef_repo.rake +0 -200
- data/lib-backcompat/chef/chef_fs/file_system/acl_entry.rb +0 -5
- data/lib-backcompat/chef/chef_fs/file_system/already_exists_error.rb +0 -20
- data/lib-backcompat/chef/chef_fs/file_system/chef_repository_file_system_root_dir.rb +0 -5
- data/lib-backcompat/chef/chef_fs/file_system/chef_server_root_dir.rb +0 -5
- data/lib-backcompat/chef/chef_fs/file_system/cookbook_frozen_error.rb +0 -20
- data/lib-backcompat/chef/chef_fs/file_system/default_environment_cannot_be_modified_error.rb +0 -20
- data/lib-backcompat/chef/chef_fs/file_system/file_system_error.rb +0 -20
- data/lib-backcompat/chef/chef_fs/file_system/must_delete_recursively_error.rb +0 -20
- data/lib-backcompat/chef/chef_fs/file_system/not_found_error.rb +0 -20
- data/lib-backcompat/chef/chef_fs/file_system/operation_failed_error.rb +0 -20
- data/lib-backcompat/chef/chef_fs/file_system/operation_not_allowed_error.rb +0 -20
- data/lib-backcompat/chef/chef_fs/file_system/repository/chef_repository_file_system_acls_dir.rb +0 -5
- data/lib-backcompat/chef/chef_fs/file_system/repository/chef_repository_file_system_client_keys_dir.rb +0 -5
- data/lib-backcompat/chef/chef_fs/file_system/repository/chef_repository_file_system_entry.rb +0 -6
- data/lib-backcompat/chef/chef_fs/file_system/repository/chef_repository_file_system_policies_dir.rb +0 -5
- data/spec/functional/rest_spec.rb +0 -95
- data/spec/unit/knife/core/custom_manifest_loader_spec.rb +0 -41
- data/spec/unit/lib_backcompat_spec.rb +0 -34
- data/spec/unit/mixin/command_spec.rb +0 -107
- data/spec/unit/platform_spec.rb +0 -242
- data/spec/unit/provider/package/easy_install_spec.rb +0 -114
- data/spec/unit/resource/easy_install_package_spec.rb +0 -39
- data/spec/unit/rest/auth_credentials_spec.rb +0 -292
- data/spec/unit/rest_spec.rb +0 -753
- data/spec/unit/shell_out_spec.rb +0 -18
- data/tasks/bin/bundle-platform +0 -20
- data/tasks/bin/bundle-platform.bat +0 -2
- data/tasks/bin/bundler_patch.rb +0 -27
- data/tasks/bin/gem-version-diff +0 -37
- data/tasks/bundle_util.rb +0 -110
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#
|
|
2
2
|
# Author:: AJ Christensen (<aj@hjksolutions.com>)
|
|
3
3
|
# Author:: Tyler Cloke (<tyler@chef.io>)
|
|
4
|
-
# Copyright:: Copyright 2008-
|
|
4
|
+
# Copyright:: Copyright 2008-2017, Chef Software Inc.
|
|
5
5
|
# License:: Apache License, Version 2.0
|
|
6
6
|
#
|
|
7
7
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -124,6 +124,27 @@ describe Chef::Resource::Service do
|
|
|
124
124
|
end.to raise_error(ArgumentError)
|
|
125
125
|
end
|
|
126
126
|
|
|
127
|
+
it "should accept an array for options" do
|
|
128
|
+
@resource.options ["-r", "-s"]
|
|
129
|
+
expect(@resource.options).to eql(["-r", "-s"])
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
it "should accept a string for options" do
|
|
133
|
+
@resource.options "-r"
|
|
134
|
+
expect(@resource.options).to eql(["-r"])
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
it "should accept a string with multiple flags for options" do
|
|
138
|
+
@resource.options "-r -s"
|
|
139
|
+
expect(@resource.options).to eql(["-r", "-s"])
|
|
140
|
+
end
|
|
141
|
+
|
|
142
|
+
it "should not accept a boolean for options" do
|
|
143
|
+
expect do
|
|
144
|
+
@resource.options true
|
|
145
|
+
end.to raise_error(ArgumentError)
|
|
146
|
+
end
|
|
147
|
+
|
|
127
148
|
%w{enabled running}.each do |attrib|
|
|
128
149
|
it "should accept true for #{attrib}" do
|
|
129
150
|
@resource.send(attrib, true)
|
|
@@ -146,13 +167,13 @@ describe Chef::Resource::Service do
|
|
|
146
167
|
|
|
147
168
|
it "should allow you to set what features this resource supports as a array" do
|
|
148
169
|
support_array = [ :status, :restart ]
|
|
149
|
-
support_hash = { :status => true, :restart => true
|
|
170
|
+
support_hash = { :status => true, :restart => true }
|
|
150
171
|
@resource.supports(support_array)
|
|
151
172
|
expect(@resource.supports).to eq(support_hash)
|
|
152
173
|
end
|
|
153
174
|
|
|
154
175
|
it "should allow you to set what features this resource supports as a hash" do
|
|
155
|
-
support_hash = { :status => true, :restart => true
|
|
176
|
+
support_hash = { :status => true, :restart => true }
|
|
156
177
|
@resource.supports(support_hash)
|
|
157
178
|
expect(@resource.supports).to eq(support_hash)
|
|
158
179
|
end
|
|
@@ -166,7 +187,7 @@ describe Chef::Resource::Service do
|
|
|
166
187
|
end
|
|
167
188
|
|
|
168
189
|
it "describes its state" do
|
|
169
|
-
state = @resource.
|
|
190
|
+
state = @resource.state_for_resource_reporter
|
|
170
191
|
expect(state[:enabled]).to eql(true)
|
|
171
192
|
expect(state[:running]).to eql(false)
|
|
172
193
|
end
|
|
@@ -175,5 +196,4 @@ describe Chef::Resource::Service do
|
|
|
175
196
|
expect(@resource.identity).to eq("superfriend")
|
|
176
197
|
end
|
|
177
198
|
end
|
|
178
|
-
|
|
179
199
|
end
|
|
@@ -109,7 +109,7 @@ describe Chef::Resource::SystemdUnit do
|
|
|
109
109
|
@resource.masked false
|
|
110
110
|
@resource.static false
|
|
111
111
|
@resource.content "test"
|
|
112
|
-
state = @resource.
|
|
112
|
+
state = @resource.state_for_resource_reporter
|
|
113
113
|
expect(state[:active]).to eq(true)
|
|
114
114
|
expect(state[:enabled]).to eq(true)
|
|
115
115
|
expect(state[:masked]).to eq(false)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#
|
|
2
2
|
# Author:: Adam Jacob (<adam@chef.io>)
|
|
3
|
-
# Copyright:: Copyright 2008-
|
|
3
|
+
# Copyright:: Copyright 2008-2017, Chef Software Inc.
|
|
4
4
|
# License:: Apache License, Version 2.0
|
|
5
5
|
#
|
|
6
6
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -88,7 +88,7 @@ describe Chef::Resource::Template do
|
|
|
88
88
|
|
|
89
89
|
context "on unix", :unix_only do
|
|
90
90
|
it "describes its state" do
|
|
91
|
-
state = @resource.
|
|
91
|
+
state = @resource.state_for_resource_reporter
|
|
92
92
|
expect(state[:owner]).to eq("root")
|
|
93
93
|
expect(state[:group]).to eq("wheel")
|
|
94
94
|
expect(state[:mode]).to eq("0644")
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#
|
|
2
2
|
# Author:: Adam Jacob (<adam@chef.io>)
|
|
3
|
-
# Copyright:: Copyright 2008-
|
|
3
|
+
# Copyright:: Copyright 2008-2017, Chef Software Inc.
|
|
4
4
|
# License:: Apache License, Version 2.0
|
|
5
5
|
#
|
|
6
6
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -46,12 +46,12 @@ describe Chef::Resource::User, "initialize" do
|
|
|
46
46
|
expect(@resource.action).to eql([:create])
|
|
47
47
|
end
|
|
48
48
|
|
|
49
|
-
it "should set
|
|
50
|
-
expect(@resource.
|
|
49
|
+
it "should set manage_home to false" do
|
|
50
|
+
expect(@resource.manage_home).to eql(false)
|
|
51
51
|
end
|
|
52
52
|
|
|
53
|
-
it "should set
|
|
54
|
-
expect(@resource.
|
|
53
|
+
it "should set non_unique to false" do
|
|
54
|
+
expect(@resource.non_unique).to eql(false)
|
|
55
55
|
end
|
|
56
56
|
|
|
57
57
|
it "should set force to false" do
|
|
@@ -119,7 +119,7 @@ end
|
|
|
119
119
|
end
|
|
120
120
|
|
|
121
121
|
it "describes its state" do
|
|
122
|
-
state = @resource.
|
|
122
|
+
state = @resource.state_for_resource_reporter
|
|
123
123
|
expect(state[:uid]).to eq(123)
|
|
124
124
|
expect(state[:gid]).to eq(456)
|
|
125
125
|
expect(state[:home]).to eq("/usr/local/root/")
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
#
|
|
2
|
+
# Author:: Nimisha Sharad (<nimisha.sharad@msystechnologies.com>)
|
|
3
|
+
# Copyright:: Copyright 2008-2017, Chef Software, Inc.
|
|
4
|
+
# License:: Apache License, Version 2.0
|
|
5
|
+
#
|
|
6
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
# you may not use this file except in compliance with the License.
|
|
8
|
+
# You may obtain a copy of the License at
|
|
9
|
+
#
|
|
10
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
#
|
|
12
|
+
# Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
# See the License for the specific language governing permissions and
|
|
16
|
+
# limitations under the License.
|
|
17
|
+
#
|
|
18
|
+
|
|
19
|
+
require "spec_helper"
|
|
20
|
+
|
|
21
|
+
describe Chef::Resource::WindowsTask do
|
|
22
|
+
let(:resource) { Chef::Resource::WindowsTask.new("sample_task") }
|
|
23
|
+
|
|
24
|
+
it "creates a new Chef::Resource::WindowsTask" do
|
|
25
|
+
expect(resource).to be_a_kind_of(Chef::Resource)
|
|
26
|
+
expect(resource).to be_a_instance_of(Chef::Resource::WindowsTask)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
it "sets resource name as :windows_task" do
|
|
30
|
+
expect(resource.resource_name).to eql(:windows_task)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
it "sets the task_name as it's name" do
|
|
34
|
+
expect(resource.task_name).to eql("sample_task")
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
it "sets the default action as :create" do
|
|
38
|
+
expect(resource.action).to eql(:create)
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
it "sets the default user as System" do
|
|
42
|
+
expect(resource.user).to eql("SYSTEM")
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
it "sets the default run_level as :limited" do
|
|
46
|
+
expect(resource.run_level).to eql(:limited)
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
it "sets the default force as false" do
|
|
50
|
+
expect(resource.force).to eql(false)
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
it "sets the default interactive_enabled as false" do
|
|
54
|
+
expect(resource.interactive_enabled).to eql(false)
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
it "sets the default frequency_modifier as 1" do
|
|
58
|
+
expect(resource.frequency_modifier).to eql(1)
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
it "sets the default frequency as :hourly" do
|
|
62
|
+
expect(resource.frequency).to eql(:hourly)
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
context "when random_delay is passed" do
|
|
66
|
+
it "raises error if frequency is `:once`" do
|
|
67
|
+
resource.frequency :once
|
|
68
|
+
resource.random_delay "20"
|
|
69
|
+
expect { resource.after_created }.to raise_error(Chef::Exceptions::ArgumentError, "`random_delay` property is supported only for frequency :minute, :hourly, :daily, :weekly and :monthly")
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
it "raises error for invalid random_delay" do
|
|
73
|
+
resource.frequency :monthly
|
|
74
|
+
resource.random_delay "xyz"
|
|
75
|
+
expect { resource.after_created }.to raise_error(Chef::Exceptions::ArgumentError, "Invalid value passed for `random_delay`. Please pass seconds as a String e.g. '60'.")
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
it "converts seconds into iso8601 format" do
|
|
79
|
+
resource.frequency :monthly
|
|
80
|
+
resource.random_delay "60"
|
|
81
|
+
resource.after_created
|
|
82
|
+
expect(resource.random_delay).to eq("PT60S")
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
|
|
86
|
+
context "when execution_time_limit is passed" do
|
|
87
|
+
it "sets the deafult value as PT72H" do
|
|
88
|
+
resource.after_created
|
|
89
|
+
expect(resource.execution_time_limit).to eq("PT72H")
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
it "raises error for invalid execution_time_limit" do
|
|
93
|
+
resource.execution_time_limit "abc"
|
|
94
|
+
expect { resource.after_created }.to raise_error(Chef::Exceptions::ArgumentError, "Invalid value passed for `execution_time_limit`. Please pass seconds as a String e.g. '60'.")
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
it "converts seconds into iso8601 format" do
|
|
98
|
+
resource.execution_time_limit "60"
|
|
99
|
+
resource.after_created
|
|
100
|
+
expect(resource.execution_time_limit).to eq("PT60S")
|
|
101
|
+
end
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
context "#validate_start_time" do
|
|
105
|
+
it "raises error if start_time is nil" do
|
|
106
|
+
expect { resource.send(:validate_start_time, nil) }.to raise_error(Chef::Exceptions::ArgumentError, "`start_time` needs to be provided with `frequency :once`")
|
|
107
|
+
end
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
context "#validate_start_day" do
|
|
111
|
+
it "raise error if start_day is passed with frequency :on_logon" do
|
|
112
|
+
resource.frequency :on_logon
|
|
113
|
+
expect { resource.send(:validate_start_day, "Wed", :on_logon) }.to raise_error(Chef::Exceptions::ArgumentError, "`start_day` property is not supported with frequency: on_logon")
|
|
114
|
+
end
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
context "#validate_user_and_password" do
|
|
118
|
+
context "when password is not passed" do
|
|
119
|
+
it "raises error with non-system users" do
|
|
120
|
+
allow(resource).to receive(:use_password?).and_return(true)
|
|
121
|
+
expect { resource.send(:validate_user_and_password, "Testuser", nil) }.to raise_error("Can't specify a non-system user without a password!")
|
|
122
|
+
end
|
|
123
|
+
end
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
context "#validate_interactive_setting" do
|
|
127
|
+
it "raises error when interactive_enabled is passed without password" do
|
|
128
|
+
expect { resource.send(:validate_interactive_setting, true, nil) }.to raise_error("Please provide the password when attempting to set interactive/non-interactive.")
|
|
129
|
+
end
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
context "#validate_create_frequency_modifier" do
|
|
133
|
+
context "when frequency is :minute" do
|
|
134
|
+
it "raises error if frequency_modifier > 1439" do
|
|
135
|
+
expect { resource.send(:validate_create_frequency_modifier, :minute, 1500) }.to raise_error("frequency_modifier value 1500 is invalid. Valid values for :minute frequency are 1 - 1439.")
|
|
136
|
+
end
|
|
137
|
+
end
|
|
138
|
+
|
|
139
|
+
context "when frequency is :hourly" do
|
|
140
|
+
it "raises error if frequency_modifier > 23" do
|
|
141
|
+
expect { resource.send(:validate_create_frequency_modifier, :hourly, 24) }.to raise_error("frequency_modifier value 24 is invalid. Valid values for :hourly frequency are 1 - 23.")
|
|
142
|
+
end
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
context "when frequency is :daily" do
|
|
146
|
+
it "raises error if frequency_modifier > 365" do
|
|
147
|
+
expect { resource.send(:validate_create_frequency_modifier, :daily, 366) }.to raise_error("frequency_modifier value 366 is invalid. Valid values for :daily frequency are 1 - 365.")
|
|
148
|
+
end
|
|
149
|
+
end
|
|
150
|
+
|
|
151
|
+
context "when frequency is :weekly" do
|
|
152
|
+
it "raises error if frequency_modifier > 52" do
|
|
153
|
+
expect { resource.send(:validate_create_frequency_modifier, :weekly, 53) }.to raise_error("frequency_modifier value 53 is invalid. Valid values for :weekly frequency are 1 - 52.")
|
|
154
|
+
end
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
context "when frequency is :monthly" do
|
|
158
|
+
it "raises error if frequency_modifier > 12" do
|
|
159
|
+
expect { resource.send(:validate_create_frequency_modifier, :monthly, 14) }.to raise_error("frequency_modifier value 14 is invalid. Valid values for :monthly frequency are 1 - 12, 'FIRST', 'SECOND', 'THIRD', 'FOURTH', 'LAST', 'LASTDAY'.")
|
|
160
|
+
end
|
|
161
|
+
|
|
162
|
+
it "raises error if frequency_modifier is invalid" do
|
|
163
|
+
expect { resource.send(:validate_create_frequency_modifier, :monthly, "abc") }.to raise_error("frequency_modifier value abc is invalid. Valid values for :monthly frequency are 1 - 12, 'FIRST', 'SECOND', 'THIRD', 'FOURTH', 'LAST', 'LASTDAY'.")
|
|
164
|
+
end
|
|
165
|
+
end
|
|
166
|
+
end
|
|
167
|
+
|
|
168
|
+
context "#validate_create_day" do
|
|
169
|
+
it "raises error if frequency is not :weekly" do
|
|
170
|
+
expect { resource.send(:validate_create_day, "Mon", :monthly) }.to raise_error("day attribute is only valid for tasks that run weekly")
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
it "accepts a valid single day" do
|
|
174
|
+
expect { resource.send(:validate_create_day, "Mon", :weekly) }.not_to raise_error
|
|
175
|
+
end
|
|
176
|
+
|
|
177
|
+
it "accepts a comma separated list of valid days" do
|
|
178
|
+
expect { resource.send(:validate_create_day, "Mon, tue, THU", :weekly) }.not_to raise_error
|
|
179
|
+
end
|
|
180
|
+
|
|
181
|
+
it "raises error for invalid day value" do
|
|
182
|
+
expect { resource.send(:validate_create_day, "xyz", :weekly) }.to raise_error("day attribute invalid. Only valid values are: MON, TUE, WED, THU, FRI, SAT, SUN and *. Multiple values must be separated by a comma.")
|
|
183
|
+
end
|
|
184
|
+
end
|
|
185
|
+
|
|
186
|
+
context "#validate_create_months" do
|
|
187
|
+
it "raises error if frequency is not :monthly" do
|
|
188
|
+
expect { resource.send(:validate_create_months, "Jan", :once) }.to raise_error("months attribute is only valid for tasks that run monthly")
|
|
189
|
+
end
|
|
190
|
+
|
|
191
|
+
it "accepts a valid single month" do
|
|
192
|
+
expect { resource.send(:validate_create_months, "Feb", :monthly) }.not_to raise_error
|
|
193
|
+
end
|
|
194
|
+
|
|
195
|
+
it "accepts a comma separated list of valid months" do
|
|
196
|
+
expect { resource.send(:validate_create_months, "Jan, mar, AUG", :monthly) }.not_to raise_error
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
it "raises error for invalid month value" do
|
|
200
|
+
expect { resource.send(:validate_create_months, "xyz", :monthly) }.to raise_error("months attribute invalid. Only valid values are: JAN, FEB, MAR, APR, MAY, JUN, JUL, AUG, SEP, OCT, NOV, DEC and *. Multiple values must be separated by a comma.")
|
|
201
|
+
end
|
|
202
|
+
end
|
|
203
|
+
|
|
204
|
+
context "#validate_idle_time" do
|
|
205
|
+
it "raises error if frequency is not :on_idle" do
|
|
206
|
+
expect { resource.send(:validate_idle_time, 5, :hourly) }.to raise_error("idle_time attribute is only valid for tasks that run on_idle")
|
|
207
|
+
end
|
|
208
|
+
|
|
209
|
+
it "raises error if idle_time > 999" do
|
|
210
|
+
expect { resource.send(:validate_idle_time, 1000, :on_idle) }.to raise_error("idle_time value 1000 is invalid. Valid values for :on_idle frequency are 1 - 999.")
|
|
211
|
+
end
|
|
212
|
+
end
|
|
213
|
+
end
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#
|
|
2
2
|
# Author:: AJ Christensen (<aj@chef.io>)
|
|
3
|
-
# Copyright:: Copyright 2008-
|
|
3
|
+
# Copyright:: Copyright 2008-2017, Chef Software Inc.
|
|
4
4
|
# License:: Apache License, Version 2.0
|
|
5
5
|
#
|
|
6
6
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -32,6 +32,47 @@ describe Chef::Resource::YumPackage, "initialize" do
|
|
|
32
32
|
|
|
33
33
|
end
|
|
34
34
|
|
|
35
|
+
describe Chef::Resource::YumPackage do
|
|
36
|
+
before(:each) do
|
|
37
|
+
@resource = Chef::Resource::YumPackage.new("foo")
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
# this set of tests is somewhat terrible. the yum provider promiscuously writes over
|
|
41
|
+
# the new_resource.package_named/version/arch properties. until that is fixed properly
|
|
42
|
+
# we need to coerce and dup those properties into normal arrays. this does not affect
|
|
43
|
+
# strings because those are not mutated in place and they are not (currently) frozen
|
|
44
|
+
# in immutable attributes (even though they really, really should be).
|
|
45
|
+
context "when passed immutable node attribute arrays" do
|
|
46
|
+
let(:node) { Chef::Node.new }
|
|
47
|
+
|
|
48
|
+
before do
|
|
49
|
+
node.default["foo"] = %w{one two three}
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
it "allows mutation of the package_name array" do
|
|
53
|
+
@resource.package_name node["foo"]
|
|
54
|
+
expect(@resource.package_name).not_to be_a_kind_of(Chef::Node::ImmutableArray)
|
|
55
|
+
expect { @resource.package_name[0] = "four" }.not_to raise_error
|
|
56
|
+
expect(@resource.package_name).to eql(%w{four two three})
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
it "allows mutation of the version array" do
|
|
60
|
+
@resource.version node["foo"]
|
|
61
|
+
expect(@resource.version).not_to be_a_kind_of(Chef::Node::ImmutableArray)
|
|
62
|
+
expect { @resource.version[0] = "four" }.not_to raise_error
|
|
63
|
+
expect(@resource.version).to eql(%w{four two three})
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
it "allows mutation of the arch array" do
|
|
67
|
+
@resource.arch node["foo"]
|
|
68
|
+
expect(@resource.arch).not_to be_a_kind_of(Chef::Node::ImmutableArray)
|
|
69
|
+
expect { @resource.arch[0] = "four" }.not_to raise_error
|
|
70
|
+
expect(@resource.arch).to eql(%w{four two three})
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
|
|
35
76
|
describe Chef::Resource::YumPackage, "arch" do
|
|
36
77
|
before(:each) do
|
|
37
78
|
@resource = Chef::Resource::YumPackage.new("foo")
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#
|
|
2
2
|
# Author:: Tyler Ball (<tball@chef.io>)
|
|
3
|
-
# Copyright:: Copyright 2014-
|
|
3
|
+
# Copyright:: Copyright 2014-2017, Chef Software Inc.
|
|
4
4
|
# License:: Apache License, Version 2.0
|
|
5
5
|
#
|
|
6
6
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -27,6 +27,7 @@ describe Chef::ResourceCollection::ResourceSet do
|
|
|
27
27
|
let(:zen_master) { Chef::Resource::ZenMaster.new(zen_master_name) }
|
|
28
28
|
let(:zen_master2) { Chef::Resource::ZenMaster.new(zen_master2_name) }
|
|
29
29
|
let(:zen_follower) { Chef::Resource::ZenFollower.new(zen_follower_name) }
|
|
30
|
+
let(:zen_array) { Chef::Resource::ZenMaster.new( [ zen_master_name, zen_master2_name ]) }
|
|
30
31
|
|
|
31
32
|
describe "initialize" do
|
|
32
33
|
it "should return a Chef::ResourceSet" do
|
|
@@ -113,13 +114,27 @@ describe Chef::ResourceCollection::ResourceSet do
|
|
|
113
114
|
end
|
|
114
115
|
|
|
115
116
|
it "should find resources by strings of zen_master[a,b]" do
|
|
117
|
+
Chef::Config[:treat_deprecation_warnings_as_errors] = false
|
|
116
118
|
collection.insert_as(zen_master)
|
|
117
119
|
collection.insert_as(zen_master2)
|
|
118
120
|
check_by_names(collection.find("zen_master[#{zen_master_name},#{zen_master2_name}]"),
|
|
119
121
|
zen_master_name, zen_master2_name)
|
|
120
122
|
end
|
|
121
123
|
|
|
124
|
+
it "should find array names" do
|
|
125
|
+
collection.insert_as(zen_array)
|
|
126
|
+
expect(collection.find("zen_master[#{zen_master_name}, #{zen_master2_name}]")).to eql(zen_array)
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
it "should favor array names over multi resource syntax" do
|
|
130
|
+
collection.insert_as(zen_master)
|
|
131
|
+
collection.insert_as(zen_master2)
|
|
132
|
+
collection.insert_as(zen_array)
|
|
133
|
+
expect(collection.find("zen_master[#{zen_master_name}, #{zen_master2_name}]")).to eql(zen_array)
|
|
134
|
+
end
|
|
135
|
+
|
|
122
136
|
it "should find resources by strings of zen_master[a,b] with custom names" do
|
|
137
|
+
Chef::Config[:treat_deprecation_warnings_as_errors] = false
|
|
123
138
|
collection.insert_as(zen_master, :zzz, "name1")
|
|
124
139
|
collection.insert_as(zen_master2, :zzz, "name2")
|
|
125
140
|
check_by_names(collection.find("zzz[name1,name2]"),
|
|
@@ -134,6 +149,7 @@ describe Chef::ResourceCollection::ResourceSet do
|
|
|
134
149
|
end
|
|
135
150
|
|
|
136
151
|
it "should find resources of multiple types by strings of zen_master[a] with custom names" do
|
|
152
|
+
Chef::Config[:treat_deprecation_warnings_as_errors] = false
|
|
137
153
|
collection.insert_as(zen_master, :zzz, "name1")
|
|
138
154
|
collection.insert_as(zen_master2, :zzz, "name2")
|
|
139
155
|
collection.insert_as(zen_follower, :yyy, "name3")
|
|
@@ -162,6 +178,35 @@ describe Chef::ResourceCollection::ResourceSet do
|
|
|
162
178
|
it "raises an error when attempting to find a resource that does not exist" do
|
|
163
179
|
expect { collection.find("script[nonesuch]") }.to raise_error(Chef::Exceptions::ResourceNotFound)
|
|
164
180
|
end
|
|
181
|
+
|
|
182
|
+
context "nameless resources" do
|
|
183
|
+
let(:zen_master_name) { "" }
|
|
184
|
+
|
|
185
|
+
it "looks up nameless resources with find without brackets" do
|
|
186
|
+
collection.insert_as(zen_master)
|
|
187
|
+
expect(collection.find("zen_master")).to eq(zen_master)
|
|
188
|
+
end
|
|
189
|
+
|
|
190
|
+
it "looks up nameless resources with find with empty brackets" do
|
|
191
|
+
collection.insert_as(zen_master)
|
|
192
|
+
expect(collection.find("zen_master[]")).to eq(zen_master)
|
|
193
|
+
end
|
|
194
|
+
|
|
195
|
+
it "looks up nameless resources with find with empty string hash key" do
|
|
196
|
+
collection.insert_as(zen_master)
|
|
197
|
+
expect(collection.find(zen_master: "")).to eq(zen_master)
|
|
198
|
+
end
|
|
199
|
+
|
|
200
|
+
it "looks up nameless resources with lookup with empty brackets" do
|
|
201
|
+
collection.insert_as(zen_master)
|
|
202
|
+
expect(collection.lookup("zen_master[]")).to eq(zen_master)
|
|
203
|
+
end
|
|
204
|
+
|
|
205
|
+
it "looks up nameless resources with lookup with the resource" do
|
|
206
|
+
collection.insert_as(zen_master)
|
|
207
|
+
expect(collection.lookup(zen_master)).to eq(zen_master)
|
|
208
|
+
end
|
|
209
|
+
end
|
|
165
210
|
end
|
|
166
211
|
|
|
167
212
|
describe "validate_lookup_spec!" do
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#
|
|
2
2
|
# Author:: Adam Jacob (<adam@chef.io>)
|
|
3
3
|
# Author:: Christopher Walters (<cw@chef.io>)
|
|
4
|
-
# Copyright:: Copyright 2008-
|
|
4
|
+
# Copyright:: Copyright 2008-2017, Chef Software Inc.
|
|
5
5
|
# License:: Apache License, Version 2.0
|
|
6
6
|
#
|
|
7
7
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -219,6 +219,7 @@ describe Chef::ResourceCollection do
|
|
|
219
219
|
end
|
|
220
220
|
|
|
221
221
|
it "should find resources by strings of zen_master[a,b]" do
|
|
222
|
+
Chef::Config[:treat_deprecation_warnings_as_errors] = false
|
|
222
223
|
load_up_resources
|
|
223
224
|
results = rc.resources("zen_master[monkey,dog]")
|
|
224
225
|
expect(results.length).to eql(2)
|
|
@@ -291,10 +292,10 @@ describe Chef::ResourceCollection do
|
|
|
291
292
|
expect(rc.respond_to?(:from_json)).to eq(false)
|
|
292
293
|
end
|
|
293
294
|
|
|
294
|
-
it "should convert from json using the
|
|
295
|
+
it "should convert from json using the Chef::JSONCompat library" do
|
|
295
296
|
rc << resource
|
|
296
297
|
json = Chef::JSONCompat.to_json(rc)
|
|
297
|
-
s_rc = Chef::
|
|
298
|
+
s_rc = Chef::ResourceCollection.from_json(json)
|
|
298
299
|
expect(s_rc).to be_a_kind_of(Chef::ResourceCollection)
|
|
299
300
|
expect(s_rc[0].name).to eql(resource.name)
|
|
300
301
|
end
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
# Author:: Prajakta Purohit (<prajakta@chef.io>)
|
|
4
4
|
# Author:: Tyler Cloke (<tyler@chef.io>)
|
|
5
5
|
#
|
|
6
|
-
# Copyright:: Copyright 2012-
|
|
6
|
+
# Copyright:: Copyright 2012-2017, Chef Software Inc.
|
|
7
7
|
# License:: Apache License, Version 2.0
|
|
8
8
|
#
|
|
9
9
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -285,7 +285,7 @@ describe Chef::ResourceReporter do
|
|
|
285
285
|
end
|
|
286
286
|
|
|
287
287
|
it "resource_command in prepared_run_data should be blank" do
|
|
288
|
-
expect(@first_update_report["after"]).to eq({ :command => "sensitive-resource" })
|
|
288
|
+
expect(@first_update_report["after"]).to eq({ :command => "sensitive-resource", :user => nil })
|
|
289
289
|
end
|
|
290
290
|
end
|
|
291
291
|
|
|
@@ -399,11 +399,11 @@ describe Chef::ResourceReporter do
|
|
|
399
399
|
end
|
|
400
400
|
|
|
401
401
|
it "includes an updated resource's initial state" do
|
|
402
|
-
expect(@first_update_report["before"]).to eq(current_resource.
|
|
402
|
+
expect(@first_update_report["before"]).to eq(current_resource.state_for_resource_reporter)
|
|
403
403
|
end
|
|
404
404
|
|
|
405
405
|
it "includes an updated resource's final state" do
|
|
406
|
-
expect(@first_update_report["after"]).to eq(new_resource.
|
|
406
|
+
expect(@first_update_report["after"]).to eq(new_resource.state_for_resource_reporter)
|
|
407
407
|
end
|
|
408
408
|
|
|
409
409
|
it "includes the resource's name" do
|
|
@@ -540,11 +540,11 @@ describe Chef::ResourceReporter do
|
|
|
540
540
|
end
|
|
541
541
|
|
|
542
542
|
it "includes an updated resource's initial state" do
|
|
543
|
-
expect(@first_update_report["before"]).to eq(@current_resource.
|
|
543
|
+
expect(@first_update_report["before"]).to eq(@current_resource.state_for_resource_reporter)
|
|
544
544
|
end
|
|
545
545
|
|
|
546
546
|
it "includes an updated resource's final state" do
|
|
547
|
-
expect(@first_update_report["after"]).to eq(@new_resource.
|
|
547
|
+
expect(@first_update_report["after"]).to eq(@new_resource.state_for_resource_reporter)
|
|
548
548
|
end
|
|
549
549
|
|
|
550
550
|
it "includes the resource's name" do
|