chef 12.0.3-x86-mingw32 → 12.1.0.rc.0-x86-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/CONTRIBUTING.md +4 -1
- data/README.md +42 -18
- data/distro/common/html/_sources/ctl_chef_client.txt +1 -1
- data/distro/common/html/_sources/ctl_chef_server.txt +53 -35
- data/distro/common/html/_sources/ctl_chef_solo.txt +1 -1
- data/distro/common/html/_sources/knife_bootstrap.txt +1 -1
- data/distro/common/html/_sources/knife_cookbook_site.txt +1 -1
- data/distro/common/html/_sources/knife_data_bag.txt +4 -4
- data/distro/common/html/_sources/knife_status.txt +1 -1
- data/distro/common/html/_static/searchtools.js +1 -1
- data/distro/common/html/ctl_chef_client.html +55 -7
- data/distro/common/html/ctl_chef_server.html +84 -41
- data/distro/common/html/ctl_chef_shell.html +45 -1
- data/distro/common/html/ctl_chef_solo.html +51 -5
- data/distro/common/html/index.html +2 -2
- data/distro/common/html/knife.html +1 -1
- data/distro/common/html/knife_bootstrap.html +30 -10
- data/distro/common/html/knife_cookbook_site.html +2 -0
- data/distro/common/html/knife_data_bag.html +4 -4
- data/distro/common/html/knife_node.html +2 -2
- data/distro/common/html/knife_raw.html +1 -1
- data/distro/common/html/knife_role.html +1 -1
- data/distro/common/html/knife_search.html +3 -3
- data/distro/common/html/knife_status.html +4 -0
- data/distro/common/html/searchindex.js +1 -1
- data/distro/common/man/man1/chef-shell.1 +72 -1
- data/distro/common/man/man1/knife-bootstrap.1 +71 -63
- data/distro/common/man/man1/knife-client.1 +1 -1
- data/distro/common/man/man1/knife-configure.1 +1 -1
- data/distro/common/man/man1/knife-cookbook-site.1 +4 -1
- data/distro/common/man/man1/knife-cookbook.1 +1 -1
- data/distro/common/man/man1/knife-data-bag.1 +5 -5
- data/distro/common/man/man1/knife-delete.1 +1 -1
- data/distro/common/man/man1/knife-deps.1 +1 -1
- data/distro/common/man/man1/knife-diff.1 +1 -1
- data/distro/common/man/man1/knife-download.1 +1 -1
- data/distro/common/man/man1/knife-edit.1 +1 -1
- data/distro/common/man/man1/knife-environment.1 +1 -1
- data/distro/common/man/man1/knife-exec.1 +1 -1
- data/distro/common/man/man1/knife-index-rebuild.1 +1 -1
- data/distro/common/man/man1/knife-list.1 +1 -1
- data/distro/common/man/man1/knife-node.1 +3 -3
- data/distro/common/man/man1/knife-raw.1 +2 -2
- data/distro/common/man/man1/knife-recipe-list.1 +1 -1
- data/distro/common/man/man1/knife-role.1 +2 -2
- data/distro/common/man/man1/knife-search.1 +4 -4
- data/distro/common/man/man1/knife-serve.1 +1 -1
- data/distro/common/man/man1/knife-show.1 +1 -1
- data/distro/common/man/man1/knife-ssh.1 +1 -1
- data/distro/common/man/man1/knife-ssl-check.1 +1 -1
- data/distro/common/man/man1/knife-ssl-fetch.1 +1 -1
- data/distro/common/man/man1/knife-status.1 +1 -1
- data/distro/common/man/man1/knife-tag.1 +1 -1
- data/distro/common/man/man1/knife-upload.1 +1 -1
- data/distro/common/man/man1/knife-user.1 +1 -1
- data/distro/common/man/man1/knife-xargs.1 +1 -1
- data/distro/common/man/man1/knife.1 +1 -1
- data/distro/common/man/man8/chef-apply.8 +86 -0
- data/distro/common/man/man8/chef-client.8 +76 -5
- data/distro/common/man/man8/chef-solo.8 +79 -6
- data/distro/common/markdown/man1/knife-bootstrap.mkd +1 -1
- data/distro/common/markdown/man1/knife-cookbook-site.mkd +1 -1
- data/distro/common/markdown/man1/knife-data-bag.mkd +1 -1
- data/distro/common/markdown/man1/knife-environment.mkd +1 -1
- data/distro/common/markdown/man1/knife.mkd +1 -1
- data/lib/chef.rb +0 -7
- data/lib/chef/api_client.rb +10 -2
- data/lib/chef/api_client/registration.rb +7 -9
- data/lib/chef/application.rb +28 -12
- data/lib/chef/application/apply.rb +17 -1
- data/lib/chef/application/client.rb +74 -6
- data/lib/chef/application/knife.rb +1 -2
- data/lib/chef/application/solo.rb +30 -0
- data/lib/chef/application/windows_service.rb +1 -0
- data/lib/chef/application/windows_service_manager.rb +8 -2
- data/lib/chef/applications.rb +0 -1
- data/lib/chef/audit/audit_event_proxy.rb +93 -0
- data/lib/chef/audit/audit_reporter.rb +169 -0
- data/lib/chef/audit/control_group_data.rb +140 -0
- data/lib/chef/audit/rspec_formatter.rb +37 -0
- data/lib/chef/audit/runner.rb +178 -0
- data/lib/chef/chef_fs/chef_fs_data_store.rb +11 -2
- data/lib/chef/chef_fs/config.rb +25 -4
- data/lib/chef/chef_fs/data_handler/policy_data_handler.rb +15 -0
- data/lib/chef/chef_fs/data_handler/user_data_handler.rb +1 -0
- data/lib/chef/chef_fs/file_system.rb +1 -1
- data/lib/chef/chef_fs/file_system/base_fs_dir.rb +5 -0
- data/lib/chef/chef_fs/file_system/chef_repository_file_system_cookbook_entry.rb +3 -2
- data/lib/chef/{shef/ext.rb → chef_fs/file_system/chef_repository_file_system_policies_dir.rb} +22 -3
- data/lib/chef/chef_fs/file_system/chef_repository_file_system_root_dir.rb +4 -0
- data/lib/chef/client.rb +81 -52
- data/lib/chef/config.rb +35 -3
- data/lib/chef/cookbook/metadata.rb +3 -3
- data/lib/chef/cookbook_manifest.rb +275 -0
- data/lib/chef/cookbook_site_streaming_uploader.rb +24 -23
- data/lib/chef/cookbook_uploader.rb +11 -2
- data/lib/chef/cookbook_version.rb +71 -194
- data/lib/chef/data_bag.rb +5 -2
- data/lib/chef/data_bag_item.rb +6 -3
- data/lib/chef/deprecation/warnings.rb +5 -4
- data/lib/chef/dsl/audit.rb +51 -0
- data/lib/chef/dsl/include_recipe.rb +2 -3
- data/lib/chef/dsl/reboot_pending.rb +1 -1
- data/lib/chef/dsl/recipe.rb +49 -31
- data/lib/chef/encrypted_data_bag_item/assertions.rb +0 -3
- data/lib/chef/environment.rb +5 -2
- data/lib/chef/event_dispatch/base.rb +36 -1
- data/lib/chef/event_dispatch/dispatcher.rb +3 -5
- data/lib/chef/exceptions.rb +61 -2
- data/lib/chef/file_access_control/unix.rb +12 -0
- data/lib/chef/file_access_control/windows.rb +14 -0
- data/lib/chef/formatters/doc.rb +47 -1
- data/{spec/unit/monkey_patches/string_spec.rb → lib/chef/guard_interpreter.rb} +11 -16
- data/lib/chef/guard_interpreter/resource_guard_interpreter.rb +3 -2
- data/lib/chef/http.rb +1 -2
- data/lib/chef/knife.rb +5 -3
- data/lib/chef/knife/bootstrap.rb +84 -15
- data/lib/chef/knife/bootstrap/chef_vault_handler.rb +165 -0
- data/lib/chef/knife/bootstrap/client_builder.rb +190 -0
- data/lib/chef/knife/bootstrap/{README.md → templates/README.md} +0 -0
- data/lib/chef/knife/bootstrap/{archlinux-gems.erb → templates/archlinux-gems.erb} +9 -0
- data/lib/chef/knife/bootstrap/{chef-aix.erb → templates/chef-aix.erb} +9 -0
- data/lib/chef/knife/bootstrap/{chef-full.erb → templates/chef-full.erb} +10 -1
- data/lib/chef/knife/client_create.rb +8 -7
- data/lib/chef/knife/cookbook_site_download.rb +1 -1
- data/lib/chef/knife/cookbook_site_install.rb +1 -1
- data/lib/chef/knife/cookbook_site_list.rb +1 -1
- data/lib/chef/knife/cookbook_site_search.rb +1 -1
- data/lib/chef/knife/cookbook_site_share.rb +39 -28
- data/lib/chef/knife/cookbook_site_show.rb +3 -3
- data/lib/chef/knife/cookbook_site_unshare.rb +1 -1
- data/lib/chef/knife/cookbook_test.rb +1 -0
- data/lib/chef/knife/cookbook_upload.rb +13 -8
- data/lib/chef/knife/core/bootstrap_context.rb +14 -3
- data/lib/chef/knife/core/generic_presenter.rb +5 -2
- data/lib/chef/knife/core/object_loader.rb +1 -1
- data/lib/chef/knife/core/subcommand_loader.rb +24 -0
- data/lib/chef/knife/core/ui.rb +9 -1
- data/lib/chef/knife/node_run_list_remove.rb +11 -3
- data/lib/chef/knife/raw.rb +14 -3
- data/lib/chef/knife/role_env_run_list_add.rb +86 -0
- data/lib/chef/knife/role_env_run_list_clear.rb +55 -0
- data/lib/chef/knife/role_env_run_list_remove.rb +57 -0
- data/lib/chef/knife/role_env_run_list_replace.rb +59 -0
- data/lib/chef/knife/role_env_run_list_set.rb +70 -0
- data/lib/chef/knife/role_run_list_add.rb +86 -0
- data/lib/chef/knife/role_run_list_clear.rb +55 -0
- data/lib/chef/knife/role_run_list_remove.rb +57 -0
- data/lib/chef/knife/role_run_list_replace.rb +59 -0
- data/lib/chef/knife/role_run_list_set.rb +70 -0
- data/lib/chef/knife/search.rb +4 -4
- data/lib/chef/knife/serve.rb +3 -0
- data/lib/chef/knife/ssh.rb +1 -1
- data/lib/chef/knife/ssl_check.rb +2 -2
- data/lib/chef/knife/ssl_fetch.rb +14 -1
- data/lib/chef/log.rb +10 -1
- data/lib/chef/mixin/command.rb +1 -1
- data/lib/chef/mixin/command/windows.rb +1 -5
- data/lib/chef/mixin/get_source_from_package.rb +1 -0
- data/lib/chef/mixin/params_validate.rb +2 -2
- data/lib/chef/mixin/securable.rb +1 -7
- data/lib/chef/mixin/shell_out.rb +7 -1
- data/lib/chef/mixin/template.rb +2 -14
- data/lib/chef/mixin/why_run.rb +1 -1
- data/lib/chef/monkey_patches/net_http.rb +4 -0
- data/lib/chef/monologger.rb +0 -2
- data/lib/chef/node.rb +5 -2
- data/lib/chef/node/attribute.rb +11 -9
- data/lib/chef/node/attribute_collections.rb +8 -12
- data/lib/chef/node/immutable_collections.rb +4 -10
- data/lib/chef/org.rb +148 -0
- data/lib/chef/platform/provider_mapping.rb +3 -2
- data/lib/chef/platform/provider_priority_map.rb +2 -0
- data/lib/chef/platform/query_helpers.rb +0 -3
- data/lib/chef/policy_builder/policyfile.rb +51 -8
- data/lib/chef/provider/deploy.rb +1 -2
- data/lib/chef/provider/directory.rb +3 -3
- data/lib/chef/provider/dsc_script.rb +13 -7
- data/lib/chef/provider/env.rb +8 -8
- data/lib/chef/provider/execute.rb +55 -36
- data/lib/chef/provider/file.rb +8 -0
- data/lib/chef/provider/group.rb +2 -0
- data/lib/chef/provider/group/dscl.rb +3 -4
- data/lib/chef/provider/ifconfig.rb +25 -25
- data/lib/chef/provider/ifconfig/aix.rb +25 -27
- data/lib/chef/provider/lwrp_base.rb +1 -1
- data/lib/chef/provider/mount.rb +2 -2
- data/lib/chef/provider/mount/mount.rb +3 -4
- data/lib/chef/provider/mount/solaris.rb +1 -1
- data/lib/chef/provider/package.rb +297 -48
- data/lib/chef/provider/package/aix.rb +25 -30
- data/lib/chef/provider/package/apt.rb +63 -19
- data/lib/chef/provider/package/dpkg.rb +15 -16
- data/lib/chef/provider/package/macports.rb +7 -7
- data/lib/chef/provider/package/openbsd.rb +107 -0
- data/lib/chef/provider/package/pacman.rb +13 -15
- data/lib/chef/provider/package/portage.rb +3 -4
- data/lib/chef/provider/package/rpm.rb +28 -17
- data/lib/chef/provider/package/rubygems.rb +9 -9
- data/lib/chef/provider/package/solaris.rb +17 -21
- data/lib/chef/provider/package/windows/msi.rb +1 -1
- data/lib/chef/provider/package/yum-dump.py +2 -2
- data/lib/chef/provider/package/yum.rb +117 -51
- data/lib/chef/provider/package/zypper.rb +17 -18
- data/lib/chef/provider/powershell_script.rb +4 -4
- data/lib/chef/provider/registry_key.rb +2 -2
- data/lib/chef/provider/remote_directory.rb +1 -1
- data/lib/chef/provider/script.rb +25 -16
- data/lib/chef/provider/service.rb +1 -1
- data/lib/chef/provider/service/freebsd.rb +1 -1
- data/lib/chef/provider/service/openbsd.rb +216 -0
- data/lib/chef/provider/service/upstart.rb +1 -1
- data/lib/chef/provider/service/windows.rb +99 -1
- data/lib/chef/provider/user.rb +1 -1
- data/lib/chef/provider/user/dscl.rb +19 -4
- data/lib/chef/providers.rb +2 -0
- data/lib/chef/recipe.rb +11 -5
- data/lib/chef/request_id.rb +1 -1
- data/lib/chef/resource.rb +839 -444
- data/lib/chef/resource/chef_gem.rb +20 -3
- data/lib/chef/resource/conditional.rb +3 -14
- data/lib/chef/resource/dsc_script.rb +14 -0
- data/lib/chef/resource/execute.rb +14 -7
- data/lib/chef/resource/file.rb +14 -0
- data/lib/chef/resource/file/verification.rb +122 -0
- data/lib/chef/resource/ips_package.rb +1 -1
- data/lib/chef/resource/lwrp_base.rb +2 -11
- data/lib/chef/resource/macports_package.rb +2 -1
- data/lib/chef/resource/openbsd_package.rb +51 -0
- data/lib/chef/resource/package.rb +2 -2
- data/lib/chef/resource/paludis_package.rb +1 -1
- data/lib/chef/resource/reboot.rb +1 -1
- data/lib/chef/resource/remote_file.rb +1 -0
- data/lib/chef/resource/rpm_package.rb +9 -0
- data/lib/chef/resource/script.rb +11 -0
- data/lib/chef/resource/template.rb +2 -3
- data/lib/chef/resource/windows_package.rb +1 -1
- data/lib/chef/resource/windows_service.rb +18 -0
- data/lib/chef/resource_builder.rb +137 -0
- data/lib/chef/resource_definition.rb +1 -1
- data/lib/chef/resource_reporter.rb +1 -1
- data/lib/chef/resources.rb +1 -0
- data/lib/chef/role.rb +17 -4
- data/lib/chef/run_context.rb +10 -6
- data/lib/chef/search/query.rb +66 -87
- data/lib/chef/shell/ext.rb +2 -2
- data/lib/chef/util/diff.rb +1 -4
- data/lib/chef/util/dsc/configuration_generator.rb +30 -6
- data/lib/chef/util/dsc/lcm_output_parser.rb +7 -3
- data/lib/chef/util/dsc/local_configuration_manager.rb +8 -8
- data/lib/chef/util/file_edit.rb +2 -2
- data/lib/chef/util/path_helper.rb +1 -4
- data/lib/chef/util/windows/net_use.rb +3 -3
- data/lib/chef/version.rb +1 -1
- data/lib/chef/win32/api.rb +1 -0
- data/lib/chef/win32/api/security.rb +26 -0
- data/lib/chef/win32/file.rb +21 -0
- data/lib/chef/win32/security.rb +46 -0
- data/lib/chef/win32/security/token.rb +8 -0
- data/lib/chef/win32/version.rb +0 -4
- data/spec/data/recipes.tgz +0 -0
- data/spec/functional/application_spec.rb +1 -1
- data/spec/functional/audit/rspec_formatter_spec.rb +54 -0
- data/spec/functional/audit/runner_spec.rb +137 -0
- data/spec/functional/dsl/reboot_pending_spec.rb +10 -10
- data/spec/functional/dsl/registry_helper_spec.rb +6 -6
- data/spec/functional/event_loggers/windows_eventlog_spec.rb +5 -5
- data/spec/functional/file_content_management/deploy_strategies_spec.rb +12 -21
- data/spec/functional/http/simple_spec.rb +1 -1
- data/spec/functional/knife/cookbook_delete_spec.rb +24 -24
- data/spec/functional/knife/exec_spec.rb +2 -4
- data/spec/functional/knife/smoke_test.rb +1 -1
- data/spec/functional/knife/ssh_spec.rb +23 -23
- data/spec/functional/provider/remote_file/cache_control_data_spec.rb +8 -8
- data/spec/functional/provider/whyrun_safe_ruby_block_spec.rb +2 -2
- data/spec/functional/rebooter_spec.rb +1 -1
- data/spec/functional/resource/aix_service_spec.rb +3 -0
- data/spec/functional/resource/aixinit_service_spec.rb +3 -3
- data/spec/functional/resource/bash_spec.rb +88 -0
- data/spec/functional/resource/deploy_revision_spec.rb +99 -100
- data/spec/functional/resource/env_spec.rb +3 -3
- data/spec/functional/resource/execute_spec.rb +97 -63
- data/spec/functional/resource/file_spec.rb +7 -7
- data/spec/functional/resource/git_spec.rb +13 -13
- data/spec/functional/resource/group_spec.rb +28 -25
- data/spec/functional/resource/ifconfig_spec.rb +2 -2
- data/spec/functional/resource/link_spec.rb +77 -78
- data/spec/functional/resource/mount_spec.rb +5 -5
- data/spec/functional/resource/ohai_spec.rb +1 -1
- data/spec/functional/resource/package_spec.rb +22 -22
- data/spec/functional/resource/powershell_spec.rb +57 -42
- data/spec/functional/resource/reboot_spec.rb +2 -2
- data/spec/functional/resource/registry_spec.rb +91 -91
- data/spec/functional/resource/remote_directory_spec.rb +19 -19
- data/spec/functional/resource/remote_file_spec.rb +18 -18
- data/spec/functional/resource/template_spec.rb +4 -4
- data/spec/functional/resource/user/dscl_spec.rb +4 -4
- data/spec/functional/resource/user/useradd_spec.rb +64 -51
- data/spec/functional/resource/windows_service_spec.rb +98 -0
- data/spec/functional/run_lock_spec.rb +9 -9
- data/spec/functional/shell_spec.rb +3 -3
- data/spec/functional/tiny_server_spec.rb +12 -12
- data/spec/functional/util/path_helper_spec.rb +1 -1
- data/spec/functional/version_spec.rb +1 -1
- data/spec/functional/win32/registry_helper_spec.rb +125 -125
- data/spec/functional/win32/security_spec.rb +65 -2
- data/spec/functional/win32/service_manager_spec.rb +30 -84
- data/spec/functional/win32/versions_spec.rb +6 -6
- data/spec/integration/client/client_spec.rb +102 -9
- data/spec/integration/knife/chef_fs_data_store_spec.rb +12 -8
- data/spec/integration/knife/common_options_spec.rb +3 -3
- data/spec/integration/knife/cookbook_api_ipv6_spec.rb +2 -2
- data/spec/integration/knife/deps_spec.rb +4 -4
- data/spec/integration/knife/diff_spec.rb +6 -6
- data/spec/integration/knife/download_spec.rb +6 -6
- data/spec/integration/knife/list_spec.rb +2 -2
- data/spec/integration/knife/raw_spec.rb +5 -5
- data/spec/integration/knife/serve_spec.rb +3 -3
- data/spec/integration/knife/show_spec.rb +3 -3
- data/spec/integration/knife/upload_spec.rb +18 -18
- data/spec/integration/recipes/lwrp_inline_resources_spec.rb +1 -1
- data/spec/integration/solo/solo_spec.rb +11 -12
- data/spec/spec_helper.rb +27 -15
- data/spec/stress/win32/file_spec.rb +4 -4
- data/spec/stress/win32/security_spec.rb +4 -4
- data/spec/support/chef_helpers.rb +3 -3
- data/spec/support/matchers/leak.rb +2 -2
- data/spec/support/mock/platform.rb +1 -1
- data/spec/support/pedant/Gemfile +3 -0
- data/spec/support/pedant/pedant_config.rb +9 -2
- data/spec/support/pedant/run_pedant.rb +15 -16
- data/spec/support/platform_helpers.rb +8 -12
- data/spec/support/shared/functional/directory_resource.rb +13 -13
- data/spec/support/shared/functional/file_resource.rb +83 -83
- data/spec/support/shared/functional/http.rb +1 -1
- data/spec/support/shared/functional/securable_resource.rb +64 -64
- data/spec/support/shared/functional/securable_resource_with_reporting.rb +43 -41
- data/spec/support/shared/functional/win32_service.rb +60 -0
- data/spec/support/shared/functional/windows_script.rb +8 -8
- data/spec/support/shared/integration/knife_support.rb +8 -5
- data/spec/support/shared/matchers/exit_with_code.rb +6 -2
- data/spec/support/shared/unit/api_error_inspector.rb +8 -8
- data/spec/support/shared/unit/execute_resource.rb +24 -20
- data/spec/support/shared/unit/file_system_support.rb +2 -2
- data/spec/support/shared/unit/platform_introspector.rb +21 -21
- data/spec/support/shared/unit/provider/file.rb +239 -210
- data/spec/support/shared/unit/provider/useradd_based_user_provider.rb +69 -69
- data/spec/support/shared/unit/script_resource.rb +40 -32
- data/spec/support/shared/unit/windows_script_resource.rb +8 -8
- data/spec/unit/api_client/registration_spec.rb +47 -47
- data/spec/unit/api_client_spec.rb +107 -69
- data/spec/unit/application/apply_spec.rb +31 -15
- data/spec/unit/application/client_spec.rb +146 -45
- data/spec/unit/application/knife_spec.rb +31 -31
- data/spec/unit/application/solo_spec.rb +59 -43
- data/spec/unit/application_spec.rb +109 -74
- data/spec/unit/audit/audit_event_proxy_spec.rb +311 -0
- data/spec/unit/audit/audit_reporter_spec.rb +393 -0
- data/spec/unit/audit/control_group_data_spec.rb +478 -0
- data/{lib/chef/monkey_patches/file.rb → spec/unit/audit/rspec_formatter_spec.rb} +11 -8
- data/spec/unit/audit/runner_spec.rb +135 -0
- data/spec/unit/chef_fs/config_spec.rb +52 -0
- data/spec/unit/chef_fs/diff_spec.rb +12 -12
- data/spec/unit/chef_fs/file_pattern_spec.rb +276 -277
- data/spec/unit/chef_fs/file_system/operation_failed_error_spec.rb +6 -6
- data/spec/unit/chef_fs/file_system_spec.rb +26 -13
- data/spec/unit/chef_fs/parallelizer.rb +87 -87
- data/spec/unit/chef_spec.rb +1 -1
- data/spec/unit/client_spec.rb +263 -97
- data/spec/unit/config_fetcher_spec.rb +13 -13
- data/spec/unit/config_spec.rb +105 -66
- data/spec/unit/cookbook/chefignore_spec.rb +6 -6
- data/spec/unit/cookbook/cookbook_version_loader_spec.rb +3 -3
- data/spec/unit/cookbook/metadata_spec.rb +149 -149
- data/spec/unit/cookbook/syntax_check_spec.rb +36 -31
- data/spec/unit/cookbook_loader_spec.rb +62 -58
- data/spec/unit/cookbook_manifest_spec.rb +141 -468
- data/spec/unit/cookbook_site_streaming_uploader_spec.rb +27 -27
- data/spec/unit/cookbook_spec.rb +15 -15
- data/spec/unit/cookbook_uploader_spec.rb +37 -3
- data/spec/unit/cookbook_version_file_specificity_spec.rb +554 -0
- data/spec/unit/cookbook_version_spec.rb +98 -240
- data/spec/unit/daemon_spec.rb +31 -31
- data/spec/unit/data_bag_item_spec.rb +121 -89
- data/spec/unit/data_bag_spec.rb +35 -35
- data/spec/unit/deprecation_spec.rb +27 -14
- data/spec/unit/digester_spec.rb +3 -3
- data/spec/unit/dsl/audit_spec.rb +43 -0
- data/spec/unit/dsl/data_query_spec.rb +1 -1
- data/spec/unit/dsl/platform_introspection_spec.rb +14 -14
- data/spec/unit/dsl/reboot_pending_spec.rb +18 -18
- data/spec/unit/dsl/regsitry_helper_spec.rb +6 -6
- data/spec/unit/encrypted_data_bag_item_spec.rb +58 -82
- data/spec/unit/environment_spec.rb +105 -105
- data/spec/unit/exceptions_spec.rb +47 -1
- data/spec/unit/file_access_control_spec.rb +62 -56
- data/spec/unit/file_cache_spec.rb +11 -11
- data/spec/unit/file_content_management/deploy/cp_spec.rb +2 -2
- data/spec/unit/file_content_management/deploy/mv_unix_spec.rb +10 -10
- data/spec/unit/file_content_management/deploy/mv_windows_spec.rb +23 -23
- data/spec/unit/formatters/error_inspectors/compile_error_inspector_spec.rb +14 -14
- data/spec/unit/formatters/error_inspectors/cookbook_resolve_error_inspector_spec.rb +12 -12
- data/spec/unit/formatters/error_inspectors/cookbook_sync_error_inspector_spec.rb +1 -1
- data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +16 -16
- data/spec/unit/formatters/error_inspectors/run_list_expansion_error_inspector_spec.rb +4 -4
- data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +103 -13
- data/spec/unit/guard_interpreter_spec.rb +41 -0
- data/spec/unit/handler/json_file_spec.rb +10 -10
- data/spec/unit/handler_spec.rb +39 -39
- data/spec/unit/http/basic_client_spec.rb +3 -3
- data/spec/unit/http/http_request_spec.rb +10 -10
- data/spec/unit/http/simple_spec.rb +3 -3
- data/spec/unit/http/ssl_policies_spec.rb +15 -15
- data/spec/unit/http/validate_content_length_spec.rb +18 -13
- data/spec/unit/http_spec.rb +16 -9
- data/spec/unit/knife/bootstrap/chef_vault_handler_spec.rb +153 -0
- data/spec/unit/knife/bootstrap/client_builder_spec.rb +178 -0
- data/spec/unit/knife/bootstrap_spec.rb +144 -91
- data/spec/unit/knife/client_bulk_delete_spec.rb +24 -24
- data/spec/unit/knife/client_create_spec.rb +57 -43
- data/spec/unit/knife/client_delete_spec.rb +15 -15
- data/spec/unit/knife/client_edit_spec.rb +4 -4
- data/spec/unit/knife/client_list_spec.rb +2 -2
- data/spec/unit/knife/client_reregister_spec.rb +9 -9
- data/spec/unit/knife/configure_client_spec.rb +20 -20
- data/spec/unit/knife/configure_spec.rb +85 -85
- data/spec/unit/knife/cookbook_bulk_delete_spec.rb +15 -15
- data/spec/unit/knife/cookbook_create_spec.rb +59 -59
- data/spec/unit/knife/cookbook_delete_spec.rb +49 -49
- data/spec/unit/knife/cookbook_download_spec.rb +56 -56
- data/spec/unit/knife/cookbook_list_spec.rb +9 -9
- data/spec/unit/knife/cookbook_metadata_from_file_spec.rb +8 -8
- data/spec/unit/knife/cookbook_metadata_spec.rb +44 -44
- data/spec/unit/knife/cookbook_show_spec.rb +29 -29
- data/spec/unit/knife/cookbook_site_download_spec.rb +26 -26
- data/spec/unit/knife/cookbook_site_install_spec.rb +5 -1
- data/spec/unit/knife/cookbook_site_share_spec.rb +68 -59
- data/spec/unit/knife/cookbook_site_unshare_spec.rb +15 -15
- data/spec/unit/knife/cookbook_test_spec.rb +16 -16
- data/spec/unit/knife/cookbook_upload_spec.rb +105 -71
- data/spec/unit/knife/core/bootstrap_context_spec.rb +37 -22
- data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +36 -36
- data/spec/unit/knife/core/object_loader_spec.rb +3 -3
- data/spec/unit/knife/core/subcommand_loader_spec.rb +107 -33
- data/spec/unit/knife/core/ui_spec.rb +84 -72
- data/spec/unit/knife/data_bag_from_file_spec.rb +1 -1
- data/spec/unit/knife/environment_compare_spec.rb +12 -12
- data/spec/unit/knife/environment_create_spec.rb +16 -16
- data/spec/unit/knife/environment_delete_spec.rb +14 -14
- data/spec/unit/knife/environment_edit_spec.rb +15 -15
- data/spec/unit/knife/environment_from_file_spec.rb +17 -17
- data/spec/unit/knife/environment_list_spec.rb +7 -7
- data/spec/unit/knife/environment_show_spec.rb +10 -10
- data/spec/unit/knife/index_rebuild_spec.rb +17 -17
- data/spec/unit/knife/knife_help.rb +24 -24
- data/spec/unit/knife/node_bulk_delete_spec.rb +14 -14
- data/spec/unit/knife/node_delete_spec.rb +11 -11
- data/spec/unit/knife/node_edit_spec.rb +17 -17
- data/spec/unit/knife/node_environment_set_spec.rb +12 -12
- data/spec/unit/knife/node_from_file_spec.rb +8 -8
- data/spec/unit/knife/node_list_spec.rb +9 -9
- data/spec/unit/knife/node_run_list_add_spec.rb +29 -29
- data/spec/unit/knife/node_run_list_remove_spec.rb +28 -13
- data/spec/unit/knife/node_run_list_set_spec.rb +27 -27
- data/spec/unit/knife/raw_spec.rb +43 -0
- data/spec/unit/knife/role_bulk_delete_spec.rb +12 -12
- data/spec/unit/knife/role_create_spec.rb +12 -12
- data/spec/unit/knife/role_delete_spec.rb +10 -10
- data/spec/unit/knife/role_edit_spec.rb +13 -13
- data/spec/unit/knife/role_env_run_list_add_spec.rb +217 -0
- data/spec/unit/knife/role_env_run_list_clear_spec.rb +100 -0
- data/spec/unit/knife/role_env_run_list_remove_spec.rb +108 -0
- data/spec/unit/knife/role_env_run_list_replace_spec.rb +108 -0
- data/spec/unit/knife/role_env_run_list_set_spec.rb +102 -0
- data/spec/unit/knife/role_from_file_spec.rb +10 -10
- data/spec/unit/knife/role_list_spec.rb +7 -7
- data/spec/unit/knife/role_run_list_add_spec.rb +179 -0
- data/spec/unit/knife/role_run_list_clear_spec.rb +90 -0
- data/spec/unit/knife/role_run_list_remove_spec.rb +98 -0
- data/spec/unit/knife/role_run_list_replace_spec.rb +101 -0
- data/spec/unit/knife/role_run_list_set_spec.rb +92 -0
- data/spec/unit/knife/ssh_spec.rb +66 -66
- data/spec/unit/knife/ssl_check_spec.rb +27 -27
- data/spec/unit/knife/ssl_fetch_spec.rb +45 -12
- data/spec/unit/knife/status_spec.rb +5 -5
- data/spec/unit/knife/tag_create_spec.rb +5 -5
- data/spec/unit/knife/tag_delete_spec.rb +6 -6
- data/spec/unit/knife/tag_list_spec.rb +4 -4
- data/spec/unit/knife/user_create_spec.rb +18 -18
- data/spec/unit/knife/user_delete_spec.rb +4 -4
- data/spec/unit/knife/user_edit_spec.rb +7 -7
- data/spec/unit/knife/user_list_spec.rb +2 -2
- data/spec/unit/knife/user_reregister_spec.rb +10 -10
- data/spec/unit/knife/user_show_spec.rb +5 -5
- data/spec/unit/knife_spec.rb +36 -36
- data/spec/unit/lwrp_spec.rb +63 -39
- data/spec/unit/mash_spec.rb +6 -6
- data/spec/unit/mixin/checksum_spec.rb +2 -2
- data/spec/unit/mixin/command_spec.rb +13 -13
- data/spec/unit/mixin/convert_to_class_name_spec.rb +6 -6
- data/spec/unit/mixin/deep_merge_spec.rb +49 -49
- data/spec/unit/mixin/deprecation_spec.rb +5 -5
- data/spec/unit/mixin/enforce_ownership_and_permissions_spec.rb +14 -14
- data/spec/unit/mixin/homebrew_user_spec.rb +3 -3
- data/spec/unit/mixin/params_validate_spec.rb +71 -71
- data/spec/unit/mixin/path_sanity_spec.rb +14 -14
- data/spec/unit/mixin/securable_spec.rb +177 -177
- data/spec/unit/mixin/shell_out_spec.rb +56 -27
- data/spec/unit/mixin/template_spec.rb +31 -31
- data/spec/unit/mixin/windows_architecture_helper_spec.rb +5 -5
- data/spec/unit/mixin/xml_escape_spec.rb +7 -7
- data/spec/unit/monkey_patches/uri_spec.rb +1 -1
- data/spec/unit/monologger_spec.rb +3 -3
- data/spec/unit/node/attribute_spec.rb +185 -136
- data/spec/unit/node/immutable_collections_spec.rb +22 -22
- data/spec/unit/node_spec.rb +210 -179
- data/spec/unit/org_spec.rb +196 -0
- data/spec/unit/platform/query_helpers_spec.rb +5 -5
- data/spec/unit/platform_spec.rb +46 -46
- data/spec/unit/policy_builder/expand_node_object_spec.rb +17 -18
- data/spec/unit/policy_builder/policyfile_spec.rb +159 -71
- data/spec/unit/provider/directory_spec.rb +5 -5
- data/spec/unit/provider/dsc_script_spec.rb +6 -6
- data/spec/unit/provider/env_spec.rb +27 -14
- data/spec/unit/provider/execute_spec.rb +139 -68
- data/spec/unit/provider/file/content_spec.rb +8 -8
- data/spec/unit/provider/git_spec.rb +10 -5
- data/spec/unit/provider/group/dscl_spec.rb +8 -11
- data/spec/unit/provider/group_spec.rb +13 -13
- data/spec/unit/provider/ifconfig/aix_spec.rb +3 -2
- data/spec/unit/provider/ifconfig/debian_spec.rb +19 -19
- data/spec/unit/provider/ifconfig_spec.rb +2 -2
- data/spec/unit/provider/mdadm_spec.rb +2 -2
- data/spec/unit/provider/mount/aix_spec.rb +5 -5
- data/spec/unit/provider/mount/mount_spec.rb +22 -22
- data/spec/unit/provider/mount/solaris_spec.rb +20 -20
- data/spec/unit/provider/package/aix_spec.rb +23 -22
- data/spec/unit/provider/package/apt_spec.rb +23 -4
- data/spec/unit/provider/package/dpkg_spec.rb +14 -15
- data/spec/unit/provider/package/freebsd/pkgng_spec.rb +1 -1
- data/spec/unit/provider/package/freebsd/port_spec.rb +1 -1
- data/spec/unit/provider/package/ips_spec.rb +1 -2
- data/spec/unit/provider/package/macports_spec.rb +14 -14
- data/spec/unit/provider/package/openbsd_spec.rb +66 -0
- data/spec/unit/provider/package/pacman_spec.rb +15 -14
- data/spec/unit/provider/package/portage_spec.rb +11 -11
- data/spec/unit/provider/package/rpm_spec.rb +132 -84
- data/spec/unit/provider/package/rubygems_spec.rb +54 -25
- data/spec/unit/provider/package/solaris_spec.rb +22 -25
- data/spec/unit/provider/package/yum_spec.rb +237 -36
- data/spec/unit/provider/package/zypper_spec.rb +9 -12
- data/spec/unit/provider/package_spec.rb +276 -2
- data/spec/unit/provider/package_spec.rbe +0 -0
- data/spec/unit/provider/remote_directory_spec.rb +25 -25
- data/spec/unit/provider/remote_file/ftp_spec.rb +3 -3
- data/spec/unit/provider/route_spec.rb +3 -3
- data/spec/unit/provider/script_spec.rb +61 -43
- data/spec/unit/provider/service/aix_service_spec.rb +5 -5
- data/spec/unit/provider/service/arch_service_spec.rb +5 -5
- data/spec/unit/provider/service/debian_service_spec.rb +8 -8
- data/spec/unit/provider/service/freebsd_service_spec.rb +16 -2
- data/spec/unit/provider/service/gentoo_service_spec.rb +8 -8
- data/spec/unit/provider/service/init_service_spec.rb +5 -5
- data/spec/unit/provider/service/insserv_service_spec.rb +2 -2
- data/spec/unit/provider/service/invokercd_service_spec.rb +5 -5
- data/spec/unit/provider/service/macosx_spec.rb +7 -7
- data/spec/unit/provider/service/openbsd_service_spec.rb +543 -0
- data/spec/unit/provider/service/redhat_spec.rb +4 -4
- data/spec/unit/provider/service/simple_service_spec.rb +2 -2
- data/spec/unit/provider/service/solaris_smf_service_spec.rb +14 -14
- data/spec/unit/provider/service/systemd_service_spec.rb +15 -7
- data/spec/unit/provider/service/upstart_service_spec.rb +4 -4
- data/spec/unit/provider/service/windows_spec.rb +119 -25
- data/spec/unit/provider/service_spec.rb +1 -1
- data/spec/unit/provider/user/dscl_spec.rb +38 -30
- data/spec/unit/provider/user_spec.rb +1 -1
- data/spec/unit/provider_resolver_spec.rb +7 -7
- data/spec/unit/provider_spec.rb +23 -23
- data/spec/unit/recipe_spec.rb +194 -83
- data/spec/unit/registry_helper_spec.rb +143 -143
- data/spec/unit/resource/chef_gem_spec.rb +117 -3
- data/spec/unit/resource/conditional_action_not_nothing_spec.rb +2 -2
- data/spec/unit/resource/conditional_spec.rb +56 -15
- data/spec/unit/resource/deploy_spec.rb +2 -2
- data/spec/unit/resource/dsc_script_spec.rb +32 -0
- data/spec/unit/resource/execute_spec.rb +4 -0
- data/spec/unit/resource/file/verification_spec.rb +111 -0
- data/spec/unit/resource/file_spec.rb +14 -0
- data/spec/unit/resource/openbsd_package_spec.rb +49 -0
- data/spec/unit/resource/remote_file_spec.rb +12 -12
- data/spec/unit/resource/resource_notification_spec.rb +18 -18
- data/spec/unit/resource/rpm_package_spec.rb +12 -0
- data/spec/unit/resource/scm_spec.rb +4 -4
- data/spec/unit/resource/script_spec.rb +3 -5
- data/spec/unit/resource/subversion_spec.rb +1 -1
- data/spec/unit/resource_builder_spec.rb +1 -0
- data/spec/unit/resource_collection/resource_list_spec.rb +2 -2
- data/spec/unit/resource_collection/resource_set_spec.rb +3 -3
- data/spec/unit/resource_collection/stepable_iterator_spec.rb +24 -24
- data/spec/unit/resource_collection_spec.rb +52 -52
- data/spec/unit/resource_definition_spec.rb +1 -1
- data/spec/unit/resource_reporter_spec.rb +118 -118
- data/spec/unit/resource_spec.rb +131 -125
- data/spec/unit/rest/auth_credentials_spec.rb +73 -73
- data/spec/unit/rest_spec.rb +12 -12
- data/spec/unit/role_spec.rb +85 -84
- data/spec/unit/run_context/cookbook_compiler_spec.rb +18 -18
- data/spec/unit/run_context_spec.rb +39 -68
- data/spec/unit/run_list/run_list_expansion_spec.rb +21 -21
- data/spec/unit/run_list/run_list_item_spec.rb +28 -28
- data/spec/unit/run_list/versioned_recipe_list_spec.rb +14 -14
- data/spec/unit/run_list_spec.rb +55 -55
- data/spec/unit/run_lock_spec.rb +14 -14
- data/spec/unit/run_status_spec.rb +24 -24
- data/spec/unit/scan_access_control_spec.rb +23 -23
- data/spec/unit/search/query_spec.rb +54 -66
- data/spec/unit/shell/model_wrapper_spec.rb +13 -13
- data/spec/unit/shell/shell_ext_spec.rb +32 -32
- data/spec/unit/shell/shell_session_spec.rb +24 -24
- data/spec/unit/shell_out_spec.rb +4 -4
- data/spec/unit/shell_spec.rb +27 -27
- data/spec/unit/user_spec.rb +50 -50
- data/spec/unit/util/backup_spec.rb +32 -32
- data/spec/unit/util/diff_spec.rb +31 -31
- data/spec/unit/util/dsc/configuration_generator_spec.rb +38 -16
- data/spec/unit/util/dsc/lcm_output_parser_spec.rb +21 -26
- data/spec/unit/util/dsc/local_configuration_manager_spec.rb +10 -10
- data/spec/unit/util/editor_spec.rb +10 -10
- data/spec/unit/util/file_edit_spec.rb +10 -10
- data/spec/unit/util/path_helper_spec.rb +38 -46
- data/spec/unit/util/powershell/cmdlet_spec.rb +9 -9
- data/spec/unit/util/selinux_spec.rb +30 -30
- data/spec/unit/util/threaded_job_queue_spec.rb +6 -6
- data/spec/unit/version/platform_spec.rb +5 -5
- data/spec/unit/version_class_spec.rb +15 -15
- data/spec/unit/version_constraint/platform_spec.rb +7 -7
- data/spec/unit/version_constraint_spec.rb +43 -43
- data/spec/unit/windows_service_spec.rb +15 -15
- data/spec/unit/workstation_config_loader_spec.rb +2 -2
- data/tasks/rspec.rb +16 -18
- metadata +126 -49
- data/bin/shef +0 -35
- data/lib/chef/application/agent.rb +0 -18
- data/lib/chef/monkey_patches/fileutils.rb +0 -65
- data/lib/chef/monkey_patches/numeric.rb +0 -15
- data/lib/chef/monkey_patches/object.rb +0 -9
- data/lib/chef/monkey_patches/pathname.rb +0 -32
- data/lib/chef/monkey_patches/regexp.rb +0 -34
- data/lib/chef/monkey_patches/securerandom.rb +0 -44
- data/lib/chef/monkey_patches/string.rb +0 -49
- data/lib/chef/monkey_patches/tempfile.rb +0 -64
- data/lib/chef/monkey_patches/uri.rb +0 -70
@@ -66,6 +66,20 @@ describe Chef::Resource::File do
|
|
66
66
|
expect { @resource.action :blues }.to raise_error(ArgumentError)
|
67
67
|
end
|
68
68
|
|
69
|
+
it "should accept a block, symbol, or string for verify" do
|
70
|
+
expect {@resource.verify {}}.not_to raise_error
|
71
|
+
expect {@resource.verify ""}.not_to raise_error
|
72
|
+
expect {@resource.verify :json}.not_to raise_error
|
73
|
+
expect {@resource.verify true}.to raise_error
|
74
|
+
expect {@resource.verify false}.to raise_error
|
75
|
+
end
|
76
|
+
|
77
|
+
it "should accept multiple verify statements" do
|
78
|
+
@resource.verify "foo"
|
79
|
+
@resource.verify "bar"
|
80
|
+
@resource.verify.length == 2
|
81
|
+
end
|
82
|
+
|
69
83
|
it "should use the object name as the path by default" do
|
70
84
|
expect(@resource.path).to eql("fakey_fakerton")
|
71
85
|
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
#
|
2
|
+
# Authors:: AJ Christensen (<aj@opscode.com>)
|
3
|
+
# Richard Manyanza (<liseki@nyikacraftsmen.com>)
|
4
|
+
# Scott Bonds (<scott@ggr.com>)
|
5
|
+
# Copyright:: Copyright (c) 2008 Opscode, Inc.
|
6
|
+
# Copyright:: Copyright (c) 2014 Richard Manyanza, Scott Bonds
|
7
|
+
# License:: Apache License, Version 2.0
|
8
|
+
#
|
9
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
10
|
+
# you may not use this file except in compliance with the License.
|
11
|
+
# You may obtain a copy of the License at
|
12
|
+
#
|
13
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
14
|
+
#
|
15
|
+
# Unless required by applicable law or agreed to in writing, software
|
16
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
17
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
18
|
+
# See the License for the specific language governing permissions and
|
19
|
+
# limitations under the License.
|
20
|
+
#
|
21
|
+
|
22
|
+
require 'spec_helper'
|
23
|
+
require 'ostruct'
|
24
|
+
|
25
|
+
describe Chef::Resource::OpenbsdPackage do
|
26
|
+
|
27
|
+
before(:each) do
|
28
|
+
@node = Chef::Node.new
|
29
|
+
@events = Chef::EventDispatch::Dispatcher.new
|
30
|
+
@run_context = Chef::RunContext.new(@node, {}, @events)
|
31
|
+
@resource = Chef::Resource::OpenbsdPackage.new("foo", @run_context)
|
32
|
+
end
|
33
|
+
|
34
|
+
describe "Initialization" do
|
35
|
+
it "should return a Chef::Resource::OpenbsdPackage" do
|
36
|
+
expect(@resource).to be_a_kind_of(Chef::Resource::OpenbsdPackage)
|
37
|
+
end
|
38
|
+
|
39
|
+
it "should set the resource_name to :openbsd_package" do
|
40
|
+
expect(@resource.resource_name).to eql(:openbsd_package)
|
41
|
+
end
|
42
|
+
|
43
|
+
it "should not set the provider" do
|
44
|
+
expect(@resource.provider).to be_nil
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
end
|
49
|
+
|
@@ -113,40 +113,40 @@ describe Chef::Resource::RemoteFile do
|
|
113
113
|
describe "ftp_active_mode" do
|
114
114
|
it "should accept a boolean for the ftp_active_mode object" do
|
115
115
|
@resource.ftp_active_mode true
|
116
|
-
expect(@resource.ftp_active_mode).to
|
116
|
+
expect(@resource.ftp_active_mode).to be_truthy
|
117
117
|
end
|
118
118
|
|
119
119
|
it "should default to false" do
|
120
|
-
expect(@resource.ftp_active_mode).to
|
120
|
+
expect(@resource.ftp_active_mode).to be_falsey
|
121
121
|
end
|
122
122
|
end
|
123
123
|
|
124
124
|
describe "conditional get options" do
|
125
125
|
it "defaults to using etags and last modified" do
|
126
|
-
expect(@resource.use_etags).to
|
127
|
-
expect(@resource.use_last_modified).to
|
126
|
+
expect(@resource.use_etags).to be_truthy
|
127
|
+
expect(@resource.use_last_modified).to be_truthy
|
128
128
|
end
|
129
129
|
|
130
130
|
it "enable or disables etag and last modified options as a group" do
|
131
131
|
@resource.use_conditional_get(false)
|
132
|
-
expect(@resource.use_etags).to
|
133
|
-
expect(@resource.use_last_modified).to
|
132
|
+
expect(@resource.use_etags).to be_falsey
|
133
|
+
expect(@resource.use_last_modified).to be_falsey
|
134
134
|
|
135
135
|
@resource.use_conditional_get(true)
|
136
|
-
expect(@resource.use_etags).to
|
137
|
-
expect(@resource.use_last_modified).to
|
136
|
+
expect(@resource.use_etags).to be_truthy
|
137
|
+
expect(@resource.use_last_modified).to be_truthy
|
138
138
|
end
|
139
139
|
|
140
140
|
it "disables etags indivdually" do
|
141
141
|
@resource.use_etags(false)
|
142
|
-
expect(@resource.use_etags).to
|
143
|
-
expect(@resource.use_last_modified).to
|
142
|
+
expect(@resource.use_etags).to be_falsey
|
143
|
+
expect(@resource.use_last_modified).to be_truthy
|
144
144
|
end
|
145
145
|
|
146
146
|
it "disables last modified individually" do
|
147
147
|
@resource.use_last_modified(false)
|
148
|
-
expect(@resource.use_last_modified).to
|
149
|
-
expect(@resource.use_etags).to
|
148
|
+
expect(@resource.use_last_modified).to be_falsey
|
149
|
+
expect(@resource.use_etags).to be_truthy
|
150
150
|
end
|
151
151
|
|
152
152
|
end
|
@@ -24,34 +24,34 @@ describe Chef::Resource::Notification do
|
|
24
24
|
end
|
25
25
|
|
26
26
|
it "has a resource to be notified" do
|
27
|
-
@notification.resource.
|
27
|
+
expect(@notification.resource).to eq(:service_apache)
|
28
28
|
end
|
29
29
|
|
30
30
|
it "has an action to take on the service" do
|
31
|
-
@notification.action.
|
31
|
+
expect(@notification.action).to eq(:restart)
|
32
32
|
end
|
33
33
|
|
34
34
|
it "has a notifying resource" do
|
35
|
-
@notification.notifying_resource.
|
35
|
+
expect(@notification.notifying_resource).to eq(:template_httpd_conf)
|
36
36
|
end
|
37
37
|
|
38
38
|
it "is a duplicate of another notification with the same target resource and action" do
|
39
39
|
other = Chef::Resource::Notification.new(:service_apache, :restart, :sync_web_app_code)
|
40
|
-
@notification.duplicates?(other).
|
40
|
+
expect(@notification.duplicates?(other)).to be_truthy
|
41
41
|
end
|
42
42
|
|
43
43
|
it "is not a duplicate of another notification if the actions differ" do
|
44
44
|
other = Chef::Resource::Notification.new(:service_apache, :enable, :install_apache)
|
45
|
-
@notification.duplicates?(other).
|
45
|
+
expect(@notification.duplicates?(other)).to be_falsey
|
46
46
|
end
|
47
47
|
|
48
48
|
it "is not a duplicate of another notification if the target resources differ" do
|
49
49
|
other = Chef::Resource::Notification.new(:service_sshd, :restart, :template_httpd_conf)
|
50
|
-
@notification.duplicates?(other).
|
50
|
+
expect(@notification.duplicates?(other)).to be_falsey
|
51
51
|
end
|
52
52
|
|
53
53
|
it "raises an ArgumentError if you try to check a non-ducktype object for duplication" do
|
54
|
-
|
54
|
+
expect {@notification.duplicates?(:not_a_notification)}.to raise_error(ArgumentError)
|
55
55
|
end
|
56
56
|
|
57
57
|
it "takes no action to resolve a resource reference that doesn't need to be resolved" do
|
@@ -62,7 +62,7 @@ describe Chef::Resource::Notification do
|
|
62
62
|
@resource_collection = Chef::ResourceCollection.new
|
63
63
|
# would raise an error since the resource is not in the collection
|
64
64
|
@notification.resolve_resource_reference(@resource_collection)
|
65
|
-
@notification.resource.
|
65
|
+
expect(@notification.resource).to eq(@keyboard_cat)
|
66
66
|
end
|
67
67
|
|
68
68
|
it "resolves a lazy reference to a resource" do
|
@@ -73,7 +73,7 @@ describe Chef::Resource::Notification do
|
|
73
73
|
@long_cat = Chef::Resource::Cat.new("long_cat")
|
74
74
|
@notification.notifying_resource = @long_cat
|
75
75
|
@notification.resolve_resource_reference(@resource_collection)
|
76
|
-
@notification.resource.
|
76
|
+
expect(@notification.resource).to eq(@keyboard_cat)
|
77
77
|
end
|
78
78
|
|
79
79
|
it "resolves a lazy reference to its notifying resource" do
|
@@ -84,7 +84,7 @@ describe Chef::Resource::Notification do
|
|
84
84
|
@resource_collection = Chef::ResourceCollection.new
|
85
85
|
@resource_collection << @long_cat
|
86
86
|
@notification.resolve_resource_reference(@resource_collection)
|
87
|
-
@notification.notifying_resource.
|
87
|
+
expect(@notification.notifying_resource).to eq(@long_cat)
|
88
88
|
end
|
89
89
|
|
90
90
|
it "resolves lazy references to both its resource and its notifying resource" do
|
@@ -96,8 +96,8 @@ describe Chef::Resource::Notification do
|
|
96
96
|
@long_cat = Chef::Resource::Cat.new("long_cat")
|
97
97
|
@resource_collection << @long_cat
|
98
98
|
@notification.resolve_resource_reference(@resource_collection)
|
99
|
-
@notification.resource.
|
100
|
-
@notification.notifying_resource.
|
99
|
+
expect(@notification.resource).to eq(@keyboard_cat)
|
100
|
+
expect(@notification.notifying_resource).to eq(@long_cat)
|
101
101
|
end
|
102
102
|
|
103
103
|
it "raises a RuntimeError if you try to reference multiple resources" do
|
@@ -109,7 +109,7 @@ describe Chef::Resource::Notification do
|
|
109
109
|
@resource_collection << @cheez_cat
|
110
110
|
@long_cat = Chef::Resource::Cat.new("long_cat")
|
111
111
|
@notification.notifying_resource = @long_cat
|
112
|
-
|
112
|
+
expect {@notification.resolve_resource_reference(@resource_collection)}.to raise_error(RuntimeError)
|
113
113
|
end
|
114
114
|
|
115
115
|
it "raises a RuntimeError if you try to reference multiple notifying resources" do
|
@@ -121,7 +121,7 @@ describe Chef::Resource::Notification do
|
|
121
121
|
@resource_collection << @cheez_cat
|
122
122
|
@keyboard_cat = Chef::Resource::Cat.new("keyboard_cat")
|
123
123
|
@notification.resource = @keyboard_cat
|
124
|
-
|
124
|
+
expect {@notification.resolve_resource_reference(@resource_collection)}.to raise_error(RuntimeError)
|
125
125
|
end
|
126
126
|
|
127
127
|
it "raises a RuntimeError if it can't find a resource in the resource collection when resolving a lazy reference" do
|
@@ -131,7 +131,7 @@ describe Chef::Resource::Notification do
|
|
131
131
|
@resource_collection << @cheez_cat
|
132
132
|
@long_cat = Chef::Resource::Cat.new("long_cat")
|
133
133
|
@notification.notifying_resource = @long_cat
|
134
|
-
|
134
|
+
expect {@notification.resolve_resource_reference(@resource_collection)}.to raise_error(RuntimeError)
|
135
135
|
end
|
136
136
|
|
137
137
|
it "raises a RuntimeError if it can't find a notifying resource in the resource collection when resolving a lazy reference" do
|
@@ -141,7 +141,7 @@ describe Chef::Resource::Notification do
|
|
141
141
|
@resource_collection << @cheez_cat
|
142
142
|
@keyboard_cat = Chef::Resource::Cat.new("keyboard_cat")
|
143
143
|
@notification.resource = @keyboard_cat
|
144
|
-
|
144
|
+
expect {@notification.resolve_resource_reference(@resource_collection)}.to raise_error(RuntimeError)
|
145
145
|
end
|
146
146
|
|
147
147
|
it "raises an ArgumentError if improper syntax is used in the lazy reference to its resource" do
|
@@ -151,7 +151,7 @@ describe Chef::Resource::Notification do
|
|
151
151
|
@resource_collection << @keyboard_cat
|
152
152
|
@long_cat = Chef::Resource::Cat.new("long_cat")
|
153
153
|
@notification.notifying_resource = @long_cat
|
154
|
-
|
154
|
+
expect {@notification.resolve_resource_reference(@resource_collection)}.to raise_error(ArgumentError)
|
155
155
|
end
|
156
156
|
|
157
157
|
it "raises an ArgumentError if improper syntax is used in the lazy reference to its notifying resource" do
|
@@ -161,7 +161,7 @@ describe Chef::Resource::Notification do
|
|
161
161
|
@resource_collection << @long_cat
|
162
162
|
@keyboard_cat = Chef::Resource::Cat.new("keyboard_cat")
|
163
163
|
@notification.resource = @keyboard_cat
|
164
|
-
|
164
|
+
expect {@notification.resolve_resource_reference(@resource_collection)}.to raise_error(ArgumentError)
|
165
165
|
end
|
166
166
|
|
167
167
|
# Create test to resolve lazy references to both notifying resource and dest. resource
|
@@ -32,3 +32,15 @@ describe Chef::Resource::RpmPackage, "initialize" do
|
|
32
32
|
end
|
33
33
|
|
34
34
|
end
|
35
|
+
|
36
|
+
describe Chef::Resource::RpmPackage, "allow_downgrade" do
|
37
|
+
before(:each) do
|
38
|
+
@resource = Chef::Resource::RpmPackage.new("foo")
|
39
|
+
end
|
40
|
+
|
41
|
+
it "should allow you to specify whether allow_downgrade is true or false" do
|
42
|
+
expect { @resource.allow_downgrade true }.not_to raise_error
|
43
|
+
expect { @resource.allow_downgrade false }.not_to raise_error
|
44
|
+
expect { @resource.allow_downgrade "monkey" }.to raise_error(ArgumentError)
|
45
|
+
end
|
46
|
+
end
|
@@ -110,22 +110,22 @@ describe Chef::Resource::Scm do
|
|
110
110
|
|
111
111
|
it "takes a boolean for #enable_submodules" do
|
112
112
|
@resource.enable_submodules true
|
113
|
-
expect(@resource.enable_submodules).to
|
113
|
+
expect(@resource.enable_submodules).to be_truthy
|
114
114
|
expect {@resource.enable_submodules "lolz"}.to raise_error(ArgumentError)
|
115
115
|
end
|
116
116
|
|
117
117
|
it "defaults to not enabling submodules" do
|
118
|
-
expect(@resource.enable_submodules).to
|
118
|
+
expect(@resource.enable_submodules).to be_falsey
|
119
119
|
end
|
120
120
|
|
121
121
|
it "takes a boolean for #enable_checkout" do
|
122
122
|
@resource.enable_checkout true
|
123
|
-
expect(@resource.enable_checkout).to
|
123
|
+
expect(@resource.enable_checkout).to be_truthy
|
124
124
|
expect {@resource.enable_checkout "lolz"}.to raise_error(ArgumentError)
|
125
125
|
end
|
126
126
|
|
127
127
|
it "defaults to enabling checkout" do
|
128
|
-
expect(@resource.enable_checkout).to
|
128
|
+
expect(@resource.enable_checkout).to be_truthy
|
129
129
|
end
|
130
130
|
|
131
131
|
it "takes a string for the remote" do
|
@@ -29,18 +29,16 @@ describe Chef::Resource::Script do
|
|
29
29
|
expect(script_resource.interpreter).to eql("naaaaNaNaNaaNaaNaaNaa")
|
30
30
|
end
|
31
31
|
|
32
|
-
|
32
|
+
context "when it has interpreter and flags" do
|
33
33
|
before do
|
34
|
-
script_resource.command("grep")
|
35
34
|
script_resource.interpreter("gcc")
|
36
35
|
script_resource.flags("-al")
|
37
36
|
end
|
38
37
|
|
39
|
-
|
40
|
-
expect(script_resource.identity).to eq(
|
38
|
+
it "returns the name as its identity" do
|
39
|
+
expect(script_resource.identity).to eq(resource_instance_name)
|
41
40
|
end
|
42
41
|
end
|
43
42
|
|
44
43
|
it_behaves_like "a script resource"
|
45
44
|
end
|
46
|
-
|
@@ -62,6 +62,6 @@ describe Chef::Resource::Subversion do
|
|
62
62
|
it "hides password from custom exception message" do
|
63
63
|
@svn.svn_password "l33th4x0rpa$$w0rd"
|
64
64
|
e = @svn.customize_exception(Chef::Exceptions::Exec.new "Exception with password #{@svn.svn_password}")
|
65
|
-
expect(e.message.include?(@svn.svn_password)).to
|
65
|
+
expect(e.message.include?(@svn.svn_password)).to be_falsey
|
66
66
|
end
|
67
67
|
end
|
@@ -0,0 +1 @@
|
|
1
|
+
# see spec/unit/recipe_spec.rb
|
@@ -60,7 +60,7 @@ describe Chef::ResourceCollection::ResourceList do
|
|
60
60
|
end
|
61
61
|
|
62
62
|
it "should be empty by default" do
|
63
|
-
expect(resource_list.empty?).to
|
63
|
+
expect(resource_list.empty?).to be_truthy
|
64
64
|
end
|
65
65
|
|
66
66
|
describe "when resources are inserted" do
|
@@ -100,7 +100,7 @@ describe Chef::ResourceCollection::ResourceList do
|
|
100
100
|
end
|
101
101
|
|
102
102
|
it "should be able to check if the list is empty" do
|
103
|
-
expect(resource_list.empty?).to
|
103
|
+
expect(resource_list.empty?).to be_falsey
|
104
104
|
end
|
105
105
|
end
|
106
106
|
end
|
@@ -166,15 +166,15 @@ describe Chef::ResourceCollection::ResourceSet do
|
|
166
166
|
|
167
167
|
describe "validate_lookup_spec!" do
|
168
168
|
it "accepts a string of the form 'resource_type[resource_name]'" do
|
169
|
-
expect(collection.validate_lookup_spec!("resource_type[resource_name]")).to
|
169
|
+
expect(collection.validate_lookup_spec!("resource_type[resource_name]")).to be_truthy
|
170
170
|
end
|
171
171
|
|
172
172
|
it "accepts a single-element :resource_type => 'resource_name' Hash" do
|
173
|
-
expect(collection.validate_lookup_spec!(:service => "apache2")).to
|
173
|
+
expect(collection.validate_lookup_spec!(:service => "apache2")).to be_truthy
|
174
174
|
end
|
175
175
|
|
176
176
|
it "accepts a chef resource object" do
|
177
|
-
expect(collection.validate_lookup_spec!(zen_master)).to
|
177
|
+
expect(collection.validate_lookup_spec!(zen_master)).to be_truthy
|
178
178
|
end
|
179
179
|
|
180
180
|
it "rejects a malformed query string" do
|
@@ -21,7 +21,7 @@ describe Chef::ResourceCollection::StepableIterator do
|
|
21
21
|
CRSI = Chef::ResourceCollection::StepableIterator
|
22
22
|
|
23
23
|
it "has an empty array for its collection by default" do
|
24
|
-
CRSI.new.collection.
|
24
|
+
expect(CRSI.new.collection).to eq([])
|
25
25
|
end
|
26
26
|
|
27
27
|
describe "doing basic iteration" do
|
@@ -31,8 +31,8 @@ describe Chef::ResourceCollection::StepableIterator do
|
|
31
31
|
end
|
32
32
|
|
33
33
|
it "re-initializes the instance with a collection" do
|
34
|
-
@iterator.collection.
|
35
|
-
@iterator.size.
|
34
|
+
expect(@iterator.collection).to equal(@simple_collection)
|
35
|
+
expect(@iterator.size).to eq(4)
|
36
36
|
end
|
37
37
|
|
38
38
|
it "iterates over the collection" do
|
@@ -40,7 +40,7 @@ describe Chef::ResourceCollection::StepableIterator do
|
|
40
40
|
@iterator.each do |int|
|
41
41
|
sum += int
|
42
42
|
end
|
43
|
-
sum.
|
43
|
+
expect(sum).to eq(10)
|
44
44
|
end
|
45
45
|
|
46
46
|
it "iterates over the collection with each_index" do
|
@@ -48,8 +48,8 @@ describe Chef::ResourceCollection::StepableIterator do
|
|
48
48
|
@iterator.each_index do |idx|
|
49
49
|
collected_by_index << @simple_collection[idx]
|
50
50
|
end
|
51
|
-
collected_by_index.
|
52
|
-
collected_by_index.
|
51
|
+
expect(collected_by_index).to eq(@simple_collection)
|
52
|
+
expect(collected_by_index).not_to equal(@simple_collection)
|
53
53
|
end
|
54
54
|
|
55
55
|
it "iterates over the collection with index and element" do
|
@@ -57,7 +57,7 @@ describe Chef::ResourceCollection::StepableIterator do
|
|
57
57
|
@iterator.each_with_index do |element, index|
|
58
58
|
collected[index] = element
|
59
59
|
end
|
60
|
-
collected.
|
60
|
+
expect(collected).to eq({0=>1, 1=>2, 2=>3, 3=>4})
|
61
61
|
end
|
62
62
|
|
63
63
|
end
|
@@ -76,49 +76,49 @@ describe Chef::ResourceCollection::StepableIterator do
|
|
76
76
|
end
|
77
77
|
|
78
78
|
it "allows the iteration to be paused" do
|
79
|
-
@snitch_var.
|
79
|
+
expect(@snitch_var).to eq(23)
|
80
80
|
end
|
81
81
|
|
82
82
|
it "allows the iteration to be resumed" do
|
83
|
-
@snitch_var.
|
83
|
+
expect(@snitch_var).to eq(23)
|
84
84
|
@iterator.resume
|
85
|
-
@snitch_var.
|
85
|
+
expect(@snitch_var).to eq(42)
|
86
86
|
end
|
87
87
|
|
88
88
|
it "allows iteration to be rewound" do
|
89
89
|
@iterator.skip_back(2)
|
90
90
|
@iterator.resume
|
91
|
-
@snitch_var.
|
91
|
+
expect(@snitch_var).to eq(23)
|
92
92
|
@iterator.resume
|
93
|
-
@snitch_var.
|
93
|
+
expect(@snitch_var).to eq(42)
|
94
94
|
end
|
95
95
|
|
96
96
|
it "allows iteration to be fast forwarded" do
|
97
97
|
@iterator.skip_forward
|
98
98
|
@iterator.resume
|
99
|
-
@snitch_var.
|
99
|
+
expect(@snitch_var).to eq(23)
|
100
100
|
end
|
101
101
|
|
102
102
|
it "allows iteration to be rewound" do
|
103
103
|
@snitch_var = nil
|
104
104
|
@iterator.rewind
|
105
|
-
@iterator.position.
|
105
|
+
expect(@iterator.position).to eq(0)
|
106
106
|
@iterator.resume
|
107
|
-
@snitch_var.
|
107
|
+
expect(@snitch_var).to eq(23)
|
108
108
|
end
|
109
109
|
|
110
110
|
it "allows iteration to be stepped" do
|
111
111
|
@snitch_var = nil
|
112
112
|
@iterator.rewind
|
113
113
|
@iterator.step
|
114
|
-
@iterator.position.
|
115
|
-
@snitch_var.
|
114
|
+
expect(@iterator.position).to eq(1)
|
115
|
+
expect(@snitch_var).to eq(23)
|
116
116
|
end
|
117
117
|
|
118
118
|
it "doesn't step if there are no more steps" do
|
119
|
-
@iterator.step.
|
120
|
-
|
121
|
-
@iterator.step.
|
119
|
+
expect(@iterator.step).to eq(3)
|
120
|
+
expect {@iterator.step}.not_to raise_error
|
121
|
+
expect(@iterator.step).to be_nil
|
122
122
|
end
|
123
123
|
|
124
124
|
it "allows the iteration to start by being stepped" do
|
@@ -126,17 +126,17 @@ describe Chef::ResourceCollection::StepableIterator do
|
|
126
126
|
@iterator = CRSI.for_collection(@collection)
|
127
127
|
@iterator.iterate_on(:element) { |proc| proc.call }
|
128
128
|
@iterator.step
|
129
|
-
@iterator.position.
|
130
|
-
@snitch_var.
|
129
|
+
expect(@iterator.position).to eq(1)
|
130
|
+
expect(@snitch_var).to eq(23)
|
131
131
|
end
|
132
132
|
|
133
133
|
it "should work correctly when elements are added to the collection during iteration" do
|
134
134
|
@collection.insert(2, lambda { @snitch_var = 815})
|
135
135
|
@collection.insert(3, lambda { @iterator.pause })
|
136
136
|
@iterator.resume
|
137
|
-
@snitch_var.
|
137
|
+
expect(@snitch_var).to eq(815)
|
138
138
|
@iterator.resume
|
139
|
-
@snitch_var.
|
139
|
+
expect(@snitch_var).to eq(42)
|
140
140
|
end
|
141
141
|
|
142
142
|
end
|