chefspec 7.0.0 → 7.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/CHANGELOG.md +11 -1
- data/Gemfile +6 -0
- data/README.md +43 -11
- data/Rakefile +48 -8
- data/chefspec.gemspec +0 -8
- data/examples/cab_package/spec/install_spec.rb +20 -18
- data/examples/cab_package/spec/remove_spec.rb +17 -15
- data/examples/cached/spec/default_spec.rb +1 -0
- data/examples/compile_time/spec/default_spec.rb +2 -0
- data/examples/custom_matcher/libraries/matcher.rb +1 -23
- data/examples/dnf_package/spec/install_spec.rb +20 -18
- data/examples/dnf_package/spec/purge_spec.rb +17 -15
- data/examples/dnf_package/spec/remove_spec.rb +17 -15
- data/examples/dnf_package/spec/upgrade_spec.rb +17 -15
- data/examples/heavy_provider_light_resource/spec/provider_service_spec.rb +1 -0
- data/examples/msu_package/spec/install_spec.rb +20 -18
- data/examples/msu_package/spec/remove_spec.rb +17 -15
- data/examples/server/spec/exotic_port_spec.rb +15 -2
- data/lib/chefspec.rb +1 -8
- data/lib/chefspec/api.rb +6 -84
- data/lib/chefspec/api/do_nothing.rb +18 -21
- data/lib/chefspec/api/include_recipe.rb +20 -23
- data/lib/chefspec/api/link.rb +20 -99
- data/lib/chefspec/api/notifications.rb +32 -35
- data/lib/chefspec/api/reboot.rb +5 -14
- data/lib/chefspec/api/render_file.rb +29 -32
- data/lib/chefspec/api/state_attrs.rb +22 -25
- data/lib/chefspec/api/subscriptions.rb +29 -32
- data/lib/chefspec/api/user.rb +216 -219
- data/lib/chefspec/extensions.rb +16 -0
- data/lib/chefspec/extensions/chef/resource.rb +90 -8
- data/lib/chefspec/version.rb +1 -1
- data/lib/chefspec/zero_server.rb +20 -18
- metadata +3 -313
- data/examples/custom_resource/libraries/matchers.rb +0 -5
- data/examples/use_inline_resources/libraries/matchers.rb +0 -5
- 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/spec/unit/api_spec.rb +0 -18
data/lib/chefspec/api/group.rb
DELETED
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
module ChefSpec::API
|
|
2
|
-
# @since 1.0.0
|
|
3
|
-
module GroupMatchers
|
|
4
|
-
ChefSpec.define_matcher :group
|
|
5
|
-
|
|
6
|
-
#
|
|
7
|
-
# Assert that a +group+ resource exists in the Chef run with the
|
|
8
|
-
# action +:create+. Given a Chef Recipe that creates "apache2" as a
|
|
9
|
-
# +group+:
|
|
10
|
-
#
|
|
11
|
-
# group 'apache2' do
|
|
12
|
-
# action :create
|
|
13
|
-
# end
|
|
14
|
-
#
|
|
15
|
-
# The Examples section demonstrates the different ways to test a
|
|
16
|
-
# +group+ resource with ChefSpec.
|
|
17
|
-
#
|
|
18
|
-
# @example Assert that a +group+ was created
|
|
19
|
-
# expect(chef_run).to create_group('apache2')
|
|
20
|
-
#
|
|
21
|
-
# @example Assert that a +group+ was created with predicate matchers
|
|
22
|
-
# expect(chef_run).to create_group('apache2').with_gid(1234)
|
|
23
|
-
#
|
|
24
|
-
# @example Assert that a +group+ was created with attributes
|
|
25
|
-
# expect(chef_run).to create_group('apache2').with(gid: 1234)
|
|
26
|
-
#
|
|
27
|
-
# @example Assert that a +group+ was created using a regex
|
|
28
|
-
# expect(chef_run).to create_group('apache2').with(gid: /\d+/)
|
|
29
|
-
#
|
|
30
|
-
# @example Assert that a +group+ was _not_ created
|
|
31
|
-
# expect(chef_run).to_not create_group('apache2')
|
|
32
|
-
#
|
|
33
|
-
#
|
|
34
|
-
# @param [String, Regex] resource_name
|
|
35
|
-
# the name of the resource to match
|
|
36
|
-
#
|
|
37
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
38
|
-
#
|
|
39
|
-
def create_group(resource_name)
|
|
40
|
-
ChefSpec::Matchers::ResourceMatcher.new(:group, :create, resource_name)
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
#
|
|
44
|
-
# Assert that a +group+ resource exists in the Chef run with the
|
|
45
|
-
# action +:manage+. Given a Chef Recipe that manages "apache2" as a
|
|
46
|
-
# +group+:
|
|
47
|
-
#
|
|
48
|
-
# group 'apache2' do
|
|
49
|
-
# action :manage
|
|
50
|
-
# end
|
|
51
|
-
#
|
|
52
|
-
# The Examples section demonstrates the different ways to test a
|
|
53
|
-
# +group+ resource with ChefSpec.
|
|
54
|
-
#
|
|
55
|
-
# @example Assert that a +group+ was managed
|
|
56
|
-
# expect(chef_run).to manage_group('apache2')
|
|
57
|
-
#
|
|
58
|
-
# @example Assert that a +group+ was managed with predicate matchers
|
|
59
|
-
# expect(chef_run).to manage_group('apache2').with_gid(1234)
|
|
60
|
-
#
|
|
61
|
-
# @example Assert that a +group+ was managed with attributes
|
|
62
|
-
# expect(chef_run).to manage_group('apache2').with(gid: 1234)
|
|
63
|
-
#
|
|
64
|
-
# @example Assert that a +group+ was managed using a regex
|
|
65
|
-
# expect(chef_run).to manage_group('apache2').with(gid: /\d+/)
|
|
66
|
-
#
|
|
67
|
-
# @example Assert that a +group+ was _not_ managed
|
|
68
|
-
# expect(chef_run).to_not manage_group('apache2')
|
|
69
|
-
#
|
|
70
|
-
#
|
|
71
|
-
# @param [String, Regex] resource_name
|
|
72
|
-
# the name of the resource to match
|
|
73
|
-
#
|
|
74
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
75
|
-
#
|
|
76
|
-
def manage_group(resource_name)
|
|
77
|
-
ChefSpec::Matchers::ResourceMatcher.new(:group, :manage, resource_name)
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
#
|
|
81
|
-
# Assert that a +group+ resource exists in the Chef run with the
|
|
82
|
-
# action +:modify+. Given a Chef Recipe that modifies "apache2" as a
|
|
83
|
-
# +group+:
|
|
84
|
-
#
|
|
85
|
-
# group 'apache2' do
|
|
86
|
-
# action :modify
|
|
87
|
-
# end
|
|
88
|
-
#
|
|
89
|
-
# The Examples section demonstrates the different ways to test a
|
|
90
|
-
# +group+ resource with ChefSpec.
|
|
91
|
-
#
|
|
92
|
-
# @example Assert that a +group+ was modified
|
|
93
|
-
# expect(chef_run).to modify_group('apache2')
|
|
94
|
-
#
|
|
95
|
-
# @example Assert that a +group+ was modified with predicate matchers
|
|
96
|
-
# expect(chef_run).to modify_group('apache2').with_gid(1234)
|
|
97
|
-
#
|
|
98
|
-
# @example Assert that a +group+ was modified with attributes
|
|
99
|
-
# expect(chef_run).to modify_group('apache2').with(gid: 1234)
|
|
100
|
-
#
|
|
101
|
-
# @example Assert that a +group+ was modified using a regex
|
|
102
|
-
# expect(chef_run).to modify_group('apache2').with(gid: /\d+/)
|
|
103
|
-
#
|
|
104
|
-
# @example Assert that a +group+ was _not_ modified
|
|
105
|
-
# expect(chef_run).to_not modify_group('apache2')
|
|
106
|
-
#
|
|
107
|
-
#
|
|
108
|
-
# @param [String, Regex] resource_name
|
|
109
|
-
# the name of the resource to match
|
|
110
|
-
#
|
|
111
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
112
|
-
#
|
|
113
|
-
def modify_group(resource_name)
|
|
114
|
-
ChefSpec::Matchers::ResourceMatcher.new(:group, :modify, resource_name)
|
|
115
|
-
end
|
|
116
|
-
|
|
117
|
-
#
|
|
118
|
-
# Assert that a +group+ resource exists in the Chef run with the
|
|
119
|
-
# action +:remove+. Given a Chef Recipe that removes "apache2" as a
|
|
120
|
-
# +group+:
|
|
121
|
-
#
|
|
122
|
-
# group 'apache2' do
|
|
123
|
-
# action :remove
|
|
124
|
-
# end
|
|
125
|
-
#
|
|
126
|
-
# The Examples section demonstrates the different ways to test a
|
|
127
|
-
# +group+ resource with ChefSpec.
|
|
128
|
-
#
|
|
129
|
-
# @example Assert that a +group+ was removed
|
|
130
|
-
# expect(chef_run).to remove_group('apache2')
|
|
131
|
-
#
|
|
132
|
-
# @example Assert that a +group+ was removed with predicate matchers
|
|
133
|
-
# expect(chef_run).to remove_group('apache2').with_gid(1234)
|
|
134
|
-
#
|
|
135
|
-
# @example Assert that a +group+ was removed with attributes
|
|
136
|
-
# expect(chef_run).to remove_group('apache2').with(gid: 1234)
|
|
137
|
-
#
|
|
138
|
-
# @example Assert that a +group+ was removed using a regex
|
|
139
|
-
# expect(chef_run).to remove_group('apache2').with(gid: /\d+/)
|
|
140
|
-
#
|
|
141
|
-
# @example Assert that a +group+ was _not_ removed
|
|
142
|
-
# expect(chef_run).to_not remove_group('apache2')
|
|
143
|
-
#
|
|
144
|
-
#
|
|
145
|
-
# @param [String, Regex] resource_name
|
|
146
|
-
# the name of the resource to match
|
|
147
|
-
#
|
|
148
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
149
|
-
#
|
|
150
|
-
def remove_group(resource_name)
|
|
151
|
-
ChefSpec::Matchers::ResourceMatcher.new(:group, :remove, resource_name)
|
|
152
|
-
end
|
|
153
|
-
end
|
|
154
|
-
end
|
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
module ChefSpec::API
|
|
2
|
-
# @since 5.1.0
|
|
3
|
-
module HomebrewPackageMatchers
|
|
4
|
-
ChefSpec.define_matcher :homebrew_package
|
|
5
|
-
|
|
6
|
-
#
|
|
7
|
-
# Assert that a +homebrew_package+ resource exists in the Chef run with the
|
|
8
|
-
# action +:install+. Given a Chef Recipe that installs "community-zero" as a
|
|
9
|
-
# +homebrew_package+:
|
|
10
|
-
#
|
|
11
|
-
# homebrew_package 'community-zero' do
|
|
12
|
-
# action :install
|
|
13
|
-
# end
|
|
14
|
-
#
|
|
15
|
-
# The Examples section demonstrates the different ways to test a
|
|
16
|
-
# +homebrew_package+ resource with ChefSpec.
|
|
17
|
-
#
|
|
18
|
-
# @example Assert that a +homebrew_package+ was installed
|
|
19
|
-
# expect(chef_run).to install_homebrew_package('community-zero')
|
|
20
|
-
#
|
|
21
|
-
# @example Assert that a +homebrew_package+ was installed with predicate matchers
|
|
22
|
-
# expect(chef_run).to install_homebrew_package('community-zero').with_version('1.2.3')
|
|
23
|
-
#
|
|
24
|
-
# @example Assert that a +homebrew_package+ was installed with attributes
|
|
25
|
-
# expect(chef_run).to install_homebrew_package('community-zero').with(version: '1.2.3')
|
|
26
|
-
#
|
|
27
|
-
# @example Assert that a +homebrew_package+ was installed using a regex
|
|
28
|
-
# expect(chef_run).to install_homebrew_package('community-zero').with(version: /(\d+\.){2}\.\d+/)
|
|
29
|
-
#
|
|
30
|
-
# @example Assert that a +homebrew_package+ was _not_ installed
|
|
31
|
-
# expect(chef_run).to_not install_homebrew_package('community-zero')
|
|
32
|
-
#
|
|
33
|
-
#
|
|
34
|
-
# @param [String, Regex] resource_name
|
|
35
|
-
# the name of the resource to match
|
|
36
|
-
#
|
|
37
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
38
|
-
#
|
|
39
|
-
def install_homebrew_package(resource_name)
|
|
40
|
-
ChefSpec::Matchers::ResourceMatcher.new(:homebrew_package, :install, resource_name)
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
#
|
|
44
|
-
# Assert that a +homebrew_package+ resource exists in the Chef run with the
|
|
45
|
-
# action +:purge+. Given a Chef Recipe that purges "community-zero" as a
|
|
46
|
-
# +homebrew_package+:
|
|
47
|
-
#
|
|
48
|
-
# homebrew_package 'community-zero' do
|
|
49
|
-
# action :purge
|
|
50
|
-
# end
|
|
51
|
-
#
|
|
52
|
-
# The Examples section demonstrates the different ways to test a
|
|
53
|
-
# +homebrew_package+ resource with ChefSpec.
|
|
54
|
-
#
|
|
55
|
-
# @example Assert that a +homebrew_package+ was purgeed
|
|
56
|
-
# expect(chef_run).to purge_homebrew_package('community-zero')
|
|
57
|
-
#
|
|
58
|
-
# @example Assert that a +homebrew_package+ was purgeed with predicate matchers
|
|
59
|
-
# expect(chef_run).to purge_homebrew_package('community-zero').with_version('1.2.3')
|
|
60
|
-
#
|
|
61
|
-
# @example Assert that a +homebrew_package+ was purgeed with attributes
|
|
62
|
-
# expect(chef_run).to purge_homebrew_package('community-zero').with(version: '1.2.3')
|
|
63
|
-
#
|
|
64
|
-
# @example Assert that a +homebrew_package+ was purgeed using a regex
|
|
65
|
-
# expect(chef_run).to purge_homebrew_package('community-zero').with(version: /(\d+\.){2}\.\d+/)
|
|
66
|
-
#
|
|
67
|
-
# @example Assert that a +homebrew_package+ was _not_ purgeed
|
|
68
|
-
# expect(chef_run).to_not purge_homebrew_package('community-zero')
|
|
69
|
-
#
|
|
70
|
-
#
|
|
71
|
-
# @param [String, Regex] resource_name
|
|
72
|
-
# the name of the resource to match
|
|
73
|
-
#
|
|
74
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
75
|
-
#
|
|
76
|
-
def purge_homebrew_package(resource_name)
|
|
77
|
-
ChefSpec::Matchers::ResourceMatcher.new(:homebrew_package, :purge, resource_name)
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
#
|
|
81
|
-
# Assert that a +homebrew_package+ resource exists in the Chef run with the
|
|
82
|
-
# action +:remove+. Given a Chef Recipe that removes "community-zero" as a
|
|
83
|
-
# +homebrew_package+:
|
|
84
|
-
#
|
|
85
|
-
# homebrew_package 'community-zero' do
|
|
86
|
-
# action :remove
|
|
87
|
-
# end
|
|
88
|
-
#
|
|
89
|
-
# The Examples section demonstrates the different ways to test a
|
|
90
|
-
# +homebrew_package+ resource with ChefSpec.
|
|
91
|
-
#
|
|
92
|
-
# @example Assert that a +homebrew_package+ was removeed
|
|
93
|
-
# expect(chef_run).to remove_homebrew_package('community-zero')
|
|
94
|
-
#
|
|
95
|
-
# @example Assert that a +homebrew_package+ was removeed with predicate matchers
|
|
96
|
-
# expect(chef_run).to remove_homebrew_package('community-zero').with_version('1.2.3')
|
|
97
|
-
#
|
|
98
|
-
# @example Assert that a +homebrew_package+ was removeed with attributes
|
|
99
|
-
# expect(chef_run).to remove_homebrew_package('community-zero').with(version: '1.2.3')
|
|
100
|
-
#
|
|
101
|
-
# @example Assert that a +homebrew_package+ was removeed using a regex
|
|
102
|
-
# expect(chef_run).to remove_homebrew_package('community-zero').with(version: /(\d+\.){2}\.\d+/)
|
|
103
|
-
#
|
|
104
|
-
# @example Assert that a +homebrew_package+ was _not_ removeed
|
|
105
|
-
# expect(chef_run).to_not remove_homebrew_package('community-zero')
|
|
106
|
-
#
|
|
107
|
-
#
|
|
108
|
-
# @param [String, Regex] resource_name
|
|
109
|
-
# the name of the resource to match
|
|
110
|
-
#
|
|
111
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
112
|
-
#
|
|
113
|
-
def remove_homebrew_package(resource_name)
|
|
114
|
-
ChefSpec::Matchers::ResourceMatcher.new(:homebrew_package, :remove, resource_name)
|
|
115
|
-
end
|
|
116
|
-
|
|
117
|
-
#
|
|
118
|
-
# Assert that a +homebrew_package+ resource exists in the Chef run with the
|
|
119
|
-
# action +:upgrade+. Given a Chef Recipe that upgrades "community-zero" as a
|
|
120
|
-
# +homebrew_package+:
|
|
121
|
-
#
|
|
122
|
-
# homebrew_package 'community-zero' do
|
|
123
|
-
# action :upgrade
|
|
124
|
-
# end
|
|
125
|
-
#
|
|
126
|
-
# The Examples section demonstrates the different ways to test a
|
|
127
|
-
# +homebrew_package+ resource with ChefSpec.
|
|
128
|
-
#
|
|
129
|
-
# @example Assert that a +homebrew_package+ was upgradeed
|
|
130
|
-
# expect(chef_run).to upgrade_homebrew_package('community-zero')
|
|
131
|
-
#
|
|
132
|
-
# @example Assert that a +homebrew_package+ was upgradeed with predicate matchers
|
|
133
|
-
# expect(chef_run).to upgrade_homebrew_package('community-zero').with_version('1.2.3')
|
|
134
|
-
#
|
|
135
|
-
# @example Assert that a +homebrew_package+ was upgradeed with attributes
|
|
136
|
-
# expect(chef_run).to upgrade_homebrew_package('community-zero').with(version: '1.2.3')
|
|
137
|
-
#
|
|
138
|
-
# @example Assert that a +homebrew_package+ was upgradeed using a regex
|
|
139
|
-
# expect(chef_run).to upgrade_homebrew_package('community-zero').with(version: /(\d+\.){2}\.\d+/)
|
|
140
|
-
#
|
|
141
|
-
# @example Assert that a +homebrew_package+ was _not_ upgradeed
|
|
142
|
-
# expect(chef_run).to_not upgrade_homebrew_package('community-zero')
|
|
143
|
-
#
|
|
144
|
-
#
|
|
145
|
-
# @param [String, Regex] resource_name
|
|
146
|
-
# the name of the resource to match
|
|
147
|
-
#
|
|
148
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
149
|
-
#
|
|
150
|
-
def upgrade_homebrew_package(resource_name)
|
|
151
|
-
ChefSpec::Matchers::ResourceMatcher.new(:homebrew_package, :upgrade, resource_name)
|
|
152
|
-
end
|
|
153
|
-
end
|
|
154
|
-
end
|
|
@@ -1,228 +0,0 @@
|
|
|
1
|
-
module ChefSpec::API
|
|
2
|
-
# @since 3.0.0
|
|
3
|
-
module HttpRequestMatchers
|
|
4
|
-
ChefSpec.define_matcher :http_request
|
|
5
|
-
|
|
6
|
-
#
|
|
7
|
-
# Assert that an +http_request+ resource exists in the Chef run with the
|
|
8
|
-
# action +:delete+. Given a Chef Recipe that deletes "apache2" as an
|
|
9
|
-
# +http_request+:
|
|
10
|
-
#
|
|
11
|
-
# http_request 'apache2' do
|
|
12
|
-
# action :delete
|
|
13
|
-
# end
|
|
14
|
-
#
|
|
15
|
-
# The Examples section demonstrates the different ways to test an
|
|
16
|
-
# +http_request+ resource with ChefSpec.
|
|
17
|
-
#
|
|
18
|
-
# @example Assert that an +http_request+ was DELETE
|
|
19
|
-
# expect(chef_run).to delete_http_request('apache2')
|
|
20
|
-
#
|
|
21
|
-
# @example Assert that an +http_request+ was DELETE with predicate matchers
|
|
22
|
-
# expect(chef_run).to delete_http_request('apache2').with_message('hello')
|
|
23
|
-
#
|
|
24
|
-
# @example Assert that an +http_request+ was DELETE with attributes
|
|
25
|
-
# expect(chef_run).to delete_http_request('apache2').with(message: 'hello')
|
|
26
|
-
#
|
|
27
|
-
# @example Assert that an +http_request+ was DELETE using a regex
|
|
28
|
-
# expect(chef_run).to delete_http_request('apache2').with(message: /he(.+)/)
|
|
29
|
-
#
|
|
30
|
-
# @example Assert that an +http_request+ was _not_ DELETE
|
|
31
|
-
# expect(chef_run).to_not delete_http_request('apache2')
|
|
32
|
-
#
|
|
33
|
-
#
|
|
34
|
-
# @param [String, Regex] resource_name
|
|
35
|
-
# the name of the resource to match
|
|
36
|
-
#
|
|
37
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
38
|
-
#
|
|
39
|
-
def delete_http_request(resource_name)
|
|
40
|
-
ChefSpec::Matchers::ResourceMatcher.new(:http_request, :delete, resource_name)
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
#
|
|
44
|
-
# Assert that an +http_request+ resource exists in the Chef run with the
|
|
45
|
-
# action +:get+. Given a Chef Recipe that gets "apache2" as an
|
|
46
|
-
# +http_request+:
|
|
47
|
-
#
|
|
48
|
-
# http_request 'apache2' do
|
|
49
|
-
# action :get
|
|
50
|
-
# end
|
|
51
|
-
#
|
|
52
|
-
# The Examples section demonstrates the different ways to test an
|
|
53
|
-
# +http_request+ resource with ChefSpec.
|
|
54
|
-
#
|
|
55
|
-
# @example Assert that an +http_request+ was GET
|
|
56
|
-
# expect(chef_run).to get_http_request('apache2')
|
|
57
|
-
#
|
|
58
|
-
# @example Assert that an +http_request+ was GET with predicate matchers
|
|
59
|
-
# expect(chef_run).to get_http_request('apache2').with_message('hello')
|
|
60
|
-
#
|
|
61
|
-
# @example Assert that an +http_request+ was GET with attributes
|
|
62
|
-
# expect(chef_run).to get_http_request('apache2').with(message: 'hello')
|
|
63
|
-
#
|
|
64
|
-
# @example Assert that an +http_request+ was GET using a regex
|
|
65
|
-
# expect(chef_run).to get_http_request('apache2').with(message: /he(.+)/)
|
|
66
|
-
#
|
|
67
|
-
# @example Assert that an +http_request+ was _not_ GET
|
|
68
|
-
# expect(chef_run).to_not get_http_request('apache2')
|
|
69
|
-
#
|
|
70
|
-
#
|
|
71
|
-
# @param [String, Regex] resource_name
|
|
72
|
-
# the name of the resource to match
|
|
73
|
-
#
|
|
74
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
75
|
-
#
|
|
76
|
-
def get_http_request(resource_name)
|
|
77
|
-
ChefSpec::Matchers::ResourceMatcher.new(:http_request, :get, resource_name)
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
#
|
|
81
|
-
# Assert that an +http_request+ resource exists in the Chef run with the
|
|
82
|
-
# action +:head+. Given a Chef Recipe that heads "apache2" as an
|
|
83
|
-
# +http_request+:
|
|
84
|
-
#
|
|
85
|
-
# http_request 'apache2' do
|
|
86
|
-
# action :head
|
|
87
|
-
# end
|
|
88
|
-
#
|
|
89
|
-
# The Examples section demonstrates the different ways to test an
|
|
90
|
-
# +http_request+ resource with ChefSpec.
|
|
91
|
-
#
|
|
92
|
-
# @example Assert that an +http_request+ was HEAD
|
|
93
|
-
# expect(chef_run).to head_http_request('apache2')
|
|
94
|
-
#
|
|
95
|
-
# @example Assert that an +http_request+ was HEAD with predicate matchers
|
|
96
|
-
# expect(chef_run).to head_http_request('apache2').with_message('hello')
|
|
97
|
-
#
|
|
98
|
-
# @example Assert that an +http_request+ was HEAD with attributes
|
|
99
|
-
# expect(chef_run).to head_http_request('apache2').with(message: 'hello')
|
|
100
|
-
#
|
|
101
|
-
# @example Assert that an +http_request+ was HEAD using a regex
|
|
102
|
-
# expect(chef_run).to head_http_request('apache2').with(message: /he(.+)/)
|
|
103
|
-
#
|
|
104
|
-
# @example Assert that an +http_request+ was _not_ HEAD
|
|
105
|
-
# expect(chef_run).to_not head_http_request('apache2')
|
|
106
|
-
#
|
|
107
|
-
#
|
|
108
|
-
# @param [String, Regex] resource_name
|
|
109
|
-
# the name of the resource to match
|
|
110
|
-
#
|
|
111
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
112
|
-
#
|
|
113
|
-
def head_http_request(resource_name)
|
|
114
|
-
ChefSpec::Matchers::ResourceMatcher.new(:http_request, :head, resource_name)
|
|
115
|
-
end
|
|
116
|
-
|
|
117
|
-
#
|
|
118
|
-
# Assert that an +http_request+ resource exists in the Chef run with the
|
|
119
|
-
# action +:options+. Given a Chef Recipe that optionss "apache2" as an
|
|
120
|
-
# +http_request+:
|
|
121
|
-
#
|
|
122
|
-
# http_request 'apache2' do
|
|
123
|
-
# action :options
|
|
124
|
-
# end
|
|
125
|
-
#
|
|
126
|
-
# The Examples section demonstrates the different ways to test an
|
|
127
|
-
# +http_request+ resource with ChefSpec.
|
|
128
|
-
#
|
|
129
|
-
# @example Assert that an +http_request+ was OPTIONS
|
|
130
|
-
# expect(chef_run).to options_http_request('apache2')
|
|
131
|
-
#
|
|
132
|
-
# @example Assert that an +http_request+ was OPTIONS with predicate matchers
|
|
133
|
-
# expect(chef_run).to options_http_request('apache2').with_message('hello')
|
|
134
|
-
#
|
|
135
|
-
# @example Assert that an +http_request+ was OPTIONS with attributes
|
|
136
|
-
# expect(chef_run).to options_http_request('apache2').with(message: 'hello')
|
|
137
|
-
#
|
|
138
|
-
# @example Assert that an +http_request+ was OPTIONS using a regex
|
|
139
|
-
# expect(chef_run).to options_http_request('apache2').with(message: /he(.+)/)
|
|
140
|
-
#
|
|
141
|
-
# @example Assert that an +http_request+ was _not_ OPTIONS
|
|
142
|
-
# expect(chef_run).to_not options_http_request('apache2')
|
|
143
|
-
#
|
|
144
|
-
#
|
|
145
|
-
# @param [String, Regex] resource_name
|
|
146
|
-
# the name of the resource to match
|
|
147
|
-
#
|
|
148
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
149
|
-
#
|
|
150
|
-
def options_http_request(resource_name)
|
|
151
|
-
ChefSpec::Matchers::ResourceMatcher.new(:http_request, :options, resource_name)
|
|
152
|
-
end
|
|
153
|
-
|
|
154
|
-
#
|
|
155
|
-
# Assert that an +http_request+ resource exists in the Chef run with the
|
|
156
|
-
# action +:post+. Given a Chef Recipe that posts "apache2" as an
|
|
157
|
-
# +http_request+:
|
|
158
|
-
#
|
|
159
|
-
# http_request 'apache2' do
|
|
160
|
-
# action :post
|
|
161
|
-
# end
|
|
162
|
-
#
|
|
163
|
-
# The Examples section demonstrates the different ways to test an
|
|
164
|
-
# +http_request+ resource with ChefSpec.
|
|
165
|
-
#
|
|
166
|
-
# @example Assert that an +http_request+ was POST
|
|
167
|
-
# expect(chef_run).to post_http_request('apache2')
|
|
168
|
-
#
|
|
169
|
-
# @example Assert that an +http_request+ was POST with predicate matchers
|
|
170
|
-
# expect(chef_run).to post_http_request('apache2').with_message('hello')
|
|
171
|
-
#
|
|
172
|
-
# @example Assert that an +http_request+ was POST with attributes
|
|
173
|
-
# expect(chef_run).to post_http_request('apache2').with(message: 'hello')
|
|
174
|
-
#
|
|
175
|
-
# @example Assert that an +http_request+ was POST using a regex
|
|
176
|
-
# expect(chef_run).to post_http_request('apache2').with(message: /he(.+)/)
|
|
177
|
-
#
|
|
178
|
-
# @example Assert that an +http_request+ was _not_ POST
|
|
179
|
-
# expect(chef_run).to_not post_http_request('apache2')
|
|
180
|
-
#
|
|
181
|
-
#
|
|
182
|
-
# @param [String, Regex] resource_name
|
|
183
|
-
# the name of the resource to match
|
|
184
|
-
#
|
|
185
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
186
|
-
#
|
|
187
|
-
def post_http_request(resource_name)
|
|
188
|
-
ChefSpec::Matchers::ResourceMatcher.new(:http_request, :post, resource_name)
|
|
189
|
-
end
|
|
190
|
-
|
|
191
|
-
#
|
|
192
|
-
# Assert that an +http_request+ resource exists in the Chef run with the
|
|
193
|
-
# action +:put+. Given a Chef Recipe that puts "apache2" as an
|
|
194
|
-
# +http_request+:
|
|
195
|
-
#
|
|
196
|
-
# http_request 'apache2' do
|
|
197
|
-
# action :put
|
|
198
|
-
# end
|
|
199
|
-
#
|
|
200
|
-
# The Examples section demonstrates the different ways to test an
|
|
201
|
-
# +http_request+ resource with ChefSpec.
|
|
202
|
-
#
|
|
203
|
-
# @example Assert that an +http_request+ was PUT
|
|
204
|
-
# expect(chef_run).to put_http_request('apache2')
|
|
205
|
-
#
|
|
206
|
-
# @example Assert that an +http_request+ was PUT with predicate matchers
|
|
207
|
-
# expect(chef_run).to put_http_request('apache2').with_message('hello')
|
|
208
|
-
#
|
|
209
|
-
# @example Assert that an +http_request+ was PUT with attributes
|
|
210
|
-
# expect(chef_run).to put_http_request('apache2').with(message: 'hello')
|
|
211
|
-
#
|
|
212
|
-
# @example Assert that an +http_request+ was PUT using a regex
|
|
213
|
-
# expect(chef_run).to put_http_request('apache2').with(message: /he(.+)/)
|
|
214
|
-
#
|
|
215
|
-
# @example Assert that an +http_request+ was _not_ PUT
|
|
216
|
-
# expect(chef_run).to_not put_http_request('apache2')
|
|
217
|
-
#
|
|
218
|
-
#
|
|
219
|
-
# @param [String, Regex] resource_name
|
|
220
|
-
# the name of the resource to match
|
|
221
|
-
#
|
|
222
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
223
|
-
#
|
|
224
|
-
def put_http_request(resource_name)
|
|
225
|
-
ChefSpec::Matchers::ResourceMatcher.new(:http_request, :put, resource_name)
|
|
226
|
-
end
|
|
227
|
-
end
|
|
228
|
-
end
|