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.
Files changed (194) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +11 -1
  3. data/Gemfile +6 -0
  4. data/README.md +43 -11
  5. data/Rakefile +48 -8
  6. data/chefspec.gemspec +0 -8
  7. data/examples/cab_package/spec/install_spec.rb +20 -18
  8. data/examples/cab_package/spec/remove_spec.rb +17 -15
  9. data/examples/cached/spec/default_spec.rb +1 -0
  10. data/examples/compile_time/spec/default_spec.rb +2 -0
  11. data/examples/custom_matcher/libraries/matcher.rb +1 -23
  12. data/examples/dnf_package/spec/install_spec.rb +20 -18
  13. data/examples/dnf_package/spec/purge_spec.rb +17 -15
  14. data/examples/dnf_package/spec/remove_spec.rb +17 -15
  15. data/examples/dnf_package/spec/upgrade_spec.rb +17 -15
  16. data/examples/heavy_provider_light_resource/spec/provider_service_spec.rb +1 -0
  17. data/examples/msu_package/spec/install_spec.rb +20 -18
  18. data/examples/msu_package/spec/remove_spec.rb +17 -15
  19. data/examples/server/spec/exotic_port_spec.rb +15 -2
  20. data/lib/chefspec.rb +1 -8
  21. data/lib/chefspec/api.rb +6 -84
  22. data/lib/chefspec/api/do_nothing.rb +18 -21
  23. data/lib/chefspec/api/include_recipe.rb +20 -23
  24. data/lib/chefspec/api/link.rb +20 -99
  25. data/lib/chefspec/api/notifications.rb +32 -35
  26. data/lib/chefspec/api/reboot.rb +5 -14
  27. data/lib/chefspec/api/render_file.rb +29 -32
  28. data/lib/chefspec/api/state_attrs.rb +22 -25
  29. data/lib/chefspec/api/subscriptions.rb +29 -32
  30. data/lib/chefspec/api/user.rb +216 -219
  31. data/lib/chefspec/extensions.rb +16 -0
  32. data/lib/chefspec/extensions/chef/resource.rb +90 -8
  33. data/lib/chefspec/version.rb +1 -1
  34. data/lib/chefspec/zero_server.rb +20 -18
  35. metadata +3 -313
  36. data/examples/custom_resource/libraries/matchers.rb +0 -5
  37. data/examples/use_inline_resources/libraries/matchers.rb +0 -5
  38. data/features/apt_package.feature +0 -14
  39. data/features/apt_repository.feature +0 -15
  40. data/features/apt_update.feature +0 -13
  41. data/features/attributes.feature +0 -7
  42. data/features/batch.feature +0 -10
  43. data/features/bff_package.feature +0 -12
  44. data/features/cab_package.feature +0 -21
  45. data/features/cached.feature +0 -7
  46. data/features/chef_gem.feature +0 -14
  47. data/features/chocolatey_package.feature +0 -14
  48. data/features/compile_time.feature +0 -7
  49. data/features/cookbook_file.feature +0 -13
  50. data/features/cron.feature +0 -11
  51. data/features/custom_matcher.feature +0 -11
  52. data/features/custom_resource.feature +0 -7
  53. data/features/deploy.feature +0 -12
  54. data/features/directory.feature +0 -11
  55. data/features/dnf_package.feature +0 -26
  56. data/features/do_nothing.feature +0 -10
  57. data/features/dpkg_package.feature +0 -12
  58. data/features/dsc_resource.feature +0 -10
  59. data/features/dsc_script.feature +0 -10
  60. data/features/env.feature +0 -12
  61. data/features/erl_call.feature +0 -10
  62. data/features/execute.feature +0 -10
  63. data/features/exotic_zero_port.feature +0 -7
  64. data/features/expect_exception.feature +0 -12
  65. data/features/file.feature +0 -13
  66. data/features/freebsd_package.feature +0 -11
  67. data/features/gem_package.feature +0 -14
  68. data/features/git.feature +0 -12
  69. data/features/group.feature +0 -13
  70. data/features/guards.feature +0 -10
  71. data/features/heavy_provider_light_resource.feature +0 -10
  72. data/features/homebrew_package.feature +0 -12
  73. data/features/http_request.feature +0 -15
  74. data/features/ifconfig.feature +0 -13
  75. data/features/include_recipe.feature +0 -10
  76. data/features/ips_package.feature +0 -12
  77. data/features/launchd.feature +0 -17
  78. data/features/link.feature +0 -12
  79. data/features/log.feature +0 -10
  80. data/features/macports_package.feature +0 -13
  81. data/features/mdadm.feature +0 -12
  82. data/features/mount.feature +0 -14
  83. data/features/msu_package.feature +0 -23
  84. data/features/multiple_actions.feature +0 -12
  85. data/features/multiple_run_action.feature +0 -7
  86. data/features/notifications.feature +0 -14
  87. data/features/ohai.feature +0 -10
  88. data/features/openbsd_package.feature +0 -12
  89. data/features/osx_profile.feature +0 -13
  90. data/features/package.feature +0 -14
  91. data/features/pacman_package.feature +0 -13
  92. data/features/paludis_package.feature +0 -12
  93. data/features/portage_package.feature +0 -13
  94. data/features/powershell_script.feature +0 -10
  95. data/features/reboot.feature +0 -12
  96. data/features/registry_key.feature +0 -13
  97. data/features/remote_directory.feature +0 -12
  98. data/features/remote_file.feature +0 -13
  99. data/features/render_file.feature +0 -11
  100. data/features/roles.feature +0 -7
  101. data/features/route.feature +0 -11
  102. data/features/rpm_package.feature +0 -12
  103. data/features/ruby_block.feature +0 -11
  104. data/features/script.feature +0 -16
  105. data/features/server.feature +0 -16
  106. data/features/server_on_disk.feature +0 -16
  107. data/features/service.feature +0 -15
  108. data/features/smartos_package.feature +0 -12
  109. data/features/solaris_package.feature +0 -12
  110. data/features/state_attrs.feature +0 -7
  111. data/features/step_definitions/background_steps.rb +0 -7
  112. data/features/step_into.feature +0 -7
  113. data/features/stub_command.feature +0 -7
  114. data/features/stub_data_bag.feature +0 -7
  115. data/features/stub_data_bag_item.feature +0 -7
  116. data/features/stub_node.feature +0 -7
  117. data/features/stub_search.feature +0 -7
  118. data/features/subscribes.feature +0 -14
  119. data/features/subversion.feature +0 -13
  120. data/features/support/env.rb +0 -38
  121. data/features/support/executor.rb +0 -20
  122. data/features/support/exotic_zero_port.rb +0 -3
  123. data/features/support/on_disk.rb +0 -7
  124. data/features/systemd_unit.feature +0 -27
  125. data/features/template.feature +0 -13
  126. data/features/use_inline_resources.feature +0 -7
  127. data/features/user.feature +0 -15
  128. data/features/windows_package.feature +0 -11
  129. data/features/windows_service.feature +0 -16
  130. data/features/yum_package.feature +0 -13
  131. data/features/yum_repository.feature +0 -23
  132. data/features/zypper_package.feature +0 -13
  133. data/lib/chefspec/api/apt_package.rb +0 -192
  134. data/lib/chefspec/api/apt_repository.rb +0 -56
  135. data/lib/chefspec/api/apt_update.rb +0 -53
  136. data/lib/chefspec/api/batch.rb +0 -43
  137. data/lib/chefspec/api/bff_package.rb +0 -154
  138. data/lib/chefspec/api/cab_package.rb +0 -80
  139. data/lib/chefspec/api/chef_gem.rb +0 -191
  140. data/lib/chefspec/api/chocolatey_package.rb +0 -107
  141. data/lib/chefspec/api/cookbook_file.rb +0 -166
  142. data/lib/chefspec/api/cron.rb +0 -80
  143. data/lib/chefspec/api/deploy.rb +0 -117
  144. data/lib/chefspec/api/directory.rb +0 -80
  145. data/lib/chefspec/api/dnf_package.rb +0 -154
  146. data/lib/chefspec/api/dpkg_package.rb +0 -117
  147. data/lib/chefspec/api/dsc_resource.rb +0 -49
  148. data/lib/chefspec/api/dsc_script.rb +0 -37
  149. data/lib/chefspec/api/easy_install_package.rb +0 -154
  150. data/lib/chefspec/api/env.rb +0 -117
  151. data/lib/chefspec/api/erl_call.rb +0 -43
  152. data/lib/chefspec/api/execute.rb +0 -43
  153. data/lib/chefspec/api/file.rb +0 -166
  154. data/lib/chefspec/api/freebsd_package.rb +0 -80
  155. data/lib/chefspec/api/gem_package.rb +0 -191
  156. data/lib/chefspec/api/git.rb +0 -117
  157. data/lib/chefspec/api/group.rb +0 -154
  158. data/lib/chefspec/api/homebrew_package.rb +0 -154
  159. data/lib/chefspec/api/http_request.rb +0 -228
  160. data/lib/chefspec/api/ifconfig.rb +0 -154
  161. data/lib/chefspec/api/ips_package.rb +0 -117
  162. data/lib/chefspec/api/launchd.rb +0 -151
  163. data/lib/chefspec/api/log.rb +0 -43
  164. data/lib/chefspec/api/macports_package.rb +0 -154
  165. data/lib/chefspec/api/mdadm.rb +0 -117
  166. data/lib/chefspec/api/mount.rb +0 -192
  167. data/lib/chefspec/api/msu_package.rb +0 -81
  168. data/lib/chefspec/api/ohai.rb +0 -43
  169. data/lib/chefspec/api/openbsd_package.rb +0 -155
  170. data/lib/chefspec/api/osx_profile.rb +0 -63
  171. data/lib/chefspec/api/package.rb +0 -192
  172. data/lib/chefspec/api/pacman_package.rb +0 -155
  173. data/lib/chefspec/api/paludis_package.rb +0 -155
  174. data/lib/chefspec/api/portage_package.rb +0 -155
  175. data/lib/chefspec/api/powershell_script.rb +0 -43
  176. data/lib/chefspec/api/registry_key.rb +0 -166
  177. data/lib/chefspec/api/remote_directory.rb +0 -120
  178. data/lib/chefspec/api/remote_file.rb +0 -166
  179. data/lib/chefspec/api/route.rb +0 -80
  180. data/lib/chefspec/api/rpm_package.rb +0 -117
  181. data/lib/chefspec/api/ruby_block.rb +0 -68
  182. data/lib/chefspec/api/script.rb +0 -278
  183. data/lib/chefspec/api/service.rb +0 -246
  184. data/lib/chefspec/api/smartos_package.rb +0 -117
  185. data/lib/chefspec/api/solaris_package.rb +0 -117
  186. data/lib/chefspec/api/subversion.rb +0 -154
  187. data/lib/chefspec/api/systemd_unit.rb +0 -353
  188. data/lib/chefspec/api/template.rb +0 -166
  189. data/lib/chefspec/api/windows_package.rb +0 -86
  190. data/lib/chefspec/api/windows_service.rb +0 -286
  191. data/lib/chefspec/api/yum_package.rb +0 -154
  192. data/lib/chefspec/api/yum_repository.rb +0 -130
  193. data/lib/chefspec/api/zypper_package.rb +0 -154
  194. data/spec/unit/api_spec.rb +0 -18
