chefspec 7.0.0 → 9.3.8
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 +5 -5
- data/Gemfile +28 -10
- data/Rakefile +74 -18
- data/chefspec.gemspec +26 -28
- data/lib/chefspec/api/core.rb +217 -0
- data/lib/chefspec/api/described.rb +53 -0
- data/lib/chefspec/api/do_nothing.rb +23 -21
- data/lib/chefspec/api/include_any_recipe.rb +24 -0
- data/lib/chefspec/api/include_recipe.rb +25 -23
- data/lib/chefspec/api/link.rb +24 -98
- data/lib/chefspec/api/notifications.rb +37 -35
- data/lib/chefspec/api/reboot.rb +9 -13
- data/lib/chefspec/api/render_file.rb +34 -32
- data/lib/chefspec/api/state_attrs.rb +27 -25
- data/lib/chefspec/api/stubs.rb +183 -0
- data/lib/chefspec/api/stubs_for.rb +139 -0
- data/lib/chefspec/api/subscriptions.rb +34 -32
- data/lib/chefspec/api/user.rb +221 -219
- data/lib/chefspec/api.rb +32 -89
- data/lib/chefspec/berkshelf.rb +5 -5
- data/lib/chefspec/cacher.rb +2 -2
- data/lib/chefspec/coverage/filters.rb +18 -15
- data/lib/chefspec/coverage.rb +36 -40
- data/lib/chefspec/deprecations.rb +5 -14
- data/lib/chefspec/errors.rb +8 -7
- data/lib/chefspec/expect_exception.rb +2 -1
- data/lib/chefspec/extensions/chef/client.rb +6 -7
- data/lib/chefspec/extensions/chef/conditional.rb +5 -3
- data/lib/chefspec/extensions/chef/cookbook/gem_installer.rb +33 -0
- data/lib/chefspec/extensions/chef/cookbook_loader.rb +14 -0
- data/lib/chefspec/extensions/chef/cookbook_uploader.rb +4 -3
- data/lib/chefspec/extensions/chef/data_query.rb +8 -11
- data/lib/chefspec/extensions/chef/lwrp_base.rb +18 -21
- data/lib/chefspec/extensions/chef/provider.rb +39 -0
- data/lib/chefspec/extensions/chef/resource/freebsd_package.rb +15 -17
- data/lib/chefspec/extensions/chef/resource.rb +148 -9
- data/lib/chefspec/extensions/chef/run_context/cookbook_compiler.rb +84 -0
- data/lib/chefspec/extensions/chef/securable.rb +1 -1
- data/lib/chefspec/extensions/ohai/system.rb +11 -0
- data/lib/chefspec/extensions.rb +21 -0
- data/lib/chefspec/file_cache_path_proxy.rb +3 -3
- data/lib/chefspec/formatter.rb +15 -3
- data/lib/chefspec/librarian.rb +7 -6
- data/lib/chefspec/matchers/do_nothing_matcher.rb +15 -15
- data/lib/chefspec/matchers/include_any_recipe_matcher.rb +51 -0
- data/lib/chefspec/matchers/include_recipe_matcher.rb +1 -1
- data/lib/chefspec/matchers/link_to_matcher.rb +2 -2
- data/lib/chefspec/matchers/notifications_matcher.rb +5 -4
- data/lib/chefspec/matchers/render_file_matcher.rb +39 -29
- data/lib/chefspec/matchers/resource_matcher.rb +19 -17
- data/lib/chefspec/matchers.rb +9 -8
- data/lib/chefspec/mixins/normalize.rb +1 -1
- data/lib/chefspec/policyfile.rb +16 -9
- data/lib/chefspec/renderer.rb +4 -4
- data/lib/chefspec/rspec.rb +4 -8
- data/lib/chefspec/runner.rb +8 -0
- data/lib/chefspec/server.rb +1 -1
- data/lib/chefspec/server_methods.rb +9 -9
- data/lib/chefspec/server_runner.rb +21 -17
- data/lib/chefspec/solo_runner.rb +148 -42
- data/lib/chefspec/stubs/command_registry.rb +1 -1
- data/lib/chefspec/stubs/command_stub.rb +1 -1
- data/lib/chefspec/stubs/data_bag_item_registry.rb +1 -1
- data/lib/chefspec/stubs/data_bag_item_stub.rb +1 -1
- data/lib/chefspec/stubs/data_bag_registry.rb +1 -1
- data/lib/chefspec/stubs/data_bag_stub.rb +1 -1
- data/lib/chefspec/stubs/registry.rb +1 -1
- data/lib/chefspec/stubs/search_registry.rb +2 -2
- data/lib/chefspec/stubs/search_stub.rb +2 -2
- data/lib/chefspec/util.rb +7 -7
- data/lib/chefspec/version.rb +1 -1
- data/lib/chefspec/zero_server.rb +23 -21
- data/lib/chefspec.rb +29 -36
- data/spec/spec_helper.rb +3 -4
- data/spec/support/hash.rb +4 -4
- data/spec/unit/cacher_spec.rb +17 -17
- data/spec/unit/coverage/filters_spec.rb +16 -16
- data/spec/unit/deprecations_spec.rb +9 -35
- data/spec/unit/errors_spec.rb +15 -15
- data/spec/unit/expect_exception_spec.rb +9 -9
- data/spec/unit/macros_spec.rb +57 -57
- data/spec/unit/matchers/do_nothing_matcher.rb +1 -1
- data/spec/unit/matchers/include_any_recipe_matcher_spec.rb +52 -0
- data/spec/unit/matchers/include_recipe_matcher_spec.rb +15 -15
- data/spec/unit/matchers/link_to_matcher_spec.rb +18 -18
- data/spec/unit/matchers/notifications_matcher_spec.rb +15 -16
- data/spec/unit/matchers/render_file_matcher_spec.rb +31 -24
- data/spec/unit/matchers/resource_matcher_spec.rb +1 -1
- data/spec/unit/matchers/state_attrs_matcher_spec.rb +24 -24
- data/spec/unit/matchers/subscribes_matcher_spec.rb +27 -29
- data/spec/unit/renderer_spec.rb +36 -36
- data/spec/unit/server_runner_spec.rb +6 -6
- data/spec/unit/solo_runner_spec.rb +70 -70
- data/spec/unit/stubs/command_registry_spec.rb +11 -11
- data/spec/unit/stubs/command_stub_spec.rb +26 -26
- data/spec/unit/stubs/data_bag_item_registry_spec.rb +17 -17
- data/spec/unit/stubs/data_bag_item_stub_spec.rb +14 -14
- data/spec/unit/stubs/data_bag_registry_spec.rb +16 -16
- data/spec/unit/stubs/data_bag_stub_spec.rb +13 -13
- data/spec/unit/stubs/registry_spec.rb +9 -9
- data/spec/unit/stubs/search_registry_spec.rb +17 -17
- data/spec/unit/stubs/search_stub_spec.rb +14 -14
- data/spec/unit/stubs/stub_spec.rb +22 -22
- data/templates/errors/may_need_to_specify_platform.erb +3 -3
- data/templates/errors/shell_out_not_stubbed.erb +10 -0
- metadata +47 -902
- data/.gitignore +0 -16
- data/.travis.yml +0 -32
- data/CHANGELOG.md +0 -777
- data/CONTRIBUTING.md +0 -52
- data/ISSUES.md +0 -41
- data/README.md +0 -1230
- data/examples/apt_package/recipes/install.rb +0 -13
- data/examples/apt_package/recipes/purge.rb +0 -13
- data/examples/apt_package/recipes/reconfig.rb +0 -13
- data/examples/apt_package/recipes/remove.rb +0 -13
- data/examples/apt_package/recipes/upgrade.rb +0 -13
- data/examples/apt_package/spec/install_spec.rb +0 -26
- data/examples/apt_package/spec/purge_spec.rb +0 -22
- data/examples/apt_package/spec/reconfig_spec.rb +0 -22
- data/examples/apt_package/spec/remove_spec.rb +0 -22
- data/examples/apt_package/spec/upgrade_spec.rb +0 -22
- data/examples/apt_repository/recipes/add.rb +0 -8
- data/examples/apt_repository/recipes/remove.rb +0 -4
- data/examples/apt_repository/spec/add_spec.rb +0 -17
- data/examples/apt_repository/spec/remove_spec.rb +0 -12
- data/examples/apt_update/recipes/periodic.rb +0 -5
- data/examples/apt_update/recipes/update.rb +0 -3
- data/examples/apt_update/spec/periodic_spec.rb +0 -17
- data/examples/apt_update/spec/update_spec.rb +0 -12
- data/examples/attributes/attributes/default.rb +0 -1
- data/examples/attributes/recipes/default.rb +0 -4
- data/examples/attributes/spec/default_spec.rb +0 -20
- data/examples/batch/recipes/run.rb +0 -9
- data/examples/batch/spec/run_spec.rb +0 -22
- data/examples/bff_package/recipes/install.rb +0 -13
- data/examples/bff_package/recipes/purge.rb +0 -13
- data/examples/bff_package/recipes/remove.rb +0 -13
- data/examples/bff_package/recipes/upgrade.rb +0 -13
- data/examples/bff_package/spec/install_spec.rb +0 -23
- data/examples/bff_package/spec/purge_spec.rb +0 -19
- data/examples/bff_package/spec/remove_spec.rb +0 -19
- data/examples/bff_package/spec/upgrade_spec.rb +0 -19
- data/examples/cab_package/recipes/install.rb +0 -13
- data/examples/cab_package/recipes/remove.rb +0 -13
- data/examples/cab_package/spec/install_spec.rb +0 -26
- data/examples/cab_package/spec/remove_spec.rb +0 -22
- data/examples/cached/recipes/default.rb +0 -1
- data/examples/cached/spec/default_spec.rb +0 -13
- data/examples/chef_gem/recipes/install.rb +0 -18
- data/examples/chef_gem/recipes/purge.rb +0 -16
- data/examples/chef_gem/recipes/reconfig.rb +0 -16
- data/examples/chef_gem/recipes/remove.rb +0 -16
- data/examples/chef_gem/recipes/upgrade.rb +0 -16
- data/examples/chef_gem/spec/install_spec.rb +0 -23
- data/examples/chef_gem/spec/purge_spec.rb +0 -19
- data/examples/chef_gem/spec/reconfig_spec.rb +0 -19
- data/examples/chef_gem/spec/remove_spec.rb +0 -19
- data/examples/chef_gem/spec/upgrade_spec.rb +0 -19
- data/examples/chocolatey_package/recipes/install.rb +0 -6
- data/examples/chocolatey_package/recipes/remove.rb +0 -8
- data/examples/chocolatey_package/recipes/upgrade.rb +0 -8
- data/examples/chocolatey_package/spec/install_spec.rb +0 -19
- data/examples/chocolatey_package/spec/remove_spec.rb +0 -18
- data/examples/chocolatey_package/spec/upgrade_spec.rb +0 -18
- data/examples/compile_time/recipes/default.rb +0 -3
- data/examples/compile_time/spec/default_spec.rb +0 -27
- data/examples/cookbook_file/recipes/create.rb +0 -15
- data/examples/cookbook_file/recipes/create_if_missing.rb +0 -15
- data/examples/cookbook_file/recipes/delete.rb +0 -15
- data/examples/cookbook_file/recipes/touch.rb +0 -15
- data/examples/cookbook_file/spec/create_if_missing_spec.rb +0 -28
- data/examples/cookbook_file/spec/create_spec.rb +0 -32
- data/examples/cookbook_file/spec/delete_spec.rb +0 -19
- data/examples/cookbook_file/spec/touch_spec.rb +0 -19
- data/examples/cron/recipes/create.rb +0 -10
- data/examples/cron/recipes/delete.rb +0 -9
- data/examples/cron/spec/create_spec.rb +0 -19
- data/examples/cron/spec/delete_spec.rb +0 -15
- data/examples/custom_matcher/libraries/matcher.rb +0 -23
- data/examples/custom_matcher/providers/thing.rb +0 -2
- data/examples/custom_matcher/recipes/install.rb +0 -13
- data/examples/custom_matcher/recipes/remove.rb +0 -13
- data/examples/custom_matcher/resources/thing.rb +0 -5
- data/examples/custom_matcher/spec/install_spec.rb +0 -27
- data/examples/custom_matcher/spec/remove_spec.rb +0 -23
- data/examples/custom_resource/libraries/matchers.rb +0 -5
- data/examples/custom_resource/recipes/default.rb +0 -1
- data/examples/custom_resource/resources/custom_resource.rb +0 -9
- data/examples/custom_resource/spec/default_spec.rb +0 -18
- data/examples/deploy/recipes/deploy.rb +0 -10
- data/examples/deploy/recipes/force_deploy.rb +0 -9
- data/examples/deploy/recipes/rollback.rb +0 -9
- data/examples/deploy/spec/deploy_spec.rb +0 -15
- data/examples/deploy/spec/force_deploy_spec.rb +0 -15
- data/examples/deploy/spec/rollback_spec.rb +0 -15
- data/examples/directory/recipes/create.rb +0 -18
- data/examples/directory/recipes/delete.rb +0 -14
- data/examples/directory/spec/create_spec.rb +0 -34
- data/examples/directory/spec/delete_spec.rb +0 -26
- data/examples/dnf_package/recipes/install.rb +0 -13
- data/examples/dnf_package/recipes/purge.rb +0 -13
- data/examples/dnf_package/recipes/remove.rb +0 -13
- data/examples/dnf_package/recipes/upgrade.rb +0 -13
- data/examples/dnf_package/spec/install_spec.rb +0 -26
- data/examples/dnf_package/spec/purge_spec.rb +0 -22
- data/examples/dnf_package/spec/remove_spec.rb +0 -22
- data/examples/dnf_package/spec/upgrade_spec.rb +0 -22
- data/examples/do_nothing/recipes/default.rb +0 -3
- data/examples/do_nothing/spec/default_spec.rb +0 -15
- data/examples/dpkg_package/recipes/install.rb +0 -13
- data/examples/dpkg_package/recipes/purge.rb +0 -13
- data/examples/dpkg_package/recipes/remove.rb +0 -13
- data/examples/dpkg_package/spec/install_spec.rb +0 -26
- data/examples/dpkg_package/spec/purge_spec.rb +0 -22
- data/examples/dpkg_package/spec/remove_spec.rb +0 -22
- data/examples/dsc_resource/recipes/run.rb +0 -20
- data/examples/dsc_resource/spec/run_spec.rb +0 -38
- data/examples/dsc_script/recipes/run.rb +0 -12
- data/examples/dsc_script/spec/run_spec.rb +0 -16
- data/examples/env/recipes/create.rb +0 -13
- data/examples/env/recipes/delete.rb +0 -13
- data/examples/env/recipes/modify.rb +0 -13
- data/examples/env/spec/create_spec.rb +0 -26
- data/examples/env/spec/delete_spec.rb +0 -22
- data/examples/env/spec/modify_spec.rb +0 -22
- data/examples/erl_call/recipes/run.rb +0 -13
- data/examples/erl_call/spec/run_spec.rb +0 -23
- data/examples/execute/recipes/run.rb +0 -13
- data/examples/execute/spec/run_spec.rb +0 -23
- data/examples/expect_exception/recipes/compile_error.rb +0 -1
- data/examples/expect_exception/recipes/converge_error.rb +0 -5
- data/examples/expect_exception/recipes/no_error.rb +0 -1
- data/examples/expect_exception/spec/compile_error_spec.rb +0 -10
- data/examples/expect_exception/spec/converge_error_spec.rb +0 -10
- data/examples/expect_exception/spec/no_error_spec.rb +0 -10
- data/examples/file/recipes/create.rb +0 -15
- data/examples/file/recipes/create_if_missing.rb +0 -15
- data/examples/file/recipes/delete.rb +0 -15
- data/examples/file/recipes/touch.rb +0 -15
- data/examples/file/spec/create_if_missing_spec.rb +0 -28
- data/examples/file/spec/create_spec.rb +0 -32
- data/examples/file/spec/delete_spec.rb +0 -19
- data/examples/file/spec/touch_spec.rb +0 -19
- data/examples/freebsd_package/recipes/install.rb +0 -13
- data/examples/freebsd_package/recipes/remove.rb +0 -13
- data/examples/freebsd_package/spec/install_spec.rb +0 -26
- data/examples/freebsd_package/spec/remove_spec.rb +0 -22
- data/examples/gem_package/recipes/install.rb +0 -13
- data/examples/gem_package/recipes/purge.rb +0 -13
- data/examples/gem_package/recipes/reconfig.rb +0 -13
- data/examples/gem_package/recipes/remove.rb +0 -13
- data/examples/gem_package/recipes/upgrade.rb +0 -13
- data/examples/gem_package/spec/install_spec.rb +0 -23
- data/examples/gem_package/spec/purge_spec.rb +0 -19
- data/examples/gem_package/spec/reconfig_spec.rb +0 -19
- data/examples/gem_package/spec/remove_spec.rb +0 -19
- data/examples/gem_package/spec/upgrade_spec.rb +0 -19
- data/examples/git/recipes/checkout.rb +0 -13
- data/examples/git/recipes/export.rb +0 -13
- data/examples/git/recipes/sync.rb +0 -13
- data/examples/git/spec/checkout_spec.rb +0 -19
- data/examples/git/spec/export_spec.rb +0 -19
- data/examples/git/spec/sync_spec.rb +0 -23
- data/examples/group/recipes/create.rb +0 -13
- data/examples/group/recipes/manage.rb +0 -13
- data/examples/group/recipes/modify.rb +0 -13
- data/examples/group/recipes/remove.rb +0 -13
- data/examples/group/spec/create_spec.rb +0 -23
- data/examples/group/spec/manage_spec.rb +0 -19
- data/examples/group/spec/modify_spec.rb +0 -19
- data/examples/group/spec/remove_spec.rb +0 -18
- data/examples/guards/recipes/default.rb +0 -13
- data/examples/guards/spec/default_spec.rb +0 -17
- data/examples/heavy_provider_light_resource/libraries/resource_service.rb +0 -15
- data/examples/heavy_provider_light_resource/providers/service.rb +0 -9
- data/examples/heavy_provider_light_resource/recipes/default.rb +0 -3
- data/examples/heavy_provider_light_resource/spec/provider_service_spec.rb +0 -7
- data/examples/homebrew_package/recipes/install.rb +0 -13
- data/examples/homebrew_package/recipes/purge.rb +0 -13
- data/examples/homebrew_package/recipes/remove.rb +0 -13
- data/examples/homebrew_package/recipes/upgrade.rb +0 -13
- data/examples/homebrew_package/spec/install_spec.rb +0 -23
- data/examples/homebrew_package/spec/purge_spec.rb +0 -19
- data/examples/homebrew_package/spec/remove_spec.rb +0 -19
- data/examples/homebrew_package/spec/upgrade_spec.rb +0 -19
- data/examples/http_request/recipes/delete.rb +0 -13
- data/examples/http_request/recipes/get.rb +0 -13
- data/examples/http_request/recipes/head.rb +0 -13
- data/examples/http_request/recipes/options.rb +0 -13
- data/examples/http_request/recipes/post.rb +0 -13
- data/examples/http_request/recipes/put.rb +0 -13
- data/examples/http_request/spec/delete_spec.rb +0 -19
- data/examples/http_request/spec/get_spec.rb +0 -23
- data/examples/http_request/spec/head_spec.rb +0 -19
- data/examples/http_request/spec/options_spec.rb +0 -19
- data/examples/http_request/spec/post_spec.rb +0 -19
- data/examples/http_request/spec/put_spec.rb +0 -19
- data/examples/ifconfig/recipes/add.rb +0 -9
- data/examples/ifconfig/recipes/delete.rb +0 -8
- data/examples/ifconfig/recipes/disable.rb +0 -8
- data/examples/ifconfig/recipes/enable.rb +0 -8
- data/examples/ifconfig/spec/add_spec.rb +0 -19
- data/examples/ifconfig/spec/delete_spec.rb +0 -15
- data/examples/ifconfig/spec/disable_spec.rb +0 -15
- data/examples/ifconfig/spec/enable_spec.rb +0 -15
- data/examples/include_recipe/recipes/default.rb +0 -1
- data/examples/include_recipe/recipes/not.rb +0 -0
- data/examples/include_recipe/recipes/other.rb +0 -0
- data/examples/include_recipe/spec/default_spec.rb +0 -13
- data/examples/ips_package/recipes/install.rb +0 -13
- data/examples/ips_package/recipes/remove.rb +0 -13
- data/examples/ips_package/recipes/upgrade.rb +0 -13
- data/examples/ips_package/spec/install_spec.rb +0 -26
- data/examples/ips_package/spec/remove_spec.rb +0 -22
- data/examples/ips_package/spec/upgrade_spec.rb +0 -22
- data/examples/launchd/recipes/create.rb +0 -5
- data/examples/launchd/recipes/create_if_missing.rb +0 -3
- data/examples/launchd/recipes/delete.rb +0 -3
- data/examples/launchd/recipes/disable.rb +0 -3
- data/examples/launchd/recipes/enable.rb +0 -3
- data/examples/launchd/spec/create_if_missing_spec.rb +0 -10
- data/examples/launchd/spec/create_spec.rb +0 -14
- data/examples/launchd/spec/delete_spec.rb +0 -10
- data/examples/launchd/spec/disable_spec.rb +0 -10
- data/examples/launchd/spec/enable_spec.rb +0 -10
- data/examples/link/recipes/create.rb +0 -13
- data/examples/link/recipes/delete.rb +0 -13
- data/examples/link/recipes/link_to.rb +0 -3
- data/examples/link/spec/create_spec.rb +0 -23
- data/examples/link/spec/delete_spec.rb +0 -19
- data/examples/link/spec/link_to_spec.rb +0 -11
- data/examples/log/recipes/write.rb +0 -14
- data/examples/log/spec/write_spec.rb +0 -24
- data/examples/macports_package/recipes/install.rb +0 -13
- data/examples/macports_package/recipes/purge.rb +0 -13
- data/examples/macports_package/recipes/remove.rb +0 -13
- data/examples/macports_package/recipes/upgrade.rb +0 -13
- data/examples/macports_package/spec/install_spec.rb +0 -23
- data/examples/macports_package/spec/purge_spec.rb +0 -19
- data/examples/macports_package/spec/remove_spec.rb +0 -19
- data/examples/macports_package/spec/upgrade_spec.rb +0 -19
- data/examples/mdadm/recipes/assemble.rb +0 -13
- data/examples/mdadm/recipes/create.rb +0 -13
- data/examples/mdadm/recipes/stop.rb +0 -13
- data/examples/mdadm/spec/assemble_spec.rb +0 -19
- data/examples/mdadm/spec/create_spec.rb +0 -23
- data/examples/mdadm/spec/stop_spec.rb +0 -19
- data/examples/mount/recipes/disable.rb +0 -8
- data/examples/mount/recipes/enable.rb +0 -8
- data/examples/mount/recipes/mount.rb +0 -9
- data/examples/mount/recipes/remount.rb +0 -8
- data/examples/mount/recipes/umount.rb +0 -8
- data/examples/mount/spec/disable_spec.rb +0 -15
- data/examples/mount/spec/enable_spec.rb +0 -15
- data/examples/mount/spec/mount_spec.rb +0 -19
- data/examples/mount/spec/remount_spec.rb +0 -15
- data/examples/mount/spec/umount_spec.rb +0 -15
- data/examples/msu_package/recipes/install.rb +0 -13
- data/examples/msu_package/recipes/remove.rb +0 -13
- data/examples/msu_package/spec/install_spec.rb +0 -26
- data/examples/msu_package/spec/remove_spec.rb +0 -22
- data/examples/multiple_actions/recipes/default.rb +0 -3
- data/examples/multiple_actions/recipes/reversed.rb +0 -9
- data/examples/multiple_actions/recipes/sequential.rb +0 -9
- data/examples/multiple_actions/spec/default_spec.rb +0 -14
- data/examples/multiple_actions/spec/reversed_spec.rb +0 -17
- data/examples/multiple_actions/spec/sequential_spec.rb +0 -17
- data/examples/multiple_run_action/recipes/default.rb +0 -5
- data/examples/multiple_run_action/spec/default_spec.rb +0 -18
- data/examples/notifications/recipes/before.rb +0 -7
- data/examples/notifications/recipes/chained.rb +0 -12
- data/examples/notifications/recipes/default.rb +0 -7
- data/examples/notifications/recipes/delayed.rb +0 -7
- data/examples/notifications/recipes/immediately.rb +0 -7
- data/examples/notifications/spec/before_spec.rb +0 -16
- data/examples/notifications/spec/chained_spec.rb +0 -21
- data/examples/notifications/spec/default_spec.rb +0 -16
- data/examples/notifications/spec/delayed_spec.rb +0 -16
- data/examples/notifications/spec/immediately_spec.rb +0 -16
- data/examples/ohai/recipes/reload.rb +0 -13
- data/examples/ohai/spec/reload_spec.rb +0 -23
- data/examples/openbsd_package/recipes/install.rb +0 -13
- data/examples/openbsd_package/recipes/purge.rb +0 -13
- data/examples/openbsd_package/recipes/remove.rb +0 -13
- data/examples/openbsd_package/recipes/upgrade.rb +0 -13
- data/examples/openbsd_package/spec/install_spec.rb +0 -23
- data/examples/openbsd_package/spec/purge_spec.rb +0 -19
- data/examples/openbsd_package/spec/remove_spec.rb +0 -19
- data/examples/openbsd_package/spec/upgrade_spec.rb +0 -19
- data/examples/osx_profile/recipes/install.rb +0 -8
- data/examples/osx_profile/recipes/remove.rb +0 -8
- data/examples/osx_profile/spec/install_spec.rb +0 -15
- data/examples/osx_profile/spec/remove_spec.rb +0 -13
- data/examples/package/recipes/install.rb +0 -17
- data/examples/package/recipes/purge.rb +0 -17
- data/examples/package/recipes/reconfig.rb +0 -17
- data/examples/package/recipes/remove.rb +0 -17
- data/examples/package/recipes/upgrade.rb +0 -17
- data/examples/package/spec/install_spec.rb +0 -27
- data/examples/package/spec/purge_spec.rb +0 -23
- data/examples/package/spec/reconfig_spec.rb +0 -23
- data/examples/package/spec/remove_spec.rb +0 -23
- data/examples/package/spec/upgrade_spec.rb +0 -23
- data/examples/pacman_package/recipes/install.rb +0 -13
- data/examples/pacman_package/recipes/purge.rb +0 -13
- data/examples/pacman_package/recipes/remove.rb +0 -13
- data/examples/pacman_package/recipes/upgrade.rb +0 -13
- data/examples/pacman_package/spec/install_spec.rb +0 -26
- data/examples/pacman_package/spec/purge_spec.rb +0 -22
- data/examples/pacman_package/spec/remove_spec.rb +0 -22
- data/examples/pacman_package/spec/upgrade_spec.rb +0 -22
- data/examples/paludis_package/recipes/install.rb +0 -13
- data/examples/paludis_package/recipes/purge.rb +0 -13
- data/examples/paludis_package/recipes/remove.rb +0 -13
- data/examples/paludis_package/recipes/upgrade.rb +0 -13
- data/examples/paludis_package/spec/install_spec.rb +0 -23
- data/examples/paludis_package/spec/purge_spec.rb +0 -19
- data/examples/paludis_package/spec/remove_spec.rb +0 -19
- data/examples/paludis_package/spec/upgrade_spec.rb +0 -19
- data/examples/portage_package/recipes/install.rb +0 -13
- data/examples/portage_package/recipes/purge.rb +0 -13
- data/examples/portage_package/recipes/remove.rb +0 -13
- data/examples/portage_package/recipes/upgrade.rb +0 -13
- data/examples/portage_package/spec/install_spec.rb +0 -26
- data/examples/portage_package/spec/purge_spec.rb +0 -22
- data/examples/portage_package/spec/remove_spec.rb +0 -22
- data/examples/portage_package/spec/upgrade_spec.rb +0 -22
- data/examples/powershell_script/recipes/run.rb +0 -9
- data/examples/powershell_script/spec/run_spec.rb +0 -22
- data/examples/reboot/recipes/cancel.rb +0 -3
- data/examples/reboot/recipes/now.rb +0 -3
- data/examples/reboot/recipes/request.rb +0 -3
- data/examples/reboot/spec/cancel_spec.rb +0 -9
- data/examples/reboot/spec/now_spec.rb +0 -9
- data/examples/reboot/spec/request_spec.rb +0 -9
- data/examples/registry_key/recipes/create.rb +0 -13
- data/examples/registry_key/recipes/create_if_missing.rb +0 -13
- data/examples/registry_key/recipes/delete.rb +0 -13
- data/examples/registry_key/recipes/delete_key.rb +0 -13
- data/examples/registry_key/spec/create_if_missing_spec.rb +0 -22
- data/examples/registry_key/spec/create_spec.rb +0 -26
- data/examples/registry_key/spec/delete_key_spec.rb +0 -22
- data/examples/registry_key/spec/delete_spec.rb +0 -22
- data/examples/remote_directory/recipes/create.rb +0 -13
- data/examples/remote_directory/recipes/create_if_missing.rb +0 -13
- data/examples/remote_directory/recipes/delete.rb +0 -13
- data/examples/remote_directory/spec/create_if_missing_spec.rb +0 -19
- data/examples/remote_directory/spec/create_spec.rb +0 -23
- data/examples/remote_directory/spec/delete_spec.rb +0 -19
- data/examples/remote_file/recipes/create.rb +0 -18
- data/examples/remote_file/recipes/create_if_missing.rb +0 -16
- data/examples/remote_file/recipes/delete.rb +0 -16
- data/examples/remote_file/recipes/touch.rb +0 -16
- data/examples/remote_file/spec/create_if_missing_spec.rb +0 -19
- data/examples/remote_file/spec/create_spec.rb +0 -23
- data/examples/remote_file/spec/delete_spec.rb +0 -19
- data/examples/remote_file/spec/touch_spec.rb +0 -19
- data/examples/render_file/files/default/cookbook_file +0 -1
- data/examples/render_file/recipes/default.rb +0 -15
- data/examples/render_file/recipes/template_helpers.rb +0 -9
- data/examples/render_file/spec/default_spec.rb +0 -155
- data/examples/render_file/spec/template_helpers_spec.rb +0 -10
- data/examples/render_file/templates/default/_partial.erb +0 -1
- data/examples/render_file/templates/default/partial.erb +0 -1
- data/examples/render_file/templates/default/template.erb +0 -1
- data/examples/render_file/templates/default/template_with_helper.erb +0 -1
- data/examples/roles/recipes/another.rb +0 -3
- data/examples/roles/recipes/default.rb +0 -1
- data/examples/roles/roles/role.rb +0 -9
- data/examples/roles/spec/default_spec.rb +0 -21
- data/examples/route/recipes/add.rb +0 -13
- data/examples/route/recipes/delete.rb +0 -13
- data/examples/route/spec/add_spec.rb +0 -23
- data/examples/route/spec/delete_spec.rb +0 -19
- data/examples/rpm_package/recipes/install.rb +0 -13
- data/examples/rpm_package/recipes/remove.rb +0 -13
- data/examples/rpm_package/recipes/upgrade.rb +0 -13
- data/examples/rpm_package/spec/install_spec.rb +0 -26
- data/examples/rpm_package/spec/remove_spec.rb +0 -22
- data/examples/rpm_package/spec/upgrade_spec.rb +0 -22
- data/examples/ruby_block/recipes/create.rb +0 -8
- data/examples/ruby_block/recipes/run.rb +0 -9
- data/examples/ruby_block/spec/create_spec.rb +0 -13
- data/examples/ruby_block/spec/run_spec.rb +0 -18
- data/examples/script/recipes/run_bash.rb +0 -9
- data/examples/script/recipes/run_csh.rb +0 -9
- data/examples/script/recipes/run_ksh.rb +0 -9
- data/examples/script/recipes/run_perl.rb +0 -9
- data/examples/script/recipes/run_python.rb +0 -9
- data/examples/script/recipes/run_ruby.rb +0 -9
- data/examples/script/recipes/run_script.rb +0 -9
- data/examples/script/spec/run_bash_spec.rb +0 -19
- data/examples/script/spec/run_csh_spec.rb +0 -19
- data/examples/script/spec/run_ksh_spec.rb +0 -19
- data/examples/script/spec/run_perl_spec.rb +0 -19
- data/examples/script/spec/run_python_spec.rb +0 -19
- data/examples/script/spec/run_ruby_spec.rb +0 -19
- data/examples/script/spec/run_script_spec.rb +0 -19
- data/examples/server/recipes/client.rb +0 -6
- data/examples/server/recipes/data_bag.rb +0 -7
- data/examples/server/recipes/environment.rb +0 -6
- data/examples/server/recipes/node.rb +0 -6
- data/examples/server/recipes/render_with_cached.rb +0 -3
- data/examples/server/recipes/role.rb +0 -6
- data/examples/server/recipes/search.rb +0 -5
- data/examples/server/spec/client_spec.rb +0 -18
- data/examples/server/spec/data_bag_spec.rb +0 -25
- data/examples/server/spec/environment_spec.rb +0 -18
- data/examples/server/spec/exotic_port_spec.rb +0 -17
- data/examples/server/spec/node_spec.rb +0 -49
- data/examples/server/spec/render_with_cached_spec.rb +0 -15
- data/examples/server/spec/role_spec.rb +0 -18
- data/examples/server/spec/search_spec.rb +0 -61
- data/examples/service/recipes/disable.rb +0 -13
- data/examples/service/recipes/enable.rb +0 -13
- data/examples/service/recipes/reload.rb +0 -13
- data/examples/service/recipes/restart.rb +0 -13
- data/examples/service/recipes/start.rb +0 -13
- data/examples/service/recipes/stop.rb +0 -13
- data/examples/service/spec/disable_spec.rb +0 -19
- data/examples/service/spec/enable_spec.rb +0 -19
- data/examples/service/spec/reload_spec.rb +0 -19
- data/examples/service/spec/restart_spec.rb +0 -19
- data/examples/service/spec/start_spec.rb +0 -19
- data/examples/service/spec/stop_spec.rb +0 -19
- data/examples/smartos_package/recipes/install.rb +0 -13
- data/examples/smartos_package/recipes/remove.rb +0 -13
- data/examples/smartos_package/recipes/upgrade.rb +0 -13
- data/examples/smartos_package/spec/install_spec.rb +0 -26
- data/examples/smartos_package/spec/remove_spec.rb +0 -22
- data/examples/smartos_package/spec/upgrade_spec.rb +0 -22
- data/examples/solaris_package/recipes/install.rb +0 -13
- data/examples/solaris_package/recipes/remove.rb +0 -13
- data/examples/solaris_package/recipes/upgrade.rb +0 -13
- data/examples/solaris_package/spec/install_spec.rb +0 -26
- data/examples/solaris_package/spec/remove_spec.rb +0 -22
- data/examples/solaris_package/spec/upgrade_spec.rb +0 -22
- data/examples/state_attrs/providers/lwrp.rb +0 -2
- data/examples/state_attrs/recipes/default.rb +0 -3
- data/examples/state_attrs/resources/lwrp.rb +0 -6
- data/examples/state_attrs/spec/default_spec.rb +0 -12
- data/examples/step_into/providers/lwrp.rb +0 -3
- data/examples/step_into/providers/provides.rb +0 -3
- data/examples/step_into/recipes/default.rb +0 -3
- data/examples/step_into/resources/lwrp.rb +0 -4
- data/examples/step_into/resources/provides.rb +0 -6
- data/examples/step_into/spec/default_spec.rb +0 -30
- data/examples/stub_command/recipes/default.rb +0 -5
- data/examples/stub_command/recipes/other_recipe.rb +0 -3
- data/examples/stub_command/spec/default_spec.rb +0 -28
- data/examples/stub_data_bag/recipes/default.rb +0 -5
- data/examples/stub_data_bag/spec/default_spec.rb +0 -27
- data/examples/stub_data_bag_item/recipes/default.rb +0 -5
- data/examples/stub_data_bag_item/spec/default_spec.rb +0 -27
- data/examples/stub_node/recipes/default.rb +0 -0
- data/examples/stub_node/spec/default_spec.rb +0 -17
- data/examples/stub_search/recipes/block.rb +0 -3
- data/examples/stub_search/recipes/default.rb +0 -2
- data/examples/stub_search/spec/block_spec.rb +0 -27
- data/examples/stub_search/spec/default_spec.rb +0 -27
- data/examples/subscribes/recipes/before.rb +0 -5
- data/examples/subscribes/recipes/chained.rb +0 -10
- data/examples/subscribes/recipes/default.rb +0 -5
- data/examples/subscribes/recipes/delayed.rb +0 -5
- data/examples/subscribes/recipes/immediately.rb +0 -5
- data/examples/subscribes/spec/before_spec.rb +0 -16
- data/examples/subscribes/spec/chained_spec.rb +0 -21
- data/examples/subscribes/spec/default_spec.rb +0 -16
- data/examples/subscribes/spec/delayed_spec.rb +0 -16
- data/examples/subscribes/spec/immediately_spec.rb +0 -16
- data/examples/subversion/recipes/checkout.rb +0 -13
- data/examples/subversion/recipes/export.rb +0 -13
- data/examples/subversion/recipes/force_export.rb +0 -13
- data/examples/subversion/recipes/sync.rb +0 -13
- data/examples/subversion/spec/checkout_spec.rb +0 -19
- data/examples/subversion/spec/export_spec.rb +0 -19
- data/examples/subversion/spec/force_export_spec.rb +0 -19
- data/examples/subversion/spec/sync_spec.rb +0 -23
- data/examples/systemd_unit/recipes/create.rb +0 -3
- data/examples/systemd_unit/recipes/delete.rb +0 -3
- data/examples/systemd_unit/recipes/disable.rb +0 -3
- data/examples/systemd_unit/recipes/enable.rb +0 -3
- data/examples/systemd_unit/recipes/mask.rb +0 -3
- data/examples/systemd_unit/recipes/reload_or_restart.rb +0 -3
- data/examples/systemd_unit/recipes/reload_or_try_restart.rb +0 -3
- data/examples/systemd_unit/recipes/restart.rb +0 -3
- data/examples/systemd_unit/recipes/start.rb +0 -3
- data/examples/systemd_unit/recipes/stop.rb +0 -3
- data/examples/systemd_unit/recipes/try_restart.rb +0 -3
- data/examples/systemd_unit/recipes/unmask.rb +0 -3
- data/examples/systemd_unit/spec/create_spec.rb +0 -10
- data/examples/systemd_unit/spec/delete_spec.rb +0 -10
- data/examples/systemd_unit/spec/disable_spec.rb +0 -10
- data/examples/systemd_unit/spec/enable_spec.rb +0 -10
- data/examples/systemd_unit/spec/mask_spec.rb +0 -10
- data/examples/systemd_unit/spec/reload_or_restart_spec.rb +0 -10
- data/examples/systemd_unit/spec/reload_or_try_restart_spec.rb +0 -10
- data/examples/systemd_unit/spec/restart_spec.rb +0 -10
- data/examples/systemd_unit/spec/start_spec.rb +0 -10
- data/examples/systemd_unit/spec/stop_spec.rb +0 -10
- data/examples/systemd_unit/spec/try_restart_spec.rb +0 -10
- data/examples/systemd_unit/spec/unmask_spec.rb +0 -10
- data/examples/template/recipes/create.rb +0 -15
- data/examples/template/recipes/create_if_missing.rb +0 -15
- data/examples/template/recipes/delete.rb +0 -15
- data/examples/template/recipes/touch.rb +0 -15
- data/examples/template/spec/create_if_missing_spec.rb +0 -28
- data/examples/template/spec/create_spec.rb +0 -32
- data/examples/template/spec/delete_spec.rb +0 -19
- data/examples/template/spec/touch_spec.rb +0 -19
- data/examples/use_inline_resources/libraries/matchers.rb +0 -5
- data/examples/use_inline_resources/providers/lwrp.rb +0 -7
- data/examples/use_inline_resources/recipes/default.rb +0 -1
- data/examples/use_inline_resources/resources/lwrp.rb +0 -4
- data/examples/use_inline_resources/spec/default_spec.rb +0 -18
- data/examples/user/recipes/create.rb +0 -13
- data/examples/user/recipes/lock.rb +0 -13
- data/examples/user/recipes/manage.rb +0 -13
- data/examples/user/recipes/modify.rb +0 -13
- data/examples/user/recipes/remove.rb +0 -13
- data/examples/user/recipes/unlock.rb +0 -13
- data/examples/user/spec/create_spec.rb +0 -26
- data/examples/user/spec/lock_spec.rb +0 -22
- data/examples/user/spec/manage_spec.rb +0 -22
- data/examples/user/spec/modify_spec.rb +0 -22
- data/examples/user/spec/remove_spec.rb +0 -22
- data/examples/user/spec/unlock_spec.rb +0 -22
- data/examples/windows_package/recipes/install.rb +0 -13
- data/examples/windows_package/recipes/remove.rb +0 -13
- data/examples/windows_package/spec/install_spec.rb +0 -22
- data/examples/windows_package/spec/remove_spec.rb +0 -22
- data/examples/windows_service/recipes/configure_startup.rb +0 -13
- data/examples/windows_service/recipes/disable.rb +0 -13
- data/examples/windows_service/recipes/enable.rb +0 -13
- data/examples/windows_service/recipes/reload.rb +0 -13
- data/examples/windows_service/recipes/restart.rb +0 -13
- data/examples/windows_service/recipes/start.rb +0 -13
- data/examples/windows_service/recipes/stop.rb +0 -13
- data/examples/windows_service/spec/configure_startup_spec.rb +0 -22
- data/examples/windows_service/spec/disable_spec.rb +0 -22
- data/examples/windows_service/spec/enable_spec.rb +0 -22
- data/examples/windows_service/spec/reload_spec.rb +0 -22
- data/examples/windows_service/spec/restart_spec.rb +0 -22
- data/examples/windows_service/spec/start_spec.rb +0 -22
- data/examples/windows_service/spec/stop_spec.rb +0 -22
- data/examples/yum_package/recipes/install.rb +0 -13
- data/examples/yum_package/recipes/purge.rb +0 -13
- data/examples/yum_package/recipes/remove.rb +0 -13
- data/examples/yum_package/recipes/upgrade.rb +0 -13
- data/examples/yum_package/spec/install_spec.rb +0 -26
- data/examples/yum_package/spec/purge_spec.rb +0 -22
- data/examples/yum_package/spec/remove_spec.rb +0 -22
- data/examples/yum_package/spec/upgrade_spec.rb +0 -22
- data/examples/yum_repository/recipes/add.rb +0 -8
- data/examples/yum_repository/recipes/create.rb +0 -8
- data/examples/yum_repository/recipes/delete.rb +0 -3
- data/examples/yum_repository/recipes/makecache.rb +0 -3
- data/examples/yum_repository/recipes/remove.rb +0 -7
- data/examples/yum_repository/spec/add_spec.rb +0 -12
- data/examples/yum_repository/spec/create_spec.rb +0 -17
- data/examples/yum_repository/spec/delete_spec.rb +0 -12
- data/examples/yum_repository/spec/makecache_spec.rb +0 -12
- data/examples/yum_repository/spec/remove_spec.rb +0 -12
- data/examples/zypper_package/recipes/install.rb +0 -13
- data/examples/zypper_package/recipes/purge.rb +0 -13
- data/examples/zypper_package/recipes/remove.rb +0 -13
- data/examples/zypper_package/recipes/upgrade.rb +0 -13
- data/examples/zypper_package/spec/install_spec.rb +0 -23
- data/examples/zypper_package/spec/purge_spec.rb +0 -19
- data/examples/zypper_package/spec/remove_spec.rb +0 -19
- data/examples/zypper_package/spec/upgrade_spec.rb +0 -19
- data/features/apt_package.feature +0 -14
- data/features/apt_repository.feature +0 -15
- data/features/apt_update.feature +0 -13
- data/features/attributes.feature +0 -7
- data/features/batch.feature +0 -10
- data/features/bff_package.feature +0 -12
- data/features/cab_package.feature +0 -21
- data/features/cached.feature +0 -7
- data/features/chef_gem.feature +0 -14
- data/features/chocolatey_package.feature +0 -14
- data/features/compile_time.feature +0 -7
- data/features/cookbook_file.feature +0 -13
- data/features/cron.feature +0 -11
- data/features/custom_matcher.feature +0 -11
- data/features/custom_resource.feature +0 -7
- data/features/deploy.feature +0 -12
- data/features/directory.feature +0 -11
- data/features/dnf_package.feature +0 -26
- data/features/do_nothing.feature +0 -10
- data/features/dpkg_package.feature +0 -12
- data/features/dsc_resource.feature +0 -10
- data/features/dsc_script.feature +0 -10
- data/features/env.feature +0 -12
- data/features/erl_call.feature +0 -10
- data/features/execute.feature +0 -10
- data/features/exotic_zero_port.feature +0 -7
- data/features/expect_exception.feature +0 -12
- data/features/file.feature +0 -13
- data/features/freebsd_package.feature +0 -11
- data/features/gem_package.feature +0 -14
- data/features/git.feature +0 -12
- data/features/group.feature +0 -13
- data/features/guards.feature +0 -10
- data/features/heavy_provider_light_resource.feature +0 -10
- data/features/homebrew_package.feature +0 -12
- data/features/http_request.feature +0 -15
- data/features/ifconfig.feature +0 -13
- data/features/include_recipe.feature +0 -10
- data/features/ips_package.feature +0 -12
- data/features/launchd.feature +0 -17
- data/features/link.feature +0 -12
- data/features/log.feature +0 -10
- data/features/macports_package.feature +0 -13
- data/features/mdadm.feature +0 -12
- data/features/mount.feature +0 -14
- data/features/msu_package.feature +0 -23
- data/features/multiple_actions.feature +0 -12
- data/features/multiple_run_action.feature +0 -7
- data/features/notifications.feature +0 -14
- data/features/ohai.feature +0 -10
- data/features/openbsd_package.feature +0 -12
- data/features/osx_profile.feature +0 -13
- data/features/package.feature +0 -14
- data/features/pacman_package.feature +0 -13
- data/features/paludis_package.feature +0 -12
- data/features/portage_package.feature +0 -13
- data/features/powershell_script.feature +0 -10
- data/features/reboot.feature +0 -12
- data/features/registry_key.feature +0 -13
- data/features/remote_directory.feature +0 -12
- data/features/remote_file.feature +0 -13
- data/features/render_file.feature +0 -11
- data/features/roles.feature +0 -7
- data/features/route.feature +0 -11
- data/features/rpm_package.feature +0 -12
- data/features/ruby_block.feature +0 -11
- data/features/script.feature +0 -16
- data/features/server.feature +0 -16
- data/features/server_on_disk.feature +0 -16
- data/features/service.feature +0 -15
- data/features/smartos_package.feature +0 -12
- data/features/solaris_package.feature +0 -12
- data/features/state_attrs.feature +0 -7
- data/features/step_definitions/background_steps.rb +0 -7
- data/features/step_into.feature +0 -7
- data/features/stub_command.feature +0 -7
- data/features/stub_data_bag.feature +0 -7
- data/features/stub_data_bag_item.feature +0 -7
- data/features/stub_node.feature +0 -7
- data/features/stub_search.feature +0 -7
- data/features/subscribes.feature +0 -14
- data/features/subversion.feature +0 -13
- data/features/support/env.rb +0 -38
- data/features/support/executor.rb +0 -20
- data/features/support/exotic_zero_port.rb +0 -3
- data/features/support/on_disk.rb +0 -7
- data/features/systemd_unit.feature +0 -27
- data/features/template.feature +0 -13
- data/features/use_inline_resources.feature +0 -7
- data/features/user.feature +0 -15
- data/features/windows_package.feature +0 -11
- data/features/windows_service.feature +0 -16
- data/features/yum_package.feature +0 -13
- data/features/yum_repository.feature +0 -23
- data/features/zypper_package.feature +0 -13
- data/lib/chefspec/api/apt_package.rb +0 -192
- data/lib/chefspec/api/apt_repository.rb +0 -56
- data/lib/chefspec/api/apt_update.rb +0 -53
- data/lib/chefspec/api/batch.rb +0 -43
- data/lib/chefspec/api/bff_package.rb +0 -154
- data/lib/chefspec/api/cab_package.rb +0 -80
- data/lib/chefspec/api/chef_gem.rb +0 -191
- data/lib/chefspec/api/chocolatey_package.rb +0 -107
- data/lib/chefspec/api/cookbook_file.rb +0 -166
- data/lib/chefspec/api/cron.rb +0 -80
- data/lib/chefspec/api/deploy.rb +0 -117
- data/lib/chefspec/api/directory.rb +0 -80
- data/lib/chefspec/api/dnf_package.rb +0 -154
- data/lib/chefspec/api/dpkg_package.rb +0 -117
- data/lib/chefspec/api/dsc_resource.rb +0 -49
- data/lib/chefspec/api/dsc_script.rb +0 -37
- data/lib/chefspec/api/easy_install_package.rb +0 -154
- data/lib/chefspec/api/env.rb +0 -117
- data/lib/chefspec/api/erl_call.rb +0 -43
- data/lib/chefspec/api/execute.rb +0 -43
- data/lib/chefspec/api/file.rb +0 -166
- data/lib/chefspec/api/freebsd_package.rb +0 -80
- data/lib/chefspec/api/gem_package.rb +0 -191
- data/lib/chefspec/api/git.rb +0 -117
- data/lib/chefspec/api/group.rb +0 -154
- data/lib/chefspec/api/homebrew_package.rb +0 -154
- data/lib/chefspec/api/http_request.rb +0 -228
- data/lib/chefspec/api/ifconfig.rb +0 -154
- data/lib/chefspec/api/ips_package.rb +0 -117
- data/lib/chefspec/api/launchd.rb +0 -151
- data/lib/chefspec/api/log.rb +0 -43
- data/lib/chefspec/api/macports_package.rb +0 -154
- data/lib/chefspec/api/mdadm.rb +0 -117
- data/lib/chefspec/api/mount.rb +0 -192
- data/lib/chefspec/api/msu_package.rb +0 -81
- data/lib/chefspec/api/ohai.rb +0 -43
- data/lib/chefspec/api/openbsd_package.rb +0 -155
- data/lib/chefspec/api/osx_profile.rb +0 -63
- data/lib/chefspec/api/package.rb +0 -192
- data/lib/chefspec/api/pacman_package.rb +0 -155
- data/lib/chefspec/api/paludis_package.rb +0 -155
- data/lib/chefspec/api/portage_package.rb +0 -155
- data/lib/chefspec/api/powershell_script.rb +0 -43
- data/lib/chefspec/api/registry_key.rb +0 -166
- data/lib/chefspec/api/remote_directory.rb +0 -120
- data/lib/chefspec/api/remote_file.rb +0 -166
- data/lib/chefspec/api/route.rb +0 -80
- data/lib/chefspec/api/rpm_package.rb +0 -117
- data/lib/chefspec/api/ruby_block.rb +0 -68
- data/lib/chefspec/api/script.rb +0 -278
- data/lib/chefspec/api/service.rb +0 -246
- data/lib/chefspec/api/smartos_package.rb +0 -117
- data/lib/chefspec/api/solaris_package.rb +0 -117
- data/lib/chefspec/api/subversion.rb +0 -154
- data/lib/chefspec/api/systemd_unit.rb +0 -353
- data/lib/chefspec/api/template.rb +0 -166
- data/lib/chefspec/api/windows_package.rb +0 -86
- data/lib/chefspec/api/windows_service.rb +0 -286
- data/lib/chefspec/api/yum_package.rb +0 -154
- data/lib/chefspec/api/yum_repository.rb +0 -130
- data/lib/chefspec/api/zypper_package.rb +0 -154
- data/lib/chefspec/macros.rb +0 -222
- data/spec/unit/api_spec.rb +0 -18
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: d08884a5c636b308014e0dd1c6cedc065722c6f380474ce2c984c8fd3b25a493
|
|
4
|
+
data.tar.gz: e21ef1121d8ead918fa9636fb1bf1c7b8a177ac2db3c905764b43ed346026043
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 5d2a4352d11afa3165b9c1f63a6e92aed6ab35bb5794b6f7ad2df330da74093c0268e3d9a6e0fc660142cf2363d5a6a2c6a42fb271c3acbfe14afe0c832fe1cd
|
|
7
|
+
data.tar.gz: 1d2a0074029fd1acba7b02a8d5cb5ef8a0e696ec250edb1077363b42e761302f2a6462eabb0eab338097a26332c29ef9187c8cb64b90105d5d010a22fb6d0f73
|
data/Gemfile
CHANGED
|
@@ -1,12 +1,30 @@
|
|
|
1
|
-
source
|
|
2
|
-
|
|
3
|
-
# env var for travis
|
|
4
|
-
if ENV['CHEF_VERSION']
|
|
5
|
-
if ENV['CHEF_VERSION'] == "master"
|
|
6
|
-
gem 'chef', git: "https://github.com/chef/chef"
|
|
7
|
-
else
|
|
8
|
-
gem 'chef', ENV['CHEF_VERSION']
|
|
9
|
-
end
|
|
10
|
-
end
|
|
1
|
+
source "https://rubygems.org"
|
|
11
2
|
|
|
12
3
|
gemspec
|
|
4
|
+
|
|
5
|
+
group :development do
|
|
6
|
+
gem "rake"
|
|
7
|
+
gem "redcarpet"
|
|
8
|
+
gem "yard"
|
|
9
|
+
gem "pry"
|
|
10
|
+
gem "pry-byebug"
|
|
11
|
+
gem "chefstyle"
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
if ENV["GEMFILE_MOD"]
|
|
15
|
+
puts "GEMFILE_MOD: #{ENV["GEMFILE_MOD"]}"
|
|
16
|
+
instance_eval(ENV["GEMFILE_MOD"])
|
|
17
|
+
else
|
|
18
|
+
gem "chef", git: "https://github.com/chef/chef"
|
|
19
|
+
gem "ohai", git: "https://github.com/chef/ohai"
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
# TODO: remove when we drop ruby 2.5
|
|
23
|
+
if Gem.ruby_version < Gem::Version.new("2.6")
|
|
24
|
+
# 16.7.23 required ruby 2.6+
|
|
25
|
+
gem "chef-utils", "< 16.7.23"
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# If you want to load debugging tools into the bundle exec sandbox,
|
|
29
|
+
# add these additional dependencies into Gemfile.local
|
|
30
|
+
eval_gemfile(__FILE__ + ".local") if File.exist?(__FILE__ + ".local")
|
data/Rakefile
CHANGED
|
@@ -1,29 +1,85 @@
|
|
|
1
|
-
require
|
|
2
|
-
require
|
|
3
|
-
require
|
|
4
|
-
require
|
|
1
|
+
require "bundler/gem_tasks"
|
|
2
|
+
require "rspec/core"
|
|
3
|
+
require "rspec/core/rake_task"
|
|
4
|
+
require "yard/rake/yardoc_task"
|
|
5
|
+
require "tmpdir"
|
|
6
|
+
require "rspec"
|
|
7
|
+
require "chefspec"
|
|
8
|
+
require "chefstyle"
|
|
5
9
|
|
|
6
|
-
require
|
|
10
|
+
require "chef/version"
|
|
11
|
+
|
|
12
|
+
require "rubocop/rake_task"
|
|
13
|
+
RuboCop::RakeTask.new(:style) do |task|
|
|
14
|
+
task.options << "--display-cop-names"
|
|
15
|
+
end
|
|
7
16
|
|
|
8
17
|
YARD::Rake::YardocTask.new
|
|
9
18
|
|
|
10
19
|
RSpec::Core::RakeTask.new(:unit) do |t|
|
|
11
20
|
t.rspec_opts = [].tap do |a|
|
|
12
|
-
a.push(
|
|
13
|
-
a.push(
|
|
14
|
-
end.join(
|
|
21
|
+
a.push("--color")
|
|
22
|
+
a.push("--format progress")
|
|
23
|
+
end.join(" ")
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
failed = []
|
|
27
|
+
start_time = nil
|
|
28
|
+
|
|
29
|
+
namespace :acceptance do |ns|
|
|
30
|
+
|
|
31
|
+
Dir.foreach("examples") do |dir|
|
|
32
|
+
next if %w{. .. .DS_Store}.include?(dir)
|
|
33
|
+
|
|
34
|
+
desc "#{dir} acceptance tests"
|
|
35
|
+
task dir.to_sym do
|
|
36
|
+
start_time ||= Time.now
|
|
37
|
+
Dir.mktmpdir do |tmp|
|
|
38
|
+
FileUtils.cp_r("examples/#{dir}", tmp)
|
|
39
|
+
|
|
40
|
+
pwd = Dir.pwd
|
|
41
|
+
|
|
42
|
+
Dir.chdir "#{tmp}/#{dir}" do
|
|
43
|
+
puts "rspec examples/#{dir}"
|
|
44
|
+
|
|
45
|
+
#
|
|
46
|
+
# This bit of mildly awful magic below is to load each file into an in-memory
|
|
47
|
+
# RSpec runner while keeping a persistent ChefZero server alive.
|
|
48
|
+
#
|
|
49
|
+
load "#{pwd}/lib/chefspec/rspec.rb"
|
|
50
|
+
|
|
51
|
+
RSpec.configure do |config|
|
|
52
|
+
config.full_backtrace = true
|
|
53
|
+
config.color = true
|
|
54
|
+
config.run_all_when_everything_filtered = true
|
|
55
|
+
config.filter_run(:focus)
|
|
56
|
+
config.before(:suite) do
|
|
57
|
+
ChefSpec::ZeroServer.setup!
|
|
58
|
+
end
|
|
59
|
+
config.after(:each) do
|
|
60
|
+
ChefSpec::ZeroServer.reset!
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
RSpec.clear_examples
|
|
65
|
+
exitstatus = RSpec::Core::Runner.run(["spec"])
|
|
66
|
+
RSpec.reset
|
|
67
|
+
failed << dir unless exitstatus == 0
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
rescue Errno::ENOENT # examples dir is probably missing
|
|
73
|
+
puts "The rake acceptance tests require a full git checkout of chefspec including all examples files!"
|
|
74
|
+
|
|
15
75
|
end
|
|
16
76
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
a.push('--format progress')
|
|
21
|
-
a.push('--strict')
|
|
22
|
-
a.push('--tags ~@not_chef_' + Chef::VERSION.gsub('.', '_'))
|
|
23
|
-
end.join(' ')
|
|
77
|
+
task acceptance: Rake.application.tasks.select { |t| t.name.start_with?("acceptance:") } do
|
|
78
|
+
puts "Acceptance tests took #{Time.now - start_time} seconds"
|
|
79
|
+
raise "some tests failed: #{failed.join(", ")}" unless failed.empty?
|
|
24
80
|
end
|
|
25
81
|
|
|
26
|
-
desc
|
|
27
|
-
task :
|
|
82
|
+
desc "Run all tests"
|
|
83
|
+
task test: %i{unit acceptance}
|
|
28
84
|
|
|
29
|
-
task :
|
|
85
|
+
task default: [:test]
|
data/chefspec.gemspec
CHANGED
|
@@ -1,39 +1,37 @@
|
|
|
1
|
-
lib = File.expand_path(
|
|
1
|
+
lib = File.expand_path("lib", __dir__)
|
|
2
2
|
$:.unshift lib unless $:.include?(lib)
|
|
3
|
-
require
|
|
3
|
+
require "chefspec/version"
|
|
4
4
|
|
|
5
5
|
Gem::Specification.new do |s|
|
|
6
|
-
s.name =
|
|
6
|
+
s.name = "chefspec"
|
|
7
7
|
s.version = ChefSpec::VERSION
|
|
8
|
-
s.authors = [
|
|
9
|
-
s.email = [
|
|
10
|
-
s.summary =
|
|
11
|
-
|
|
12
|
-
s.description =
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
s.homepage =
|
|
18
|
-
s.license =
|
|
8
|
+
s.authors = ["Andrew Crump", "Seth Vargo"]
|
|
9
|
+
s.email = ["andrew.crump@ieee.org", "sethvargo@gmail.com"]
|
|
10
|
+
s.summary = "Write RSpec examples and generate coverage reports for " \
|
|
11
|
+
"Chef recipes!"
|
|
12
|
+
s.description = "ChefSpec is a unit testing and resource coverage " \
|
|
13
|
+
"(code coverage) framework for testing Chef cookbooks " \
|
|
14
|
+
"ChefSpec makes it easy to write examples and get fast " \
|
|
15
|
+
"feedback on cookbook changes without the need for " \
|
|
16
|
+
"virtual machines or cloud servers."
|
|
17
|
+
s.homepage = "https://github.com/chef/chefspec"
|
|
18
|
+
s.license = "MIT"
|
|
19
19
|
|
|
20
20
|
# Packaging
|
|
21
|
-
s.files =
|
|
22
|
-
s.
|
|
23
|
-
s.test_files = s.files.grep(%r{^(test|spec|features)/})
|
|
24
|
-
s.require_paths = ['lib']
|
|
21
|
+
s.files = %w{LICENSE Rakefile Gemfile chefspec.gemspec} + Dir.glob("{lib,templates,spec}/**/*", File::FNM_DOTMATCH).reject { |f| File.directory?(f) }
|
|
22
|
+
s.require_paths = ["lib"]
|
|
25
23
|
|
|
26
|
-
s.required_ruby_version =
|
|
24
|
+
s.required_ruby_version = ">= 2.5"
|
|
27
25
|
|
|
28
|
-
s.add_dependency
|
|
29
|
-
s.add_dependency
|
|
30
|
-
s.add_dependency
|
|
26
|
+
s.add_dependency "chef", ">= 15"
|
|
27
|
+
s.add_dependency "chef-cli"
|
|
28
|
+
s.add_dependency "fauxhai-chef", ">= 9.3"
|
|
29
|
+
s.add_dependency "rspec", "~> 3.0"
|
|
31
30
|
|
|
32
|
-
#
|
|
33
|
-
s.
|
|
34
|
-
s.add_development_dependency 'redcarpet', '~> 3.3'
|
|
35
|
-
s.add_development_dependency 'yard', '~> 0.8'
|
|
31
|
+
# this needs to be remedied before Ruby 3.3
|
|
32
|
+
s.add_dependency "logger", "< 1.6"
|
|
36
33
|
|
|
37
|
-
#
|
|
38
|
-
|
|
34
|
+
# temporary restriction to a version of rspec-expectations that includes the
|
|
35
|
+
# `RSpec::Matchers::ExpectedsForMultipleDiffs` class (renamed in 3.12.4)
|
|
36
|
+
s.add_dependency "rspec-expectations", "<= 3.12.3"
|
|
39
37
|
end
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
module ChefSpec
|
|
2
|
+
module API
|
|
3
|
+
# Module containing the core RSpec API for ChefSpec.
|
|
4
|
+
module Core
|
|
5
|
+
# Pull in the needed machinery to use `around` and `let` in here.
|
|
6
|
+
extend RSpec::SharedContext
|
|
7
|
+
|
|
8
|
+
# Activate all of the various ChefSpec stubs for the duraction of this
|
|
9
|
+
# example block.
|
|
10
|
+
around do |ex|
|
|
11
|
+
old_chefspec_mode = $CHEFSPEC_MODE
|
|
12
|
+
$CHEFSPEC_MODE = true
|
|
13
|
+
begin
|
|
14
|
+
# Only run the preload if a platform is configured via the new system
|
|
15
|
+
# since otherwise it will spam warnings about the platform not being
|
|
16
|
+
# set.
|
|
17
|
+
chef_runner_instance.preload! if chefspec_platform
|
|
18
|
+
ex.run
|
|
19
|
+
ensure
|
|
20
|
+
$CHEFSPEC_MODE = old_chefspec_mode
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
# Let variables to set data in a scoped way. Used below by
|
|
25
|
+
# {ClassMethods#platform}.
|
|
26
|
+
let(:chefspec_default_attributes) { chefspec_attributes(:default_attributes) }
|
|
27
|
+
let(:chefspec_normal_attributes) { chefspec_attributes(:normal_attributes) }
|
|
28
|
+
let(:chefspec_override_attributes) { chefspec_attributes(:override_attributes) }
|
|
29
|
+
let(:chefspec_automatic_attributes) { chefspec_attributes(:automatic_attributes) }
|
|
30
|
+
let(:chefspec_platform) { nil }
|
|
31
|
+
let(:chefspec_platform_version) { nil }
|
|
32
|
+
|
|
33
|
+
# Compute the options for the runner.
|
|
34
|
+
#
|
|
35
|
+
# @abstract
|
|
36
|
+
# @return [Hash<Symbol, Object>]
|
|
37
|
+
def chef_runner_options
|
|
38
|
+
options = {
|
|
39
|
+
step_into: chefspec_ancestor_gather([], :step_into) { |memo, val| memo | val },
|
|
40
|
+
default_attributes: chefspec_default_attributes,
|
|
41
|
+
normal_attributes: chefspec_normal_attributes,
|
|
42
|
+
override_attributes: chefspec_override_attributes,
|
|
43
|
+
automatic_attributes: chefspec_automatic_attributes,
|
|
44
|
+
spec_declaration_locations: self.class.declaration_locations.last[0],
|
|
45
|
+
}
|
|
46
|
+
# Only specify these if set in the example so we don't override the
|
|
47
|
+
# global settings.
|
|
48
|
+
options[:platform] = chefspec_platform if chefspec_platform
|
|
49
|
+
options[:version] = chefspec_platform_version if chefspec_platform_version
|
|
50
|
+
# Merge in any final overrides.
|
|
51
|
+
options.update(chefspec_attributes(:chefspec_options).symbolize_keys)
|
|
52
|
+
options
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
# Class of runner to use.
|
|
56
|
+
#
|
|
57
|
+
# @abstract
|
|
58
|
+
# @return [Class]
|
|
59
|
+
def chef_runner_class
|
|
60
|
+
ChefSpec::SoloRunner
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
# Create an instance of the runner.
|
|
64
|
+
#
|
|
65
|
+
# This should only be used in cases where the `let()` cache would be a problem.
|
|
66
|
+
#
|
|
67
|
+
# @return [ChefSpec::SoloRunner]
|
|
68
|
+
def chef_runner_instance
|
|
69
|
+
chef_runner_class.new(chef_runner_options)
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
# Set up the runner object but don't actually run anything yet.
|
|
73
|
+
let(:chef_runner) { chef_runner_instance }
|
|
74
|
+
|
|
75
|
+
# By default, run the recipe in the base `describe` block.
|
|
76
|
+
let(:chef_run) { chef_runner.converge(described_recipe) }
|
|
77
|
+
|
|
78
|
+
# Helper method for some of the nestable test value methods like
|
|
79
|
+
# {ClassMethods#default_attributes} and {ClassMethods#step_into}.
|
|
80
|
+
#
|
|
81
|
+
# @api private
|
|
82
|
+
# @param start [Object] Initial value for the reducer.
|
|
83
|
+
# @param method [Symbol] Name of the group-level method to call on each
|
|
84
|
+
# ancestor.
|
|
85
|
+
# @param block [Proc] Reducer callable.
|
|
86
|
+
# @return [Object]
|
|
87
|
+
def chefspec_ancestor_gather(start, method, &block)
|
|
88
|
+
candidate_ancestors = self.class.ancestors.select { |cls| cls.respond_to?(method) && cls != ChefSpec::API::Core }
|
|
89
|
+
candidate_ancestors.reverse.inject(start) do |memo, cls|
|
|
90
|
+
block.call(memo, cls.send(method))
|
|
91
|
+
end
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
# Special case of {#chefspec_ancestor_gather} because we do it four times.
|
|
95
|
+
#
|
|
96
|
+
# @api private
|
|
97
|
+
# @param method [Symbol] Name of the group-level method to call on each
|
|
98
|
+
# ancestor.
|
|
99
|
+
# @return [Mash]
|
|
100
|
+
def chefspec_attributes(method)
|
|
101
|
+
chefspec_ancestor_gather(Mash.new, method) do |memo, val|
|
|
102
|
+
Chef::Mixin::DeepMerge.merge(memo, val)
|
|
103
|
+
end
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
# Methods that will end up as group-level.
|
|
107
|
+
#
|
|
108
|
+
# @api private
|
|
109
|
+
module ClassMethods
|
|
110
|
+
# Set the Fauxhai platform to use for this example group.
|
|
111
|
+
#
|
|
112
|
+
# @example
|
|
113
|
+
# describe 'myrecipe' do
|
|
114
|
+
# platform 'ubuntu', '18.04'
|
|
115
|
+
# @param name [String] Platform name to set.
|
|
116
|
+
# @param version [String, nil] Platform version to set.
|
|
117
|
+
# @return [void]
|
|
118
|
+
def platform(name, version = nil)
|
|
119
|
+
let(:chefspec_platform) { name }
|
|
120
|
+
let(:chefspec_platform_version) { version }
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
# Use an in-line block of recipe code for this example group rather
|
|
124
|
+
# than a recipe from a cookbook.
|
|
125
|
+
#
|
|
126
|
+
# @example
|
|
127
|
+
# describe 'my_resource' do
|
|
128
|
+
# recipe do
|
|
129
|
+
# my_resource 'helloworld'
|
|
130
|
+
# end
|
|
131
|
+
# @param block [Proc] A block of Chef recipe code.
|
|
132
|
+
# @return [void]
|
|
133
|
+
def recipe(&block)
|
|
134
|
+
let(:chef_run) do
|
|
135
|
+
chef_runner.converge_block(&block)
|
|
136
|
+
end
|
|
137
|
+
end
|
|
138
|
+
|
|
139
|
+
# Set default-level node attributes to use for this example group.
|
|
140
|
+
#
|
|
141
|
+
# @example
|
|
142
|
+
# describe 'myapp::install' do
|
|
143
|
+
# default_attributes['myapp']['version'] = '1.0'
|
|
144
|
+
# @return [Chef::Node::VividMash]
|
|
145
|
+
def default_attributes
|
|
146
|
+
@chefspec_default_attributes ||= Chef::Node::VividMash.new
|
|
147
|
+
end
|
|
148
|
+
|
|
149
|
+
# Set normal-level node attributes to use for this example group.
|
|
150
|
+
#
|
|
151
|
+
# @example
|
|
152
|
+
# describe 'myapp::install' do
|
|
153
|
+
# normal_attributes['myapp']['version'] = '1.0'
|
|
154
|
+
# @return [Chef::Node::VividMash]
|
|
155
|
+
def normal_attributes
|
|
156
|
+
@chefspec_normal_attributes ||= Chef::Node::VividMash.new
|
|
157
|
+
end
|
|
158
|
+
|
|
159
|
+
# Set override-level node attributes to use for this example group.
|
|
160
|
+
#
|
|
161
|
+
# @example
|
|
162
|
+
# describe 'myapp::install' do
|
|
163
|
+
# override_attributes['myapp']['version'] = '1.0'
|
|
164
|
+
# @return [Chef::Node::VividMash]
|
|
165
|
+
def override_attributes
|
|
166
|
+
@chefspec_override_attributes ||= Chef::Node::VividMash.new
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
# Set automatic-level node attributes to use for this example group.
|
|
170
|
+
#
|
|
171
|
+
# @example
|
|
172
|
+
# describe 'myapp::install' do
|
|
173
|
+
# automatic_attributes['kernel']['machine'] = 'ppc64'
|
|
174
|
+
# @return [Chef::Node::VividMash]
|
|
175
|
+
def automatic_attributes
|
|
176
|
+
@chefspec_automatic_attributes ||= Chef::Node::VividMash.new
|
|
177
|
+
end
|
|
178
|
+
|
|
179
|
+
# Set additional ChefSpec runner options to use for this example group.
|
|
180
|
+
#
|
|
181
|
+
# @example
|
|
182
|
+
# describe 'myapp::install' do
|
|
183
|
+
# chefspec_options[:log_level] = :debug
|
|
184
|
+
# @return [Chef::Node::VividMash]
|
|
185
|
+
def chefspec_options
|
|
186
|
+
@chefspec_options ||= Chef::Node::VividMash.new
|
|
187
|
+
end
|
|
188
|
+
|
|
189
|
+
# Add resources to the step_into list for this example group.
|
|
190
|
+
#
|
|
191
|
+
# @example
|
|
192
|
+
# describe 'myapp::install' do
|
|
193
|
+
# step_into :my_resource
|
|
194
|
+
# @return [Array]
|
|
195
|
+
def step_into(*resources)
|
|
196
|
+
@chefspec_step_into ||= []
|
|
197
|
+
@chefspec_step_into |= resources.flatten.map(&:to_s)
|
|
198
|
+
end
|
|
199
|
+
|
|
200
|
+
# @api private
|
|
201
|
+
def included(klass)
|
|
202
|
+
super
|
|
203
|
+
# Inject classmethods into the group.
|
|
204
|
+
klass.extend(ClassMethods)
|
|
205
|
+
# If the describe block is aimed at string or resource/provider class
|
|
206
|
+
# then set the default subject to be the Chef run.
|
|
207
|
+
if klass.described_class.nil? || klass.described_class.is_a?(Class) && (klass.described_class < Chef::Resource || klass.described_class < Chef::Provider)
|
|
208
|
+
klass.subject { chef_run }
|
|
209
|
+
end
|
|
210
|
+
end
|
|
211
|
+
end
|
|
212
|
+
|
|
213
|
+
extend ClassMethods
|
|
214
|
+
|
|
215
|
+
end
|
|
216
|
+
end
|
|
217
|
+
end
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
module ChefSpec
|
|
2
|
+
module API
|
|
3
|
+
module Described
|
|
4
|
+
#
|
|
5
|
+
# The name of the currently running cookbook spec. Given the top-level
|
|
6
|
+
# +describe+ block is of the format:
|
|
7
|
+
#
|
|
8
|
+
# describe 'my_cookbook::my_recipe' do
|
|
9
|
+
# # ...
|
|
10
|
+
# end
|
|
11
|
+
#
|
|
12
|
+
# The value of +described_cookbook+ is "my_cookbook".
|
|
13
|
+
#
|
|
14
|
+
# @example Using +described_cookbook+ in a context block
|
|
15
|
+
# context "#{described_recipe} installs foo" do
|
|
16
|
+
# # ...
|
|
17
|
+
# end
|
|
18
|
+
#
|
|
19
|
+
#
|
|
20
|
+
# @return [String]
|
|
21
|
+
#
|
|
22
|
+
def described_cookbook
|
|
23
|
+
described_recipe.split("::").first
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
#
|
|
27
|
+
# The name of the currently running recipe spec. Given the top-level
|
|
28
|
+
# +describe+ block is of the format:
|
|
29
|
+
#
|
|
30
|
+
# describe 'my_cookbook::my_recipe' do
|
|
31
|
+
# # ...
|
|
32
|
+
# end
|
|
33
|
+
#
|
|
34
|
+
# The value of +described_recipe+ is "my_cookbook::my_recipe".
|
|
35
|
+
#
|
|
36
|
+
# @example Using +described_recipe+ in the +ChefSpec::SoloRunner+
|
|
37
|
+
# let(:chef_run) { ChefSpec::SoloRunner.new.converge(described_recipe) }
|
|
38
|
+
#
|
|
39
|
+
#
|
|
40
|
+
# @return [String]
|
|
41
|
+
#
|
|
42
|
+
def described_recipe
|
|
43
|
+
scope = is_a?(Class) ? self : self.class
|
|
44
|
+
|
|
45
|
+
metahash = scope.metadata
|
|
46
|
+
metahash = metahash[:parent_example_group] while metahash.key?(:parent_example_group)
|
|
47
|
+
|
|
48
|
+
metahash[:description].to_s
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
@@ -1,24 +1,26 @@
|
|
|
1
|
-
module ChefSpec
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
1
|
+
module ChefSpec
|
|
2
|
+
module API
|
|
3
|
+
module DoNothing
|
|
4
|
+
#
|
|
5
|
+
# Assert that a resource in the Chef run does not perform any actions. Given
|
|
6
|
+
# a resource with +action :nothing+:
|
|
7
|
+
#
|
|
8
|
+
# package 'apache2' do
|
|
9
|
+
# action :nothing
|
|
10
|
+
# end
|
|
11
|
+
#
|
|
12
|
+
# The Examples section demonstrates the different ways to test that no
|
|
13
|
+
# actions were performed on a resource in a Chef run.
|
|
14
|
+
#
|
|
15
|
+
# @example Assert the +package+ does not perform any actions
|
|
16
|
+
# expect(chef_run.package('apache2')).to do_nothing
|
|
17
|
+
#
|
|
18
|
+
# @return [ChefSpec::Matchers::DoNothingMatcher]
|
|
19
|
+
#
|
|
20
|
+
def do_nothing
|
|
21
|
+
ChefSpec::Matchers::DoNothingMatcher.new
|
|
22
|
+
end
|
|
23
|
+
|
|
22
24
|
end
|
|
23
25
|
end
|
|
24
26
|
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
module ChefSpec
|
|
2
|
+
module API
|
|
3
|
+
module IncludeAnyRecipe
|
|
4
|
+
#
|
|
5
|
+
# Assert that a Chef run includes any recipe.
|
|
6
|
+
#
|
|
7
|
+
# include_recipe 'apache2::default'
|
|
8
|
+
#
|
|
9
|
+
# The Examples section demonstrates the different ways to test an
|
|
10
|
+
# +include_any_recipe+ directive with ChefSpec.
|
|
11
|
+
#
|
|
12
|
+
# @example Assert the Chef run did not include any recipes
|
|
13
|
+
# expect(chef_run).not_to include_any_recipe
|
|
14
|
+
#
|
|
15
|
+
#
|
|
16
|
+
# @return [ChefSpec::Matchers::IncludeAnyRecipeMatcher]
|
|
17
|
+
#
|
|
18
|
+
def include_any_recipe
|
|
19
|
+
ChefSpec::Matchers::IncludeAnyRecipeMatcher.new
|
|
20
|
+
end
|
|
21
|
+
alias_method :include_any_recipes, :include_any_recipe
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -1,26 +1,28 @@
|
|
|
1
|
-
module ChefSpec
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
1
|
+
module ChefSpec
|
|
2
|
+
module API
|
|
3
|
+
module IncludeRecipe
|
|
4
|
+
#
|
|
5
|
+
# Assert that a Chef run includes a certain recipe. Given a Chef Recipe
|
|
6
|
+
# that calls +include_recipe+:
|
|
7
|
+
#
|
|
8
|
+
# include_recipe 'apache2::default'
|
|
9
|
+
#
|
|
10
|
+
# The Examples section demonstrates the different ways to test an
|
|
11
|
+
# +include_recipe+ directive with ChefSpec.
|
|
12
|
+
#
|
|
13
|
+
# @example Assert the +apache2::default+ recipe is included in the Chef run
|
|
14
|
+
# expect(chef_run).to include_recipe('apache2::default')
|
|
15
|
+
#
|
|
16
|
+
#
|
|
17
|
+
# @param [String] recipe_name
|
|
18
|
+
# the name of the recipe to be included
|
|
19
|
+
#
|
|
20
|
+
# @return [ChefSpec::Matchers::IncludeRecipeMatcher]
|
|
21
|
+
#
|
|
22
|
+
def include_recipe(recipe_name)
|
|
23
|
+
ChefSpec::Matchers::IncludeRecipeMatcher.new(recipe_name)
|
|
24
|
+
end
|
|
25
|
+
|
|
24
26
|
end
|
|
25
27
|
end
|
|
26
28
|
end
|