chefspec 5.0.0 → 5.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +425 -371
- data/examples/apt_package/recipes/purge.rb +2 -2
- data/examples/apt_package/recipes/reconfig.rb +2 -2
- data/examples/apt_package/recipes/remove.rb +2 -2
- data/examples/apt_package/recipes/upgrade.rb +2 -2
- data/examples/apt_package/spec/install_spec.rb +4 -1
- data/examples/apt_package/spec/purge_spec.rb +4 -1
- data/examples/apt_package/spec/reconfig_spec.rb +4 -1
- data/examples/apt_package/spec/remove_spec.rb +4 -1
- data/examples/apt_package/spec/upgrade_spec.rb +4 -1
- data/examples/apt_repository/spec/add_spec.rb +4 -1
- data/examples/apt_repository/spec/remove_spec.rb +4 -1
- data/examples/apt_update/recipes/periodic.rb +1 -1
- data/examples/apt_update/spec/periodic_spec.rb +5 -2
- data/examples/apt_update/spec/update_spec.rb +4 -1
- data/examples/attributes/spec/default_spec.rb +1 -1
- data/examples/batch/spec/run_spec.rb +4 -6
- 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/chocolatey_package/spec/install_spec.rb +4 -6
- data/examples/chocolatey_package/spec/remove_spec.rb +4 -6
- data/examples/chocolatey_package/spec/upgrade_spec.rb +4 -6
- data/examples/compile_time/spec/default_spec.rb +1 -1
- data/examples/cookbook_file/spec/create_if_missing_spec.rb +3 -3
- data/examples/cookbook_file/spec/create_spec.rb +3 -3
- 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/providers/thing.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 +4 -4
- data/examples/directory/spec/delete_spec.rb +3 -3
- data/examples/do_nothing/spec/default_spec.rb +1 -1
- data/examples/dpkg_package/spec/install_spec.rb +4 -6
- data/examples/dpkg_package/spec/purge_spec.rb +4 -6
- data/examples/dpkg_package/spec/remove_spec.rb +4 -6
- data/examples/dsc_resource/recipes/{default.rb → run.rb} +6 -6
- data/examples/dsc_resource/spec/{default_spec.rb → run_spec.rb} +5 -7
- data/examples/dsc_script/recipes/run.rb +12 -0
- data/examples/dsc_script/spec/run_spec.rb +16 -0
- 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 +4 -6
- data/examples/env/spec/delete_spec.rb +4 -6
- data/examples/env/spec/modify_spec.rb +4 -6
- 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 +3 -3
- data/examples/file/spec/create_spec.rb +3 -3
- 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 +4 -1
- data/examples/freebsd_package/spec/remove_spec.rb +4 -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/libraries/resource_service.rb +1 -1
- data/examples/heavy_provider_light_resource/recipes/default.rb +1 -2
- data/examples/heavy_provider_light_resource/spec/provider_service_spec.rb +2 -2
- 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/ips_package/spec/install_spec.rb +4 -6
- data/examples/ips_package/spec/remove_spec.rb +4 -6
- data/examples/ips_package/spec/upgrade_spec.rb +4 -6
- 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 +2 -2
- data/examples/multiple_run_action/recipes/default.rb +2 -2
- data/examples/multiple_run_action/spec/default_spec.rb +1 -1
- data/examples/notifications/spec/before_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/recipes/install.rb +1 -1
- data/examples/package/recipes/purge.rb +1 -1
- data/examples/package/recipes/reconfig.rb +1 -1
- data/examples/package/recipes/remove.rb +1 -1
- data/examples/package/recipes/upgrade.rb +1 -1
- data/examples/package/spec/install_spec.rb +2 -2
- data/examples/package/spec/purge_spec.rb +2 -2
- data/examples/package/spec/reconfig_spec.rb +2 -2
- data/examples/package/spec/remove_spec.rb +2 -2
- data/examples/package/spec/upgrade_spec.rb +2 -2
- data/examples/pacman_package/spec/install_spec.rb +4 -6
- data/examples/pacman_package/spec/purge_spec.rb +4 -6
- data/examples/pacman_package/spec/remove_spec.rb +4 -6
- data/examples/pacman_package/spec/upgrade_spec.rb +4 -6
- data/examples/portage_package/spec/install_spec.rb +4 -1
- data/examples/portage_package/spec/purge_spec.rb +4 -1
- data/examples/portage_package/spec/remove_spec.rb +4 -1
- data/examples/portage_package/spec/upgrade_spec.rb +4 -1
- data/examples/powershell_script/spec/run_spec.rb +4 -6
- data/examples/reboot/spec/cancel_spec.rb +1 -2
- data/examples/reboot/spec/now_spec.rb +1 -2
- data/examples/reboot/spec/request_spec.rb +1 -2
- data/examples/registry_key/spec/create_if_missing_spec.rb +4 -1
- data/examples/registry_key/spec/create_spec.rb +4 -1
- data/examples/registry_key/spec/delete_key_spec.rb +4 -1
- data/examples/registry_key/spec/delete_spec.rb +4 -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/roles/role.rb +3 -3
- 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 +4 -6
- data/examples/rpm_package/spec/remove_spec.rb +4 -6
- data/examples/rpm_package/spec/upgrade_spec.rb +4 -6
- 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 +2 -2
- data/examples/server/spec/environment_spec.rb +1 -1
- data/examples/server/spec/node_spec.rb +4 -4
- data/examples/server/spec/role_spec.rb +1 -1
- data/examples/service/recipes/disable.rb +1 -1
- data/examples/service/recipes/enable.rb +1 -1
- data/examples/service/recipes/reload.rb +1 -1
- data/examples/service/recipes/restart.rb +1 -1
- data/examples/service/recipes/start.rb +1 -1
- data/examples/service/recipes/stop.rb +1 -1
- 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 +4 -1
- data/examples/smartos_package/spec/remove_spec.rb +4 -1
- data/examples/smartos_package/spec/upgrade_spec.rb +4 -1
- data/examples/solaris_package/spec/install_spec.rb +4 -1
- data/examples/solaris_package/spec/remove_spec.rb +4 -1
- data/examples/state_attrs/providers/lwrp.rb +0 -1
- data/examples/state_attrs/spec/default_spec.rb +1 -1
- data/examples/step_into/spec/default_spec.rb +4 -4
- data/examples/stub_command/spec/default_spec.rb +3 -3
- data/examples/stub_data_bag/spec/default_spec.rb +2 -2
- data/examples/stub_data_bag_item/spec/default_spec.rb +4 -4
- data/examples/stub_search/spec/default_spec.rb +4 -4
- data/examples/subscribes/spec/before_spec.rb +1 -1
- data/examples/subscribes/spec/chained_spec.rb +1 -1
- data/examples/subscribes/spec/default_spec.rb +1 -2
- 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 +3 -3
- data/examples/template/spec/create_spec.rb +3 -3
- 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 +3 -3
- data/examples/user/spec/create_spec.rb +4 -1
- data/examples/user/spec/lock_spec.rb +4 -1
- data/examples/user/spec/manage_spec.rb +4 -1
- data/examples/user/spec/modify_spec.rb +4 -1
- data/examples/user/spec/remove_spec.rb +4 -1
- data/examples/user/spec/unlock_spec.rb +4 -1
- data/examples/windows_package/spec/install_spec.rb +4 -6
- data/examples/windows_package/spec/remove_spec.rb +4 -6
- data/examples/windows_service/spec/configure_startup_spec.rb +4 -6
- data/examples/windows_service/spec/disable_spec.rb +4 -6
- data/examples/windows_service/spec/enable_spec.rb +4 -6
- data/examples/windows_service/spec/reload_spec.rb +4 -6
- data/examples/windows_service/spec/restart_spec.rb +4 -6
- data/examples/windows_service/spec/start_spec.rb +4 -6
- data/examples/windows_service/spec/stop_spec.rb +4 -6
- data/examples/yum_package/spec/install_spec.rb +4 -1
- data/examples/yum_package/spec/purge_spec.rb +4 -1
- data/examples/yum_package/spec/remove_spec.rb +4 -1
- data/examples/yum_package/spec/upgrade_spec.rb +4 -1
- data/examples/yum_repository/recipes/create.rb +8 -0
- data/examples/yum_repository/recipes/make_cache.rb +3 -0
- data/examples/yum_repository/recipes/remove.rb +3 -0
- data/examples/yum_repository/spec/create_spec.rb +17 -0
- data/examples/yum_repository/spec/make_cache_spec.rb +12 -0
- data/examples/yum_repository/spec/remove_spec.rb +12 -0
- data/features/apt_repository.feature +21 -0
- data/features/apt_update.feature +19 -0
- data/features/dsc_resource.feature +5 -2
- data/features/dsc_script.feature +10 -0
- data/features/yum_repository.feature +27 -0
- data/lib/chefspec/api.rb +4 -0
- data/lib/chefspec/api/dsc_script.rb +37 -0
- data/lib/chefspec/api/yum_repository.rb +80 -0
- data/lib/chefspec/version.rb +1 -1
- metadata +23 -5
@@ -1,12 +1,10 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
|
-
RSpec.configure do |config|
|
4
|
-
config.platform = 'windows'
|
5
|
-
config.version = '2012R2'
|
6
|
-
end
|
7
|
-
|
8
3
|
describe 'windows_package::remove' do
|
9
|
-
let(:chef_run)
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'windows', version: '2012R2')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
10
8
|
|
11
9
|
it 'removes a windows_package with an explicit action' do
|
12
10
|
expect(chef_run).to remove_windows_package('explicit_action')
|
@@ -1,12 +1,10 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
|
-
RSpec.configure do |config|
|
4
|
-
config.platform = 'windows'
|
5
|
-
config.version = '2012R2'
|
6
|
-
end
|
7
|
-
|
8
3
|
describe 'windows_service::configure_startup' do
|
9
|
-
let(:chef_run)
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'windows', version: '2012R2')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
10
8
|
|
11
9
|
it 'configures startup for a windows_service with an explicit action' do
|
12
10
|
expect(chef_run).to configure_startup_windows_service('explicit_action')
|
@@ -1,12 +1,10 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
|
-
RSpec.configure do |config|
|
4
|
-
config.platform = 'windows'
|
5
|
-
config.version = '2012R2'
|
6
|
-
end
|
7
|
-
|
8
3
|
describe 'windows_service::disable' do
|
9
|
-
let(:chef_run)
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'windows', version: '2012R2')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
10
8
|
|
11
9
|
it 'disables a windows_service with an explicit action' do
|
12
10
|
expect(chef_run).to disable_windows_service('explicit_action')
|
@@ -1,12 +1,10 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
|
-
RSpec.configure do |config|
|
4
|
-
config.platform = 'windows'
|
5
|
-
config.version = '2012R2'
|
6
|
-
end
|
7
|
-
|
8
3
|
describe 'windows_service::enable' do
|
9
|
-
let(:chef_run)
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'windows', version: '2012R2')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
10
8
|
|
11
9
|
it 'enables a windows_service with an explicit action' do
|
12
10
|
expect(chef_run).to enable_windows_service('explicit_action')
|
@@ -1,12 +1,10 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
|
-
RSpec.configure do |config|
|
4
|
-
config.platform = 'windows'
|
5
|
-
config.version = '2012R2'
|
6
|
-
end
|
7
|
-
|
8
3
|
describe 'windows_service::reload' do
|
9
|
-
let(:chef_run)
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'windows', version: '2012R2')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
10
8
|
|
11
9
|
it 'reloads a windows_service with an explicit action' do
|
12
10
|
expect(chef_run).to reload_windows_service('explicit_action')
|
@@ -1,12 +1,10 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
|
-
RSpec.configure do |config|
|
4
|
-
config.platform = 'windows'
|
5
|
-
config.version = '2012R2'
|
6
|
-
end
|
7
|
-
|
8
3
|
describe 'windows_service::restart' do
|
9
|
-
let(:chef_run)
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'windows', version: '2012R2')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
10
8
|
|
11
9
|
it 'restarts a windows_service with an explicit action' do
|
12
10
|
expect(chef_run).to restart_windows_service('explicit_action')
|
@@ -1,12 +1,10 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
|
-
RSpec.configure do |config|
|
4
|
-
config.platform = 'windows'
|
5
|
-
config.version = '2012R2'
|
6
|
-
end
|
7
|
-
|
8
3
|
describe 'windows_service::start' do
|
9
|
-
let(:chef_run)
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'windows', version: '2012R2')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
10
8
|
|
11
9
|
it 'starts a windows_service with an explicit action' do
|
12
10
|
expect(chef_run).to start_windows_service('explicit_action')
|
@@ -1,12 +1,10 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
|
-
RSpec.configure do |config|
|
4
|
-
config.platform = 'windows'
|
5
|
-
config.version = '2012R2'
|
6
|
-
end
|
7
|
-
|
8
3
|
describe 'windows_service::stop' do
|
9
|
-
let(:chef_run)
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'windows', version: '2012R2')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
10
8
|
|
11
9
|
it 'stops a windows_service with an explicit action' do
|
12
10
|
expect(chef_run).to stop_windows_service('explicit_action')
|
@@ -1,7 +1,10 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'yum_package::install' do
|
4
|
-
let(:chef_run)
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'centos', version: '7.2.1511')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
5
8
|
|
6
9
|
it 'installs a yum_package with the default action' do
|
7
10
|
expect(chef_run).to install_yum_package('default_action')
|
@@ -1,7 +1,10 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'yum_package::purge' do
|
4
|
-
let(:chef_run)
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'centos', version: '7.2.1511')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
5
8
|
|
6
9
|
it 'purges a yum_package with an explicit action' do
|
7
10
|
expect(chef_run).to purge_yum_package('explicit_action')
|
@@ -1,7 +1,10 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'yum_package::remove' do
|
4
|
-
let(:chef_run)
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'centos', version: '7.2.1511')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
5
8
|
|
6
9
|
it 'removes a yum_package with an explicit action' do
|
7
10
|
expect(chef_run).to remove_yum_package('explicit_action')
|
@@ -1,7 +1,10 @@
|
|
1
1
|
require 'chefspec'
|
2
2
|
|
3
3
|
describe 'yum_package::upgrade' do
|
4
|
-
let(:chef_run)
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'centos', version: '7.2.1511')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
5
8
|
|
6
9
|
it 'upgrades a yum_package with an explicit action' do
|
7
10
|
expect(chef_run).to upgrade_yum_package('explicit_action')
|
@@ -0,0 +1,17 @@
|
|
1
|
+
require 'chefspec'
|
2
|
+
|
3
|
+
describe 'yum_repository::create' do
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'centos', version: '7.2.1511')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
8
|
+
|
9
|
+
it 'create a yum_repository with default action' do
|
10
|
+
expect(chef_run).to create_yum_repository('default_action')
|
11
|
+
expect(chef_run).to_not create_yum_repository('not_default_action')
|
12
|
+
end
|
13
|
+
|
14
|
+
it 'creates a yum_repository with an explicit action' do
|
15
|
+
expect(chef_run).to create_yum_repository('explicit_action')
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'chefspec'
|
2
|
+
|
3
|
+
describe 'yum_repository::make_cache' do
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'centos', version: '7.2.1511')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
8
|
+
|
9
|
+
it 'makes cache for a yum_repository' do
|
10
|
+
expect(chef_run).to make_cache_yum_repository('explicit_make_cache_action')
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'chefspec'
|
2
|
+
|
3
|
+
describe 'yum_repository::remove' do
|
4
|
+
let(:chef_run) do
|
5
|
+
ChefSpec::ServerRunner.new(platform: 'centos', version: '7.2.1511')
|
6
|
+
.converge(described_recipe)
|
7
|
+
end
|
8
|
+
|
9
|
+
it 'removes a yum_repository with default action' do
|
10
|
+
expect(chef_run).to remove_yum_repository('explicit_remove_action')
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
@not_chef_12_0_3
|
2
|
+
@not_chef_12_1_2
|
3
|
+
@not_chef_12_2_1
|
4
|
+
@not_chef_12_3_0
|
5
|
+
@not_chef_12_4_3
|
6
|
+
@not_chef_12_5_1
|
7
|
+
@not_chef_12_6_0
|
8
|
+
@not_chef_12_7_2
|
9
|
+
@not_chef_12_8_1
|
10
|
+
|
11
|
+
Feature: The apt_repository matcher
|
12
|
+
Background:
|
13
|
+
* I am using the "apt_repository" cookbook
|
14
|
+
|
15
|
+
Scenario Outline: Running specs
|
16
|
+
* I successfully run `rspec spec/<Matcher>_spec.rb`
|
17
|
+
* the output should contain "0 failures"
|
18
|
+
Examples:
|
19
|
+
| Matcher |
|
20
|
+
| add |
|
21
|
+
| remove |
|
@@ -0,0 +1,19 @@
|
|
1
|
+
@not_chef_12_0_3
|
2
|
+
@not_chef_12_1_2
|
3
|
+
@not_chef_12_2_1
|
4
|
+
@not_chef_12_3_0
|
5
|
+
@not_chef_12_4_3
|
6
|
+
@not_chef_12_5_1
|
7
|
+
@not_chef_12_6_0
|
8
|
+
|
9
|
+
Feature: The apt_update matcher
|
10
|
+
Background:
|
11
|
+
* I am using the "apt_update" cookbook
|
12
|
+
|
13
|
+
Scenario Outline: Running specs
|
14
|
+
* I successfully run `rspec spec/<Matcher>_spec.rb`
|
15
|
+
* the output should contain "0 failures"
|
16
|
+
Examples:
|
17
|
+
| Matcher |
|
18
|
+
| periodic |
|
19
|
+
| update |
|
@@ -4,6 +4,9 @@ Feature: The dsc_resource matcher
|
|
4
4
|
Background:
|
5
5
|
* I am using the "dsc_resource" cookbook
|
6
6
|
|
7
|
-
Scenario: Running specs
|
8
|
-
* I successfully run `rspec spec
|
7
|
+
Scenario Outline: Running specs
|
8
|
+
* I successfully run `rspec spec/<Matcher>_spec.rb`
|
9
9
|
* the output should contain "0 failures"
|
10
|
+
Examples:
|
11
|
+
| Matcher |
|
12
|
+
| run |
|
@@ -0,0 +1,27 @@
|
|
1
|
+
@not_chef_12_0_3
|
2
|
+
@not_chef_12_1_2
|
3
|
+
@not_chef_12_2_1
|
4
|
+
@not_chef_12_3_0
|
5
|
+
@not_chef_12_4_3
|
6
|
+
@not_chef_12_5_1
|
7
|
+
@not_chef_12_6_0
|
8
|
+
@not_chef_12_7_2
|
9
|
+
@not_chef_12_8_1
|
10
|
+
@not_chef_12_9_41
|
11
|
+
@not_chef_12_10_24
|
12
|
+
@not_chef_12_11_18
|
13
|
+
@not_chef_12_12_15
|
14
|
+
@not_chef_12_13_37
|
15
|
+
|
16
|
+
Feature: The yum_repository matcher
|
17
|
+
Background:
|
18
|
+
* I am using the "yum_repository" cookbook
|
19
|
+
|
20
|
+
Scenario Outline: Running specs
|
21
|
+
* I successfully run `rspec spec/<Matcher>_spec.rb`
|
22
|
+
* the output should contain "0 failures"
|
23
|
+
Examples:
|
24
|
+
| Matcher |
|
25
|
+
| create |
|
26
|
+
| remove |
|
27
|
+
| make_cache |
|
data/lib/chefspec/api.rb
CHANGED
@@ -25,6 +25,8 @@ module ChefSpec
|
|
25
25
|
end
|
26
26
|
|
27
27
|
require_relative 'api/apt_package'
|
28
|
+
require_relative 'api/apt_update'
|
29
|
+
require_relative 'api/apt_repository'
|
28
30
|
require_relative 'api/batch'
|
29
31
|
require_relative 'api/chef_gem'
|
30
32
|
require_relative 'api/chocolatey_package'
|
@@ -35,6 +37,7 @@ require_relative 'api/directory'
|
|
35
37
|
require_relative 'api/dpkg_package'
|
36
38
|
require_relative 'api/do_nothing'
|
37
39
|
require_relative 'api/dsc_resource'
|
40
|
+
require_relative 'api/dsc_script'
|
38
41
|
require_relative 'api/easy_install_package'
|
39
42
|
require_relative 'api/env'
|
40
43
|
require_relative 'api/erl_call'
|
@@ -79,3 +82,4 @@ require_relative 'api/user'
|
|
79
82
|
require_relative 'api/windows_package'
|
80
83
|
require_relative 'api/windows_service'
|
81
84
|
require_relative 'api/yum_package'
|
85
|
+
require_relative 'api/yum_repository'
|
@@ -0,0 +1,37 @@
|
|
1
|
+
module ChefSpec::API
|
2
|
+
# @since 5.1.0
|
3
|
+
module DscScriptMatchers
|
4
|
+
ChefSpec.define_matcher :dsc_script
|
5
|
+
|
6
|
+
#
|
7
|
+
# Assert that a +dsc_script+ resource exists in the Chef run with
|
8
|
+
# the action +:run+. Given a Chef Recipe that runs "something" using
|
9
|
+
# +dsc_script+:
|
10
|
+
#
|
11
|
+
# dsc_script 'something' do
|
12
|
+
# code <<-EOH
|
13
|
+
# something
|
14
|
+
# EOH
|
15
|
+
# action :run
|
16
|
+
# end
|
17
|
+
#
|
18
|
+
# The Examples section demonstrates the different ways to test a
|
19
|
+
# +dsc_script+ resource with ChefSpec.
|
20
|
+
#
|
21
|
+
# @example Assert that a +dsc_script+ was run
|
22
|
+
# expect(chef_run).to dsc_script('something')
|
23
|
+
#
|
24
|
+
# @example Assert that a +dsc_script+ was _not_ run
|
25
|
+
# expect(chef_run).to_not dsc_script('something')
|
26
|
+
#
|
27
|
+
#
|
28
|
+
# @param [String, Regex] resource_name
|
29
|
+
# the name of the resource to match
|
30
|
+
#
|
31
|
+
# @return [ChefSpec::Matchers::ResourceMatcher]
|
32
|
+
#
|
33
|
+
def run_dsc_script(resource_name)
|
34
|
+
ChefSpec::Matchers::ResourceMatcher.new(:dsc_script, :run, resource_name)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,80 @@
|
|
1
|
+
module ChefSpec::API
|
2
|
+
# @since 3.0.0
|
3
|
+
module YumRepositoryMatchers
|
4
|
+
ChefSpec.define_matcher :yum_repository
|
5
|
+
|
6
|
+
#
|
7
|
+
# Assert that a +yum_repository+ resource exists in the Chef run with the
|
8
|
+
# action +:create+. Given a Chef Recipe that adds "epel" as an
|
9
|
+
# +yum_repository+:
|
10
|
+
#
|
11
|
+
# yum_repository 'epel' do
|
12
|
+
# baseurl "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-#{node['platform_version'].to_i}&arch=$basearch"
|
13
|
+
# description 'Extra Packages for $releasever - $basearch'
|
14
|
+
# action :create
|
15
|
+
# end
|
16
|
+
#
|
17
|
+
# The Examples section demonstrates the different ways to test an
|
18
|
+
# +yum_repository+ resource with ChefSpec.
|
19
|
+
#
|
20
|
+
# @example Assert that an +yum_repository+ was created
|
21
|
+
# expect(chef_run).to create_yum_repository('epel')
|
22
|
+
# @param [String, Regex] resource_name
|
23
|
+
# the name of the resource to match
|
24
|
+
#
|
25
|
+
# @return [ChefSpec::Matchers::ResourceMatcher]
|
26
|
+
|
27
|
+
def create_yum_repository(resource_name)
|
28
|
+
ChefSpec::Matchers::ResourceMatcher.new(:yum_repository, :create,
|
29
|
+
resource_name)
|
30
|
+
end
|
31
|
+
|
32
|
+
#
|
33
|
+
# Assert that a +yum_repository+ resource exists in the Chef run with the
|
34
|
+
# action +:remove+. Given a Chef Recipe that removes "epel" as an
|
35
|
+
# +yum_repository+:
|
36
|
+
#
|
37
|
+
# yum_repository 'epel' do
|
38
|
+
# action :remove
|
39
|
+
# end
|
40
|
+
#
|
41
|
+
# The Examples section demonstrates the different ways to test an
|
42
|
+
# +yum_repository+ resource with ChefSpec.
|
43
|
+
#
|
44
|
+
# @example Assert that an +yum_repository+ was removed
|
45
|
+
# expect(chef_run).to remove_yum_repository('epel')
|
46
|
+
# @param [String, Regex] resource_name
|
47
|
+
# the name of the resource to match
|
48
|
+
#
|
49
|
+
# @return [ChefSpec::Matchers::ResourceMatcher]
|
50
|
+
|
51
|
+
def remove_yum_repository(resource_name)
|
52
|
+
ChefSpec::Matchers::ResourceMatcher.new(:yum_repository, :remove,
|
53
|
+
resource_name)
|
54
|
+
end
|
55
|
+
|
56
|
+
#
|
57
|
+
# Assert that a +yum_repository+ resource exists in the Chef run with the
|
58
|
+
# action +:make_cache+. Given a Chef Recipe that makes cache for "epel" as
|
59
|
+
# a +yum_repository+:
|
60
|
+
#
|
61
|
+
# yum_repository 'epel' do
|
62
|
+
# action :make_cache
|
63
|
+
# end
|
64
|
+
#
|
65
|
+
# The Examples section demonstrates the different ways to test an
|
66
|
+
# +yum_repository+ resource with ChefSpec.
|
67
|
+
#
|
68
|
+
# @example Assert that an +yum_repository+ was make cache'd
|
69
|
+
# expect(chef_run).to make_cache_yum_repository('epel')
|
70
|
+
# @param [String, Regex] resource_name
|
71
|
+
# the name of the resource to match
|
72
|
+
#
|
73
|
+
# @return [ChefSpec::Matchers::ResourceMatcher]
|
74
|
+
|
75
|
+
def make_cache_yum_repository(resource_name)
|
76
|
+
ChefSpec::Matchers::ResourceMatcher.new(:yum_repository, :make_cache,
|
77
|
+
resource_name)
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|