@@ -1,246 +0,0 @@
1
- module ChefSpec::API
2
- # @since 0.0.1
3
- module ServiceMatchers
4
- ChefSpec.define_matcher :service
5
-
6
- #
7
- # Assert that a +service+ resource exists in the Chef run with the
8
- # action +:disable+. Given a Chef Recipe that disables "apache2" as a
9
- # +service+:
10
- #
11
- # service 'apache2' do
12
- # action :disable
13
- # end
14
- #
15
- # To test the content rendered by a +service+, see
16
- # {ChefSpec::API::RenderFileMatchers}.
17
- #
18
- # The Examples section demonstrates the different ways to test a
19
- # +service+ resource with ChefSpec.
20
- #
21
- # @example Assert that a +service+ was disabled
22
- # expect(chef_run).to disable_service('apache2')
23
- #
24
- # @example Assert that a +service+ was disabled with predicate matchers
25
- # expect(chef_run).to disable_service('apache2').with_pattern('apa*')
26
- #
27
- # @example Assert that a +service+ was disabled with attributes
28
- # expect(chef_run).to disable_service('apache2').with(pattern: 'apa*')
29
- #
30
- # @example Assert that a +service+ was disabled using a regex
31
- # expect(chef_run).to disable_service('apache2').with(patthen: /(.+)/)
32
- #
33
- # @example Assert that a +service+ was _not_ disabled
34
- # expect(chef_run).to_not disable_service('apache2')
35
- #
36
- #
37
- # @param [String, Regex] resource_name
38
- # the name of the resource to match
39
- #
40
- # @return [ChefSpec::Matchers::ResourceMatcher]
41
- #
42
- def disable_service(resource_name)
43
- ChefSpec::Matchers::ResourceMatcher.new(:service, :disable, resource_name)
44
- end
45
-
46
- #
47
- # Assert that a +service+ resource exists in the Chef run with the
48
- # action +:enable+. Given a Chef Recipe that enables "apache2" as a
49
- # +service+:
50
- #
51
- # service 'apache2' do
52
- # action :enable
53
- # end
54
- #
55
- # To test the content rendered by a +service+, see
56
- # {ChefSpec::API::RenderFileMatchers}.
57
- #
58
- # The Examples section demonstrates the different ways to test a
59
- # +service+ resource with ChefSpec.
60
- #
61
- # @example Assert that a +service+ was enabled
62
- # expect(chef_run).to enable_service('apache2')
63
- #
64
- # @example Assert that a +service+ was enabled with predicate matchers
65
- # expect(chef_run).to enable_service('apache2').with_pattern('apa*')
66
- #
67
- # @example Assert that a +service+ was enabled with attributes
68
- # expect(chef_run).to enable_service('apache2').with(pattern: 'apa*')
69
- #
70
- # @example Assert that a +service+ was enabled using a regex
71
- # expect(chef_run).to enable_service('apache2').with(patthen: /(.+)/)
72
- #
73
- # @example Assert that a +service+ was _not_ enabled
74
- # expect(chef_run).to_not enable_service('apache2')
75
- #
76
- #
77
- # @param [String, Regex] resource_name
78
- # the name of the resource to match
79
- #
80
- # @return [ChefSpec::Matchers::ResourceMatcher]
81
- #
82
- def enable_service(resource_name)
83
- ChefSpec::Matchers::ResourceMatcher.new(:service, :enable, resource_name)
84
- end
85
-
86
- #
87
- # Assert that a +service+ resource exists in the Chef run with the
88
- # action +:reload+. Given a Chef Recipe that reloads "apache2" as a
89
- # +service+:
90
- #
91
- # service 'apache2' do
92
- # action :reload
93
- # end
94
- #
95
- # To test the content rendered by a +service+, see
96
- # {ChefSpec::API::RenderFileMatchers}.
97
- #
98
- # The Examples section demonstrates the different ways to test a
99
- # +service+ resource with ChefSpec.
100
- #
101
- # @example Assert that a +service+ was reload
102
- # expect(chef_run).to reload_service('apache2')
103
- #
104
- # @example Assert that a +service+ was reload with predicate matchers
105
- # expect(chef_run).to reload_service('apache2').with_pattern('apa*')
106
- #
107
- # @example Assert that a +service+ was reload with attributes
108
- # expect(chef_run).to reload_service('apache2').with(pattern: 'apa*')
109
- #
110
- # @example Assert that a +service+ was reload using a regex
111
- # expect(chef_run).to reload_service('apache2').with(patthen: /(.+)/)
112
- #
113
- # @example Assert that a +service+ was _not_ reload
114
- # expect(chef_run).to_not reload_service('apache2')
115
- #
116
- #
117
- # @param [String, Regex] resource_name
118
- # the name of the resource to match
119
- #
120
- # @return [ChefSpec::Matchers::ResourceMatcher]
121
- #
122
- def reload_service(resource_name)
123
- ChefSpec::Matchers::ResourceMatcher.new(:service, :reload, resource_name)
124
- end
125
-
126
- #
127
- # Assert that a +service+ resource exists in the Chef run with the
128
- # action +:restart+. Given a Chef Recipe that restarts "apache2" as a
129
- # +service+:
130
- #
131
- # service 'apache2' do
132
- # action :restart
133
- # end
134
- #
135
- # To test the content rendered by a +service+, see
136
- # {ChefSpec::API::RenderFileMatchers}.
137
- #
138
- # The Examples section demonstrates the different ways to test a
139
- # +service+ resource with ChefSpec.
140
- #
141
- # @example Assert that a +service+ was restarted
142
- # expect(chef_run).to restart_service('apache2')
143
- #
144
- # @example Assert that a +service+ was restarted with predicate matchers
145
- # expect(chef_run).to restart_service('apache2').with_pattern('apa*')
146
- #
147
- # @example Assert that a +service+ was restarted with attributes
148
- # expect(chef_run).to restart_service('apache2').with(pattern: 'apa*')
149
- #
150
- # @example Assert that a +service+ was restarted using a regex
151
- # expect(chef_run).to restart_service('apache2').with(patthen: /(.+)/)
152
- #
153
- # @example Assert that a +service+ was _not_ restarted
154
- # expect(chef_run).to_not restart_service('apache2')
155
- #
156
- #
157
- # @param [String, Regex] resource_name
158
- # the name of the resource to match
159
- #
160
- # @return [ChefSpec::Matchers::ResourceMatcher]
161
- #
162
- def restart_service(resource_name)
163
- ChefSpec::Matchers::ResourceMatcher.new(:service, :restart, resource_name)
164
- end
165
-
166
- #
167
- # Assert that a +service+ resource exists in the Chef run with the
168
- # action +:start+. Given a Chef Recipe that starts "apache2" as a
169
- # +service+:
170
- #
171
- # service 'apache2' do
172
- # action :start
173
- # end
174
- #
175
- # To test the content rendered by a +service+, see
176
- # {ChefSpec::API::RenderFileMatchers}.
177
- #
178
- # The Examples section demonstrates the different ways to test a
179
- # +service+ resource with ChefSpec.
180
- #
181
- # @example Assert that a +service+ was started
182
- # expect(chef_run).to start_service('apache2')
183
- #
184
- # @example Assert that a +service+ was started with predicate matchers
185
- # expect(chef_run).to start_service('apache2').with_pattern('apa*')
186
- #
187
- # @example Assert that a +service+ was started with attributes
188
- # expect(chef_run).to start_service('apache2').with(pattern: 'apa*')
189
- #
190
- # @example Assert that a +service+ was started using a regex
191
- # expect(chef_run).to start_service('apache2').with(patthen: /(.+)/)
192
- #
193
- # @example Assert that a +service+ was _not_ started
194
- # expect(chef_run).to_not start_service('apache2')
195
- #
196
- #
197
- # @param [String, Regex] resource_name
198
- # the name of the resource to match
199
- #
200
- # @return [ChefSpec::Matchers::ResourceMatcher]
201
- #
202
- def start_service(resource_name)
203
- ChefSpec::Matchers::ResourceMatcher.new(:service, :start, resource_name)
204
- end
205
-
206
- #
207
- # Assert that a +service+ resource exists in the Chef run with the
208
- # action +:stop+. Given a Chef Recipe that stops "apache2" as a
209
- # +service+:
210
- #
211
- # service 'apache2' do
212
- # action :stop
213
- # end
214
- #
215
- # To test the content rendered by a +service+, see
216
- # {ChefSpec::API::RenderFileMatchers}.
217
- #
218
- # The Examples section demonstrates the different ways to test a
219
- # +service+ resource with ChefSpec.
220
- #
221
- # @example Assert that a +service+ was stopped
222
- # expect(chef_run).to stop_service('apache2')
223
- #
224
- # @example Assert that a +service+ was stopped with predicate matchers
225
- # expect(chef_run).to stop_service('apache2').with_pattern('apa*')
226
- #
227
- # @example Assert that a +service+ was stopped with attributes
228
- # expect(chef_run).to stop_service('apache2').with(pattern: 'apa*')
229
- #
230
- # @example Assert that a +service+ was stopped using a regex
231
- # expect(chef_run).to stop_service('apache2').with(patthen: /(.+)/)
232
- #
233
- # @example Assert that a +service+ was _not_ stopped
234
- # expect(chef_run).to_not stop_service('apache2')
235
- #
236
- #
237
- # @param [String, Regex] resource_name
238
- # the name of the resource to match
239
- #
240
- # @return [ChefSpec::Matchers::ResourceMatcher]
241
- #
242
- def stop_service(resource_name)
243
- ChefSpec::Matchers::ResourceMatcher.new(:service, :stop, resource_name)
244
- end
245
- end
246
- end
@@ -1,117 +0,0 @@
1
- module ChefSpec::API
2
- # @since 3.0.0
3
- module SmartosPackageMatchers
4
- ChefSpec.define_matcher :smartos_package
5
-
6
- #
7
- # Assert that a +smartos_package+ resource exists in the Chef run with the
8
- # action +:install+. Given a Chef Recipe that installs "apache2" as a
9
- # +smartos_package+:
10
- #
11
- # smartos_package 'apache2' do
12
- # action :install
13
- # end
14
- #
15
- # The Examples section demonstrates the different ways to test a
16
- # +smartos_package+ resource with ChefSpec.
17
- #
18
- # @example Assert that a +smartos_package+ was installed
19
- # expect(chef_run).to install_smartos_package('apache2')
20
- #
21
- # @example Assert that a +smartos_package+ was installed with predicate matchers
22
- # expect(chef_run).to install_smartos_package('apache2').with_version('1.2.3')
23
- #
24
- # @example Assert that a +smartos_package+ was installed with attributes
25
- # expect(chef_run).to install_smartos_package('apache2').with(version: '1.2.3')
26
- #
27
- # @example Assert that a +smartos_package+ was installed using a regex
28
- # expect(chef_run).to install_smartos_package('apache2').with(version: /(\d+\.){2}\.\d+/)
29
- #
30
- # @example Assert that a +smartos_package+ was _not_ installed
31
- # expect(chef_run).to_not install_smartos_package('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 install_smartos_package(resource_name)
40
- ChefSpec::Matchers::ResourceMatcher.new(:smartos_package, :install, resource_name)
41
- end
42
-
43
- #
44
- # Assert that a +smartos_package+ resource exists in the Chef run with the
45
- # action +:remove+. Given a Chef Recipe that removes "apache2" as a
46
- # +smartos_package+:
47
- #
48
- # smartos_package 'apache2' do
49
- # action :remove
50
- # end
51
- #
52
- # The Examples section demonstrates the different ways to test a
53
- # +smartos_package+ resource with ChefSpec.
54
- #
55
- # @example Assert that a +smartos_package+ was removed
56
- # expect(chef_run).to remove_smartos_package('apache2')
57
- #
58
- # @example Assert that a +smartos_package+ was removed with predicate matchers
59
- # expect(chef_run).to remove_smartos_package('apache2').with_version('1.2.3')
60
- #
61
- # @example Assert that a +smartos_package+ was removed with attributes
62
- # expect(chef_run).to remove_smartos_package('apache2').with(version: '1.2.3')
63
- #
64
- # @example Assert that a +smartos_package+ was removed using a regex
65
- # expect(chef_run).to remove_smartos_package('apache2').with(version: /(\d+\.){2}\.\d+/)
66
- #
67
- # @example Assert that a +smartos_package+ was _not_ removed
68
- # expect(chef_run).to_not remove_smartos_package('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 remove_smartos_package(resource_name)
77
- ChefSpec::Matchers::ResourceMatcher.new(:smartos_package, :remove, resource_name)
78
- end
79
-
80
- #
81
- # Assert that a +smartos_package+ resource exists in the Chef run with the
82
- # action +:upgrade+. Given a Chef Recipe that upgrades "apache2" as a
83
- # +smartos_package+:
84
- #
85
- # smartos_package 'apache2' do
86
- # action :upgrade
87
- # end
88
- #
89
- # The Examples section demonstrates the different ways to test a
90
- # +smartos_package+ resource with ChefSpec.
91
- #
92
- # @example Assert that a +smartos_package+ was upgraded
93
- # expect(chef_run).to upgrade_smartos_package('apache2')
94
- #
95
- # @example Assert that a +smartos_package+ was upgraded with predicate matchers
96
- # expect(chef_run).to upgrade_smartos_package('apache2').with_version('1.2.3')
97
- #
98
- # @example Assert that a +smartos_package+ was upgraded with attributes
99
- # expect(chef_run).to upgrade_smartos_package('apache2').with(version: '1.2.3')
100
- #
101
- # @example Assert that a +smartos_package+ was upgraded using a regex
102
- # expect(chef_run).to upgrade_smartos_package('apache2').with(version: /(\d+\.){2}\.\d+/)
103
- #
104
- # @example Assert that a +smartos_package+ was _not_ upgraded
105
- # expect(chef_run).to_not upgrade_smartos_package('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 upgrade_smartos_package(resource_name)
114
- ChefSpec::Matchers::ResourceMatcher.new(:smartos_package, :upgrade, resource_name)
115
- end
116
- end
117
- end
@@ -1,117 +0,0 @@
1
- module ChefSpec::API
2
- # @since 3.0.0
3
- module SolarisPackageMatchers
4
- ChefSpec.define_matcher :solaris_package
5
-
6
- #
7
- # Assert that a +solaris_package+ resource exists in the Chef run with the
8
- # action +:install+. Given a Chef Recipe that installs "apache2" as a
9
- # +solaris_package+:
10
- #
11
- # solaris_package 'apache2' do
12
- # action :install
13
- # end
14
- #
15
- # The Examples section demonstrates the different ways to test a
16
- # +solaris_package+ resource with ChefSpec.
17
- #
18
- # @example Assert that a +solaris_package+ was installed
19
- # expect(chef_run).to install_solaris_package('apache2')
20
- #
21
- # @example Assert that a +solaris_package+ was installed with predicate matchers
22
- # expect(chef_run).to install_solaris_package('apache2').with_version('1.2.3')
23
- #
24
- # @example Assert that a +solaris_package+ was installed with attributes
25
- # expect(chef_run).to install_solaris_package('apache2').with(version: '1.2.3')
26
- #
27
- # @example Assert that a +solaris_package+ was installed using a regex
28
- # expect(chef_run).to install_solaris_package('apache2').with(version: /(\d+\.){2}\.\d+/)
29
- #
30
- # @example Assert that a +solaris_package+ was _not_ installed
31
- # expect(chef_run).to_not install_solaris_package('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 install_solaris_package(resource_name)
40
- ChefSpec::Matchers::ResourceMatcher.new(:solaris_package, :install, resource_name)
41
- end
42
-
43
- #
44
- # Assert that a +solaris_package+ resource exists in the Chef run with the
45
- # action +:remove+. Given a Chef Recipe that removes "apache2" as a
46
- # +solaris_package+:
47
- #
48
- # solaris_package 'apache2' do
49
- # action :remove
50
- # end
51
- #
52
- # The Examples section demonstrates the different ways to test a
53
- # +solaris_package+ resource with ChefSpec.
54
- #
55
- # @example Assert that a +solaris_package+ was removed
56
- # expect(chef_run).to remove_solaris_package('apache2')
57
- #
58
- # @example Assert that a +solaris_package+ was removed with predicate matchers
59
- # expect(chef_run).to remove_solaris_package('apache2').with_version('1.2.3')
60
- #
61
- # @example Assert that a +solaris_package+ was removed with attributes
62
- # expect(chef_run).to remove_solaris_package('apache2').with(version: '1.2.3')
63
- #
64
- # @example Assert that a +solaris_package+ was removed using a regex
65
- # expect(chef_run).to remove_solaris_package('apache2').with(version: /(\d+\.){2}\.\d+/)
66
- #
67
- # @example Assert that a +solaris_package+ was _not_ removed
68
- # expect(chef_run).to_not remove_solaris_package('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 remove_solaris_package(resource_name)
77
- ChefSpec::Matchers::ResourceMatcher.new(:solaris_package, :remove, resource_name)
78
- end
79
-
80
- #
81
- # Assert that an +solaris_package+ resource exists in the Chef run with the
82
- # action +:upgrade+. Given a Chef Recipe that upgrades "apache2" as an
83
- # +solaris_package+:
84
- #
85
- # solaris_package 'apache2' do
86
- # action :upgrade
87
- # end
88
- #
89
- # The Examples section demonstrates the different ways to test an
90
- # +solaris_package+ resource with ChefSpec.
91
- #
92
- # @example Assert that an +solaris_package+ was upgradeed
93
- # expect(chef_run).to upgrade_solaris_package('apache2')
94
- #
95
- # @example Assert that an +solaris_package+ was upgradeed with predicate matchers
96
- # expect(chef_run).to upgrade_solaris_package('apache2').with_version('1.2.3')
97
- #
98
- # @example Assert that an +solaris_package+ was upgradeed with attributes
99
- # expect(chef_run).to upgrade_solaris_package('apache2').with(version: '1.2.3')
100
- #
101
- # @example Assert that an +solaris_package+ was upgradeed using a regex
102
- # expect(chef_run).to upgrade_solaris_package('apache2').with(version: /(\d+\.){2}\.\d+/)
103
- #
104
- # @example Assert that an +solaris_package+ was _not_ upgradeed
105
- # expect(chef_run).to_not upgrade_solaris_package('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 upgrade_solaris_package(resource_name)
114
- ChefSpec::Matchers::ResourceMatcher.new(:solaris_package, :upgrade, resource_name)
115
- end
116
- end
117
- end