chefspec 4.0.2 → 4.1.0
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/.travis.yml +2 -1
- data/CHANGELOG.md +19 -0
- data/README.md +84 -87
- data/chefspec.gemspec +1 -1
- data/examples/apt_package/spec/install_spec.rb +1 -1
- data/examples/apt_package/spec/purge_spec.rb +1 -1
- data/examples/apt_package/spec/reconfig_spec.rb +1 -1
- data/examples/apt_package/spec/remove_spec.rb +1 -1
- data/examples/apt_package/spec/upgrade_spec.rb +1 -1
- data/examples/attributes/spec/default_spec.rb +1 -1
- data/examples/batch/spec/run_spec.rb +1 -1
- data/examples/cached/spec/default_spec.rb +1 -1
- data/examples/chef_gem/spec/install_spec.rb +1 -1
- data/examples/chef_gem/spec/purge_spec.rb +1 -1
- data/examples/chef_gem/spec/reconfig_spec.rb +1 -1
- data/examples/chef_gem/spec/remove_spec.rb +1 -1
- data/examples/chef_gem/spec/upgrade_spec.rb +1 -1
- data/examples/compile_time/spec/default_spec.rb +1 -1
- data/examples/cookbook_file/spec/create_if_missing_spec.rb +1 -1
- data/examples/cookbook_file/spec/create_spec.rb +1 -1
- data/examples/cookbook_file/spec/delete_spec.rb +1 -1
- data/examples/cookbook_file/spec/touch_spec.rb +1 -1
- data/examples/cron/spec/create_spec.rb +1 -1
- data/examples/cron/spec/delete_spec.rb +1 -1
- data/examples/custom_matcher/libraries/matcher.rb +1 -1
- data/examples/custom_matcher/spec/install_spec.rb +1 -1
- data/examples/custom_matcher/spec/remove_spec.rb +1 -1
- data/examples/deploy/spec/deploy_spec.rb +1 -1
- data/examples/deploy/spec/force_deploy_spec.rb +1 -1
- data/examples/deploy/spec/rollback_spec.rb +1 -1
- data/examples/directory/spec/create_spec.rb +1 -1
- data/examples/directory/spec/delete_spec.rb +1 -1
- data/examples/do_nothing/spec/default_spec.rb +1 -1
- data/examples/dpkg_package/spec/install_spec.rb +1 -1
- data/examples/dpkg_package/spec/purge_spec.rb +1 -1
- data/examples/dpkg_package/spec/remove_spec.rb +1 -1
- data/examples/easy_install_package/spec/install_spec.rb +1 -1
- data/examples/easy_install_package/spec/purge_spec.rb +1 -1
- data/examples/easy_install_package/spec/remove_spec.rb +1 -1
- data/examples/easy_install_package/spec/upgrade_spec.rb +1 -1
- data/examples/env/spec/create_spec.rb +1 -1
- data/examples/env/spec/delete_spec.rb +1 -1
- data/examples/env/spec/modify_spec.rb +1 -1
- data/examples/erl_call/spec/run_spec.rb +1 -1
- data/examples/execute/spec/run_spec.rb +1 -1
- data/examples/expect_exception/spec/compile_error_spec.rb +1 -1
- data/examples/expect_exception/spec/converge_error_spec.rb +1 -1
- data/examples/expect_exception/spec/no_error_spec.rb +1 -1
- data/examples/file/spec/create_if_missing_spec.rb +1 -1
- data/examples/file/spec/create_spec.rb +1 -1
- data/examples/file/spec/delete_spec.rb +1 -1
- data/examples/file/spec/touch_spec.rb +1 -1
- data/examples/freebsd_package/spec/install_spec.rb +1 -1
- data/examples/freebsd_package/spec/remove_spec.rb +1 -1
- data/examples/gem_package/spec/install_spec.rb +1 -1
- data/examples/gem_package/spec/purge_spec.rb +1 -1
- data/examples/gem_package/spec/reconfig_spec.rb +1 -1
- data/examples/gem_package/spec/remove_spec.rb +1 -1
- data/examples/gem_package/spec/upgrade_spec.rb +1 -1
- data/examples/git/spec/checkout_spec.rb +1 -1
- data/examples/git/spec/export_spec.rb +1 -1
- data/examples/git/spec/sync_spec.rb +1 -1
- data/examples/group/spec/create_spec.rb +1 -1
- data/examples/group/spec/manage_spec.rb +1 -1
- data/examples/group/spec/modify_spec.rb +1 -1
- data/examples/group/spec/remove_spec.rb +1 -1
- data/examples/guards/spec/default_spec.rb +1 -1
- data/examples/heavy_provider_light_resource/spec/provider_service_spec.rb +1 -1
- data/examples/http_request/spec/delete_spec.rb +1 -1
- data/examples/http_request/spec/get_spec.rb +1 -1
- data/examples/http_request/spec/head_spec.rb +1 -1
- data/examples/http_request/spec/options_spec.rb +1 -1
- data/examples/http_request/spec/post_spec.rb +1 -1
- data/examples/http_request/spec/put_spec.rb +1 -1
- data/examples/ifconfig/spec/add_spec.rb +1 -1
- data/examples/ifconfig/spec/delete_spec.rb +1 -1
- data/examples/ifconfig/spec/disable_spec.rb +1 -1
- data/examples/ifconfig/spec/enable_spec.rb +1 -1
- data/examples/include_recipe/spec/default_spec.rb +1 -1
- data/examples/inherits/spec/default_spec.rb +1 -1
- data/examples/ips_package/spec/install_spec.rb +1 -1
- data/examples/ips_package/spec/remove_spec.rb +1 -1
- data/examples/ips_package/spec/upgrade_spec.rb +1 -1
- data/examples/link/spec/create_spec.rb +1 -1
- data/examples/link/spec/delete_spec.rb +1 -1
- data/examples/link/spec/link_to_spec.rb +1 -1
- data/examples/log/spec/write_spec.rb +1 -1
- data/examples/macports_package/spec/install_spec.rb +1 -1
- data/examples/macports_package/spec/purge_spec.rb +1 -1
- data/examples/macports_package/spec/remove_spec.rb +1 -1
- data/examples/macports_package/spec/upgrade_spec.rb +1 -1
- data/examples/mdadm/spec/assemble_spec.rb +1 -1
- data/examples/mdadm/spec/create_spec.rb +1 -1
- data/examples/mdadm/spec/stop_spec.rb +1 -1
- data/examples/mount/spec/disable_spec.rb +1 -1
- data/examples/mount/spec/enable_spec.rb +1 -1
- data/examples/mount/spec/mount_spec.rb +1 -1
- data/examples/mount/spec/remount_spec.rb +1 -1
- data/examples/mount/spec/umount_spec.rb +1 -1
- data/examples/multiple_actions/spec/default_spec.rb +1 -1
- data/examples/multiple_actions/spec/sequential_spec.rb +4 -1
- data/examples/multiple_run_action/spec/default_spec.rb +1 -1
- data/examples/notifications/spec/chained_spec.rb +1 -1
- data/examples/notifications/spec/default_spec.rb +1 -1
- data/examples/notifications/spec/delayed_spec.rb +1 -1
- data/examples/notifications/spec/immediately_spec.rb +1 -1
- data/examples/ohai/spec/reload_spec.rb +1 -1
- data/examples/package/spec/install_spec.rb +1 -1
- data/examples/package/spec/purge_spec.rb +1 -1
- data/examples/package/spec/reconfig_spec.rb +1 -1
- data/examples/package/spec/remove_spec.rb +1 -1
- data/examples/package/spec/upgrade_spec.rb +1 -1
- data/examples/pacman_package/spec/install_spec.rb +1 -1
- data/examples/pacman_package/spec/purge_spec.rb +1 -1
- data/examples/pacman_package/spec/remove_spec.rb +1 -1
- data/examples/pacman_package/spec/upgrade_spec.rb +1 -1
- data/examples/portage_package/spec/install_spec.rb +1 -1
- data/examples/portage_package/spec/purge_spec.rb +1 -1
- data/examples/portage_package/spec/remove_spec.rb +1 -1
- data/examples/portage_package/spec/upgrade_spec.rb +1 -1
- data/examples/powershell_script/spec/run_spec.rb +1 -1
- data/examples/registry_key/spec/create_if_missing_spec.rb +1 -1
- data/examples/registry_key/spec/create_spec.rb +1 -1
- data/examples/registry_key/spec/delete_key_spec.rb +1 -1
- data/examples/registry_key/spec/delete_spec.rb +1 -1
- data/examples/remote_directory/spec/create_if_missing_spec.rb +1 -1
- data/examples/remote_directory/spec/create_spec.rb +1 -1
- data/examples/remote_directory/spec/delete_spec.rb +1 -1
- data/examples/remote_file/spec/create_if_missing_spec.rb +1 -1
- data/examples/remote_file/spec/create_spec.rb +1 -1
- data/examples/remote_file/spec/delete_spec.rb +1 -1
- data/examples/remote_file/spec/touch_spec.rb +1 -1
- data/examples/render_file/spec/default_spec.rb +1 -1
- data/examples/render_file/spec/template_helpers_spec.rb +1 -1
- data/examples/roles/spec/default_spec.rb +1 -1
- data/examples/route/spec/add_spec.rb +1 -1
- data/examples/route/spec/delete_spec.rb +1 -1
- data/examples/rpm_package/spec/install_spec.rb +1 -1
- data/examples/rpm_package/spec/remove_spec.rb +1 -1
- data/examples/rpm_package/spec/upgrade_spec.rb +1 -1
- data/examples/ruby_block/spec/run_spec.rb +1 -1
- data/examples/script/spec/run_bash_spec.rb +1 -1
- data/examples/script/spec/run_csh_spec.rb +1 -1
- data/examples/script/spec/run_perl_spec.rb +1 -1
- data/examples/script/spec/run_python_spec.rb +1 -1
- data/examples/script/spec/run_ruby_spec.rb +1 -1
- data/examples/script/spec/run_script_spec.rb +1 -1
- data/examples/server/spec/client_spec.rb +5 -4
- data/examples/server/spec/data_bag_spec.rb +10 -9
- data/examples/server/spec/environment_spec.rb +5 -4
- data/examples/server/spec/node_spec.rb +20 -14
- data/examples/server/spec/render_with_cached_spec.rb +1 -2
- data/examples/server/spec/role_spec.rb +5 -4
- data/examples/server/spec/search_spec.rb +7 -8
- data/examples/service/spec/disable_spec.rb +1 -1
- data/examples/service/spec/enable_spec.rb +1 -1
- data/examples/service/spec/reload_spec.rb +1 -1
- data/examples/service/spec/restart_spec.rb +1 -1
- data/examples/service/spec/start_spec.rb +1 -1
- data/examples/service/spec/stop_spec.rb +1 -1
- data/examples/smartos_package/spec/install_spec.rb +1 -1
- data/examples/smartos_package/spec/remove_spec.rb +1 -1
- data/examples/smartos_package/spec/upgrade_spec.rb +1 -1
- data/examples/solaris_package/spec/install_spec.rb +1 -1
- data/examples/solaris_package/spec/remove_spec.rb +1 -1
- data/examples/state_attrs/spec/default_spec.rb +2 -2
- data/examples/step_into/spec/default_spec.rb +5 -2
- data/examples/stub_command/spec/default_spec.rb +1 -1
- data/examples/stub_data_bag/spec/default_spec.rb +1 -1
- data/examples/stub_data_bag_item/spec/default_spec.rb +1 -1
- data/examples/stub_search/spec/default_spec.rb +1 -1
- data/examples/subscribes/spec/chained_spec.rb +1 -1
- data/examples/subscribes/spec/default_spec.rb +1 -1
- data/examples/subscribes/spec/delayed_spec.rb +1 -1
- data/examples/subscribes/spec/immediately_spec.rb +1 -1
- data/examples/subversion/spec/checkout_spec.rb +1 -1
- data/examples/subversion/spec/export_spec.rb +1 -1
- data/examples/subversion/spec/force_export_spec.rb +1 -1
- data/examples/subversion/spec/sync_spec.rb +1 -1
- data/examples/template/spec/create_if_missing_spec.rb +1 -1
- data/examples/template/spec/create_spec.rb +1 -1
- data/examples/template/spec/delete_spec.rb +1 -1
- data/examples/template/spec/touch_spec.rb +1 -1
- data/examples/use_inline_resources/spec/default_spec.rb +4 -1
- data/examples/user/spec/create_spec.rb +1 -1
- data/examples/user/spec/lock_spec.rb +1 -1
- data/examples/user/spec/manage_spec.rb +1 -1
- data/examples/user/spec/modify_spec.rb +1 -1
- data/examples/user/spec/remove_spec.rb +1 -1
- data/examples/user/spec/unlock_spec.rb +1 -1
- data/examples/yum_package/spec/install_spec.rb +1 -1
- data/examples/yum_package/spec/purge_spec.rb +1 -1
- data/examples/yum_package/spec/remove_spec.rb +1 -1
- data/examples/yum_package/spec/upgrade_spec.rb +1 -1
- data/features/batch.feature +0 -3
- data/features/powershell_script.feature +0 -3
- data/features/render_file.feature +1 -6
- data/features/server.feature +0 -3
- data/features/smartos_package.feature +0 -4
- data/features/solaris_package.feature +0 -4
- data/features/state_attrs.feature +0 -4
- data/features/support/env.rb +0 -7
- data/gemfiles/{chef-11.12.0.gemfile → chef-11.16.0.gemfile} +1 -1
- data/gemfiles/chef-12.0.0.alpha.gemfile +5 -0
- data/lib/chefspec.rb +46 -14
- data/lib/chefspec/api.rb +0 -2
- data/lib/chefspec/api/apt_package.rb +1 -1
- data/lib/chefspec/api/batch.rb +1 -1
- data/lib/chefspec/api/chef_gem.rb +1 -1
- data/lib/chefspec/api/cookbook_file.rb +1 -1
- data/lib/chefspec/api/cron.rb +1 -1
- data/lib/chefspec/api/deploy.rb +1 -1
- data/lib/chefspec/api/directory.rb +1 -1
- data/lib/chefspec/api/dpkg_package.rb +1 -1
- data/lib/chefspec/api/easy_install_package.rb +1 -1
- data/lib/chefspec/api/env.rb +1 -1
- data/lib/chefspec/api/erl_call.rb +1 -1
- data/lib/chefspec/api/execute.rb +1 -1
- data/lib/chefspec/api/file.rb +1 -1
- data/lib/chefspec/api/freebsd_package.rb +1 -1
- data/lib/chefspec/api/gem_package.rb +1 -1
- data/lib/chefspec/api/git.rb +1 -1
- data/lib/chefspec/api/group.rb +1 -1
- data/lib/chefspec/api/http_request.rb +1 -1
- data/lib/chefspec/api/ifconfig.rb +1 -1
- data/lib/chefspec/api/ips_package.rb +1 -1
- data/lib/chefspec/api/link.rb +1 -1
- data/lib/chefspec/api/log.rb +1 -1
- data/lib/chefspec/api/macports_package.rb +1 -1
- data/lib/chefspec/api/mdadm.rb +1 -1
- data/lib/chefspec/api/mount.rb +1 -1
- data/lib/chefspec/api/ohai.rb +2 -2
- data/lib/chefspec/api/package.rb +1 -1
- data/lib/chefspec/api/pacman_package.rb +1 -1
- data/lib/chefspec/api/portage_package.rb +1 -1
- data/lib/chefspec/api/powershell_script.rb +1 -1
- data/lib/chefspec/api/registry_key.rb +1 -1
- data/lib/chefspec/api/remote_directory.rb +4 -4
- data/lib/chefspec/api/remote_file.rb +1 -1
- data/lib/chefspec/api/route.rb +1 -1
- data/lib/chefspec/api/rpm_package.rb +1 -1
- data/lib/chefspec/api/ruby_block.rb +1 -1
- data/lib/chefspec/api/script.rb +6 -6
- data/lib/chefspec/api/service.rb +1 -1
- data/lib/chefspec/api/smartos_package.rb +1 -1
- data/lib/chefspec/api/solaris_package.rb +1 -1
- data/lib/chefspec/api/subversion.rb +1 -1
- data/lib/chefspec/api/template.rb +1 -1
- data/lib/chefspec/api/user.rb +1 -1
- data/lib/chefspec/api/yum_package.rb +1 -1
- data/lib/chefspec/coverage/filters.rb +3 -0
- data/lib/chefspec/deprecations.rb +19 -123
- data/lib/chefspec/macros.rb +2 -2
- data/lib/chefspec/matchers/render_file_matcher.rb +2 -2
- data/lib/chefspec/matchers/resource_matcher.rb +1 -1
- data/lib/chefspec/matchers/state_attrs_matcher.rb +1 -1
- data/lib/chefspec/server.rb +4 -361
- data/lib/chefspec/server_methods.rb +175 -0
- data/lib/chefspec/server_runner.rb +86 -0
- data/lib/chefspec/{runner.rb → solo_runner.rb} +92 -43
- data/lib/chefspec/version.rb +1 -1
- data/spec/unit/{runner_spec.rb → solo_runner_spec.rb} +31 -25
- metadata +13 -10
@@ -1,9 +1,9 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
|
-
ChefSpec
|
3
|
+
ChefSpec.define_matcher(:state_attrs_lwrp)
|
4
4
|
|
5
5
|
describe 'state_attrs::default' do
|
6
|
-
let(:chef_run) { ChefSpec::
|
6
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
7
7
|
let(:lwrp) { chef_run.state_attrs_lwrp('name') }
|
8
8
|
|
9
9
|
it 'has the correct state attributes' do
|
@@ -2,7 +2,7 @@ require 'chefspec'
|
|
2
2
|
|
3
3
|
describe 'step_into::default' do
|
4
4
|
context 'without :step_into' do
|
5
|
-
let(:chef_run) { ChefSpec::
|
5
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
6
6
|
|
7
7
|
it 'does not execute the LWRPs action' do
|
8
8
|
expect(chef_run).to_not write_log('message')
|
@@ -10,7 +10,10 @@ describe 'step_into::default' do
|
|
10
10
|
end
|
11
11
|
|
12
12
|
context 'with :step_into' do
|
13
|
-
let(:chef_run)
|
13
|
+
let(:chef_run) do
|
14
|
+
ChefSpec::SoloRunner.new(step_into: ['step_into_lwrp'])
|
15
|
+
.converge(described_recipe)
|
16
|
+
end
|
14
17
|
|
15
18
|
it 'does execute the LWRPs action' do
|
16
19
|
expect(chef_run).to write_log('message')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'stub_command::default' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
context 'when the command is not stubbed' do
|
7
7
|
it 'raises an exception' do
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'stub_data_bag::default' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
context 'when the data_bag is not stubbed' do
|
7
7
|
it 'raises an exception' do
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'stub_data_bag_item::default' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
context 'when the data_bag_item is not stubbed' do
|
7
7
|
it 'raises an exception' do
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'stub_search::default' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
context 'when the search is not stubbed' do
|
7
7
|
it 'raises an exception' do
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'subscribes::chained' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
let(:service) { chef_run.service('service') }
|
6
6
|
let(:log) { chef_run.log('log') }
|
7
7
|
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'subscribes::default' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
let(:service) { chef_run.service('receiving_resource') }
|
6
6
|
|
7
7
|
it 'subscribes to the template creation' do
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'subscribes::delayed' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
let(:service) { chef_run.service('receiving_resource') }
|
6
6
|
|
7
7
|
it 'subscribes to the template creation' do
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'subscribes::immediately' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
let(:service) { chef_run.service('receiving_resource') }
|
6
6
|
|
7
7
|
it 'sends a notification to the service' do
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'subversion::checkout' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'checkouts a subversion with an explicit action' do
|
7
7
|
expect(chef_run).to checkout_subversion('/tmp/explicit_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'subversion::export' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'exports a subversion with an explicit action' do
|
7
7
|
expect(chef_run).to export_subversion('/tmp/explicit_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'subversion::force_export' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'force_exports a subversion with an explicit action' do
|
7
7
|
expect(chef_run).to force_export_subversion('/tmp/explicit_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'subversion::sync' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'syncs a subversion with the default action' do
|
7
7
|
expect(chef_run).to sync_subversion('/tmp/default_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'template::create_if_missing' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'creates a template with an explicit action' do
|
7
7
|
expect(chef_run).to create_template_if_missing('/tmp/explicit_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'template::create' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'creates a template with the default action' do
|
7
7
|
expect(chef_run).to create_template('/tmp/default_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'template::delete' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'deletes a template with an explicit action' do
|
7
7
|
expect(chef_run).to delete_template('/tmp/explicit_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'template::touch' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'touches a template with an explicit action' do
|
7
7
|
expect(chef_run).to touch_template('/tmp/explicit_action')
|
@@ -1,7 +1,10 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'use_inline_resources::default' do
|
4
|
-
let(:chef_run)
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::SoloRunner.new(step_into: ['use_inline_resources_lwrp'])
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
5
8
|
|
6
9
|
it 'uses the LWRP' do
|
7
10
|
expect(chef_run).to run_use_inline_resources_lwrp('resource')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'user::create' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'creates a user with the default action' do
|
7
7
|
expect(chef_run).to create_user('default_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'user::lock' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'locks a user with an explicit action' do
|
7
7
|
expect(chef_run).to lock_user('explicit_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'user::manage' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'manages a user with an explicit action' do
|
7
7
|
expect(chef_run).to manage_user('explicit_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'user::modify' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'modifys a user with an explicit action' do
|
7
7
|
expect(chef_run).to modify_user('explicit_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'user::remove' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'removes a user with an explicit action' do
|
7
7
|
expect(chef_run).to remove_user('explicit_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'user::unlock' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'unlocks a user with an explicit action' do
|
7
7
|
expect(chef_run).to unlock_user('explicit_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'yum_package::install' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'installs a yum_package with the default action' do
|
7
7
|
expect(chef_run).to install_yum_package('default_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'yum_package::purge' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'purges a yum_package with an explicit action' do
|
7
7
|
expect(chef_run).to purge_yum_package('explicit_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'yum_package::remove' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'removes a yum_package with an explicit action' do
|
7
7
|
expect(chef_run).to remove_yum_package('explicit_action')
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'yum_package::upgrade' do
|
4
|
-
let(:chef_run) { ChefSpec::
|
4
|
+
let(:chef_run) { ChefSpec::SoloRunner.converge(described_recipe) }
|
5
5
|
|
6
6
|
it 'upgrades a yum_package with an explicit action' do
|
7
7
|
expect(chef_run).to upgrade_yum_package('explicit_action')
|
data/features/batch.feature
CHANGED
@@ -5,12 +5,7 @@ Feature: The render_file matcher
|
|
5
5
|
Scenario Outline: Running specs
|
6
6
|
* I successfully run `rspec spec/<Matcher>_spec.rb`
|
7
7
|
* the output should contain "0 failures"
|
8
|
-
Examples:
|
9
|
-
| Matcher |
|
10
|
-
| default |
|
11
|
-
@not_chef_11_0_0
|
12
|
-
@not_chef_11_2_0
|
13
|
-
@not_chef_11_4_4
|
14
8
|
Examples:
|
15
9
|
| Matcher |
|
10
|
+
| default |
|
16
11
|
| template_helpers |
|
data/features/server.feature
CHANGED
data/features/support/env.rb
CHANGED
data/lib/chefspec.rb
CHANGED
@@ -1,5 +1,47 @@
|
|
1
1
|
require 'rspec'
|
2
2
|
|
3
|
+
module ChefSpec
|
4
|
+
#
|
5
|
+
# Defines a new runner method on the Chef runner.
|
6
|
+
#
|
7
|
+
# @param [Symbol] resource_name
|
8
|
+
# the name of the resource to define a method
|
9
|
+
#
|
10
|
+
# @return [self]
|
11
|
+
#
|
12
|
+
def define_matcher(resource_name)
|
13
|
+
matchers[resource_name.to_sym] = Proc.new do |identity|
|
14
|
+
find_resource(resource_name, identity)
|
15
|
+
end
|
16
|
+
|
17
|
+
self
|
18
|
+
end
|
19
|
+
module_function :define_matcher
|
20
|
+
|
21
|
+
#
|
22
|
+
# The source root of the ChefSpec gem. This is useful when requiring files
|
23
|
+
# that are relative to the root of the project.
|
24
|
+
#
|
25
|
+
# @return [Pathname]
|
26
|
+
#
|
27
|
+
def root
|
28
|
+
@root ||= Pathname.new(File.expand_path('../../', __FILE__))
|
29
|
+
end
|
30
|
+
module_function :root
|
31
|
+
|
32
|
+
protected
|
33
|
+
|
34
|
+
#
|
35
|
+
# The list of custom defined matchers.
|
36
|
+
#
|
37
|
+
# @return [Hash<String, Proc>]
|
38
|
+
#
|
39
|
+
def matchers
|
40
|
+
@matchers ||= {}
|
41
|
+
end
|
42
|
+
module_function :matchers
|
43
|
+
end
|
44
|
+
|
3
45
|
require_relative 'chefspec/extensions/chef/client'
|
4
46
|
require_relative 'chefspec/extensions/chef/conditional'
|
5
47
|
require_relative 'chefspec/extensions/chef/data_query'
|
@@ -22,6 +64,7 @@ require_relative 'chefspec/stubs/search_registry'
|
|
22
64
|
require_relative 'chefspec/stubs/search_stub'
|
23
65
|
|
24
66
|
require_relative 'chefspec/api'
|
67
|
+
require_relative 'chefspec/cacher'
|
25
68
|
require_relative 'chefspec/coverage'
|
26
69
|
require_relative 'chefspec/errors'
|
27
70
|
require_relative 'chefspec/expect_exception'
|
@@ -30,20 +73,9 @@ require_relative 'chefspec/macros'
|
|
30
73
|
require_relative 'chefspec/matchers'
|
31
74
|
require_relative 'chefspec/renderer'
|
32
75
|
require_relative 'chefspec/rspec'
|
33
|
-
require_relative 'chefspec/
|
76
|
+
require_relative 'chefspec/server_runner'
|
77
|
+
require_relative 'chefspec/solo_runner'
|
34
78
|
require_relative 'chefspec/util'
|
35
79
|
require_relative 'chefspec/version'
|
36
80
|
|
37
|
-
|
38
|
-
extend self
|
39
|
-
|
40
|
-
#
|
41
|
-
# The source root of the ChefSpec gem. This is useful when requiring files
|
42
|
-
# that are relative to the root of the project.
|
43
|
-
#
|
44
|
-
# @return [Pathname]
|
45
|
-
#
|
46
|
-
def root
|
47
|
-
@root ||= Pathname.new(File.expand_path('../../', __FILE__))
|
48
|
-
end
|
49
|
-
end
|
81
|
+
require_relative 'chefspec/deprecations'
|