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,12 +0,0 @@
1
- Feature: The rpm_package matcher
2
- Background:
3
- * I am using the "rpm_package" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | install |
11
- | remove |
12
- | upgrade |
@@ -1,11 +0,0 @@
1
- Feature: The ruby_block matcher
2
- Background:
3
- * I am using the "ruby_block" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | run |
11
- | create |
@@ -1,16 +0,0 @@
1
- Feature: The script matcher
2
- Background:
3
- * I am using the "script" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | run_bash |
11
- | run_csh |
12
- | run_perl |
13
- | run_python |
14
- | run_ksh |
15
- | run_ruby |
16
- | run_script |
@@ -1,16 +0,0 @@
1
- Feature: The ChefSpec server
2
- Background:
3
- * I am using the "server" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Component>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Component |
10
- | client |
11
- | data_bag |
12
- | environment |
13
- | node |
14
- | render_with_cached |
15
- | role |
16
- | search |
@@ -1,16 +0,0 @@
1
- Feature: The ChefSpec server with on-disk storage
2
- Background:
3
- * I am using the "server" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Component>_spec.rb --require ../../../features/support/on_disk.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Component |
10
- | client |
11
- | data_bag |
12
- | environment |
13
- | node |
14
- | render_with_cached |
15
- | role |
16
- | search |
@@ -1,15 +0,0 @@
1
- Feature: The service matcher
2
- Background:
3
- * I am using the "service" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | disable |
11
- | enable |
12
- | reload |
13
- | restart |
14
- | start |
15
- | stop |
@@ -1,12 +0,0 @@
1
- Feature: The smartos_package matcher
2
- Background:
3
- * I am using the "smartos_package" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | install |
11
- | remove |
12
- | upgrade |
@@ -1,12 +0,0 @@
1
- Feature: The solaris_package matcher
2
- Background:
3
- * I am using the "solaris_package" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | install |
11
- | remove |
12
- | upgrade |
@@ -1,7 +0,0 @@
1
- Feature: Testing state attributes
2
- Background:
3
- * I am using the "state_attrs" cookbook
4
-
5
- Scenario: Running the specs
6
- * I successfully run `rspec spec/default_spec.rb`
7
- * the output should contain "0 failures"
@@ -1,7 +0,0 @@
1
- Given /^I am using the "(.+)" cookbook$/ do |cookbook|
2
- source = File.join('examples', cookbook)
3
- destination = expand_path('.')
4
-
5
- FileUtils.cp_r(source, destination)
6
- cd(cookbook)
7
- end
@@ -1,7 +0,0 @@
1
- Feature: The step_into matcher
2
- Background:
3
- * I am using the "step_into" cookbook
4
-
5
- Scenario:
6
- * I successfully run `rspec spec/default_spec.rb`
7
- * the output should contain "0 failures"
@@ -1,7 +0,0 @@
1
- Feature: The stub_command matcher
2
- Background:
3
- * I am using the "stub_command" cookbook
4
-
5
- Scenario: Running specs
6
- * I successfully run `rspec spec/default_spec.rb`
7
- * the output should contain "0 failures"
@@ -1,7 +0,0 @@
1
- Feature: The stub_data_bag matcher
2
- Background:
3
- * I am using the "stub_data_bag" cookbook
4
-
5
- Scenario: Running specs
6
- * I successfully run `rspec spec/default_spec.rb`
7
- * the output should contain "0 failures"
@@ -1,7 +0,0 @@
1
- Feature: The stub_data_bag_item matcher
2
- Background:
3
- * I am using the "stub_data_bag_item" cookbook
4
-
5
- Scenario: Running specs
6
- * I successfully run `rspec spec/default_spec.rb`
7
- * the output should contain "0 failures"
@@ -1,7 +0,0 @@
1
- Feature: The stub_node matcher
2
- Background:
3
- * I am using the "stub_node" cookbook
4
-
5
- Scenario: Running specs
6
- * I successfully run `rspec spec/default_spec.rb`
7
- * the output should contain "0 failures"
@@ -1,7 +0,0 @@
1
- Feature: The stub_search matcher
2
- Background:
3
- * I am using the "stub_search" cookbook
4
-
5
- Scenario: Running specs
6
- * I successfully run `rspec spec/default_spec.rb spec/block_spec.rb`
7
- * the output should contain "0 failures"
@@ -1,14 +0,0 @@
1
- Feature: The subscribes matcher
2
- Background:
3
- * I am using the "subscribes" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | before |
11
- | chained |
12
- | default |
13
- | delayed |
14
- | immediately |
@@ -1,13 +0,0 @@
1
- Feature: The subversion matcher
2
- Background:
3
- * I am using the "subversion" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | checkout |
11
- | export |
12
- | force_export |
13
- | sync |
@@ -1,38 +0,0 @@
1
- require 'aruba'
2
- require 'aruba/cucumber'
3
- require 'aruba/in_process'
4
-
5
- require 'rspec'
6
- require 'chefspec'
7
-
8
- require_relative 'executor'
9
-
10
- Before do
11
- FileUtils.mkdir_p(expand_path('.'))
12
-
13
- # Use InProcess testing by default
14
- Aruba.configure do |config|
15
- config.command_launcher = :in_process
16
- config.main_class = ChefSpec::Executor
17
- end
18
-
19
- # Need to reload this on each run because RSpec.reset (called by the
20
- # RSpec::Runner) removes our configurations :(
21
- load 'lib/chefspec/rspec.rb'
22
-
23
- # These settings need to be specified manually here rather than in rspec.rb
24
- # because we do not want the zero-server terminating between each run. The
25
- # runs happen too quickly in succession the port doesn't have time to get reset.
26
- RSpec.configure do |config|
27
- config.before(:suite) { ChefSpec::ZeroServer.setup! }
28
- config.after(:each) { ChefSpec::ZeroServer.reset! }
29
- end
30
-
31
- # Use a temporary directory to suppress Travis warnings
32
- @dirs = [Dir.mktmpdir]
33
- end
34
-
35
- After do
36
- # Cleanup the test files
37
- FileUtils.rm_rf(@dirs.first)
38
- end
@@ -1,20 +0,0 @@
1
- require 'rspec/core'
2
-
3
- module ChefSpec
4
- #
5
- # @private
6
- # A wrapper class around RSpec for running Aruba::InProcess
7
- #
8
- class Executor
9
- def initialize(argv, stdin = STDIN, stdout = STDOUT, stderr = STDERR, kernel = Kernel)
10
- @argv, @stdin, @stdout, @stderr, @kernel = argv, stdin, stdout, stderr, kernel
11
- end
12
-
13
- def execute!
14
- exitstatus = RSpec::Core::Runner.run(@argv, @stderr, @stdout)
15
- @kernel.exit(exitstatus)
16
- ensure
17
- RSpec.reset
18
- end
19
- end
20
- end
@@ -1,3 +0,0 @@
1
- RSpec.configure do |config|
2
- config.server_runner_port = (8900..8910)
3
- end
@@ -1,7 +0,0 @@
1
- # We need to add this setting because for the first test, we haven't had a chance
2
- # to load the chefspec rspec.rb file, so the first test will fail if we simply
3
- # try to set it like we would otherwise.
4
-
5
- RSpec.configure do |config|
6
- config.add_setting :server_runner_data_store, default: :on_disk
7
- end
@@ -1,27 +0,0 @@
1
- @not_chef_12_6_0
2
- @not_chef_12_7_2
3
- @not_chef_12_8_1
4
- @not_chef_12_9_41
5
- @not_chef_12_10_24
6
-
7
- Feature: The systemd_unit matcher
8
- Background:
9
- * I am using the "systemd_unit" cookbook
10
-
11
- Scenario Outline: Running specs
12
- * I successfully run `rspec spec/<Matcher>_spec.rb`
13
- * the output should contain "0 failures"
14
- Examples:
15
- | Matcher |
16
- | create |
17
- | delete |
18
- | enable |
19
- | disable |
20
- | mask |
21
- | unmask |
22
- | start |
23
- | stop |
24
- | restart |
25
- | try_restart |
26
- | reload_or_restart |
27
- | reload_or_try_restart |
@@ -1,13 +0,0 @@
1
- Feature: The template matcher
2
- Background:
3
- * I am using the "template" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | create |
11
- | create_if_missing |
12
- | delete |
13
- | touch |
@@ -1,7 +0,0 @@
1
- Feature: Testing an LWRP with inline resources
2
- Background:
3
- * I am using the "use_inline_resources" cookbook
4
-
5
- Scenario: Running the specs
6
- * I successfully run `rspec spec/default_spec.rb`
7
- * the output should contain "0 failures"
@@ -1,15 +0,0 @@
1
- Feature: The user matcher
2
- Background:
3
- * I am using the "user" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | create |
11
- | remove |
12
- | modify |
13
- | manage |
14
- | lock |
15
- | unlock |
@@ -1,11 +0,0 @@
1
- Feature: The windows_package matcher
2
- Background:
3
- * I am using the "windows_package" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | install |
11
- | remove |
@@ -1,16 +0,0 @@
1
- Feature: The windows_service matcher
2
- Background:
3
- * I am using the "windows_service" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | configure_startup |
11
- | disable |
12
- | enable |
13
- | reload |
14
- | restart |
15
- | start |
16
- | stop |
@@ -1,13 +0,0 @@
1
- Feature: The yum_package matcher
2
- Background:
3
- * I am using the "yum_package" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | install |
11
- | purge |
12
- | remove |
13
- | upgrade |
@@ -1,23 +0,0 @@
1
- @not_chef_12_6_0
2
- @not_chef_12_7_2
3
- @not_chef_12_8_1
4
- @not_chef_12_9_41
5
- @not_chef_12_10_24
6
- @not_chef_12_11_18
7
- @not_chef_12_12_15
8
- @not_chef_12_13_37
9
-
10
- Feature: The yum_repository matcher
11
- Background:
12
- * I am using the "yum_repository" cookbook
13
-
14
- Scenario Outline: Running specs
15
- * I successfully run `rspec spec/<Matcher>_spec.rb`
16
- * the output should contain "0 failures"
17
- Examples:
18
- | Matcher |
19
- | create |
20
- | delete |
21
- | add |
22
- | remove |
23
- | makecache |
@@ -1,13 +0,0 @@
1
- Feature: The zypper_package matcher
2
- Background:
3
- * I am using the "zypper_package" cookbook
4
-
5
- Scenario Outline: Running specs
6
- * I successfully run `rspec spec/<Matcher>_spec.rb`
7
- * the output should contain "0 failures"
8
- Examples:
9
- | Matcher |
10
- | install |
11
- | purge |
12
- | remove |
13
- | upgrade |