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
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
module ChefSpec::API
|
|
2
|
-
# @since 3.0.0
|
|
3
|
-
module YumPackageMatchers
|
|
4
|
-
ChefSpec.define_matcher :yum_package
|
|
5
|
-
|
|
6
|
-
#
|
|
7
|
-
# Assert that a +yum_package+ resource exists in the Chef run with the
|
|
8
|
-
# action +:install+. Given a Chef Recipe that installs "apache2" as a
|
|
9
|
-
# +yum_package+:
|
|
10
|
-
#
|
|
11
|
-
# yum_package 'apache2' do
|
|
12
|
-
# action :install
|
|
13
|
-
# end
|
|
14
|
-
#
|
|
15
|
-
# The Examples section demonstrates the different ways to test a
|
|
16
|
-
# +yum_package+ resource with ChefSpec.
|
|
17
|
-
#
|
|
18
|
-
# @example Assert that a +yum_package+ was installed
|
|
19
|
-
# expect(chef_run).to install_yum_package('apache2')
|
|
20
|
-
#
|
|
21
|
-
# @example Assert that a +yum_package+ was installed with predicate matchers
|
|
22
|
-
# expect(chef_run).to install_yum_package('apache2').with_version('1.2.3')
|
|
23
|
-
#
|
|
24
|
-
# @example Assert that a +yum_package+ was installed with attributes
|
|
25
|
-
# expect(chef_run).to install_yum_package('apache2').with(version: '1.2.3')
|
|
26
|
-
#
|
|
27
|
-
# @example Assert that a +yum_package+ was installed using a regex
|
|
28
|
-
# expect(chef_run).to install_yum_package('apache2').with(version: /(\d+\.){2}\.\d+/)
|
|
29
|
-
#
|
|
30
|
-
# @example Assert that a +yum_package+ was _not_ installed
|
|
31
|
-
# expect(chef_run).to_not install_yum_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_yum_package(resource_name)
|
|
40
|
-
ChefSpec::Matchers::ResourceMatcher.new(:yum_package, :install, resource_name)
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
#
|
|
44
|
-
# Assert that a +yum_package+ resource exists in the Chef run with the
|
|
45
|
-
# action +:purge+. Given a Chef Recipe that purges "apache2" as a
|
|
46
|
-
# +yum_package+:
|
|
47
|
-
#
|
|
48
|
-
# yum_package 'apache2' do
|
|
49
|
-
# action :purge
|
|
50
|
-
# end
|
|
51
|
-
#
|
|
52
|
-
# The Examples section demonstrates the different ways to test a
|
|
53
|
-
# +yum_package+ resource with ChefSpec.
|
|
54
|
-
#
|
|
55
|
-
# @example Assert that a +yum_package+ was purged
|
|
56
|
-
# expect(chef_run).to purge_yum_package('apache2')
|
|
57
|
-
#
|
|
58
|
-
# @example Assert that a +yum_package+ was purged with predicate matchers
|
|
59
|
-
# expect(chef_run).to purge_yum_package('apache2').with_version('1.2.3')
|
|
60
|
-
#
|
|
61
|
-
# @example Assert that a +yum_package+ was purged with attributes
|
|
62
|
-
# expect(chef_run).to purge_yum_package('apache2').with(version: '1.2.3')
|
|
63
|
-
#
|
|
64
|
-
# @example Assert that a +yum_package+ was purged using a regex
|
|
65
|
-
# expect(chef_run).to purge_yum_package('apache2').with(version: /(\d+\.){2}\.\d+/)
|
|
66
|
-
#
|
|
67
|
-
# @example Assert that a +yum_package+ was _not_ purged
|
|
68
|
-
# expect(chef_run).to_not purge_yum_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 purge_yum_package(resource_name)
|
|
77
|
-
ChefSpec::Matchers::ResourceMatcher.new(:yum_package, :purge, resource_name)
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
#
|
|
81
|
-
# Assert that a +yum_package+ resource exists in the Chef run with the
|
|
82
|
-
# action +:remove+. Given a Chef Recipe that removes "apache2" as a
|
|
83
|
-
# +yum_package+:
|
|
84
|
-
#
|
|
85
|
-
# yum_package 'apache2' do
|
|
86
|
-
# action :remove
|
|
87
|
-
# end
|
|
88
|
-
#
|
|
89
|
-
# The Examples section demonstrates the different ways to test a
|
|
90
|
-
# +yum_package+ resource with ChefSpec.
|
|
91
|
-
#
|
|
92
|
-
# @example Assert that a +yum_package+ was removed
|
|
93
|
-
# expect(chef_run).to remove_yum_package('apache2')
|
|
94
|
-
#
|
|
95
|
-
# @example Assert that a +yum_package+ was removed with predicate matchers
|
|
96
|
-
# expect(chef_run).to remove_yum_package('apache2').with_version('1.2.3')
|
|
97
|
-
#
|
|
98
|
-
# @example Assert that a +yum_package+ was removed with attributes
|
|
99
|
-
# expect(chef_run).to remove_yum_package('apache2').with(version: '1.2.3')
|
|
100
|
-
#
|
|
101
|
-
# @example Assert that a +yum_package+ was removed using a regex
|
|
102
|
-
# expect(chef_run).to remove_yum_package('apache2').with(version: /(\d+\.){2}\.\d+/)
|
|
103
|
-
#
|
|
104
|
-
# @example Assert that a +yum_package+ was _not_ removed
|
|
105
|
-
# expect(chef_run).to_not remove_yum_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 remove_yum_package(resource_name)
|
|
114
|
-
ChefSpec::Matchers::ResourceMatcher.new(:yum_package, :remove, resource_name)
|
|
115
|
-
end
|
|
116
|
-
|
|
117
|
-
#
|
|
118
|
-
# Assert that a +yum_package+ resource exists in the Chef run with the
|
|
119
|
-
# action +:upgrade+. Given a Chef Recipe that upgrades "apache2" as a
|
|
120
|
-
# +yum_package+:
|
|
121
|
-
#
|
|
122
|
-
# yum_package 'apache2' do
|
|
123
|
-
# action :upgrade
|
|
124
|
-
# end
|
|
125
|
-
#
|
|
126
|
-
# The Examples section demonstrates the different ways to test a
|
|
127
|
-
# +yum_package+ resource with ChefSpec.
|
|
128
|
-
#
|
|
129
|
-
# @example Assert that a +yum_package+ was upgraded
|
|
130
|
-
# expect(chef_run).to upgrade_yum_package('apache2')
|
|
131
|
-
#
|
|
132
|
-
# @example Assert that a +yum_package+ was upgraded with predicate matchers
|
|
133
|
-
# expect(chef_run).to upgrade_yum_package('apache2').with_version('1.2.3')
|
|
134
|
-
#
|
|
135
|
-
# @example Assert that a +yum_package+ was upgraded with attributes
|
|
136
|
-
# expect(chef_run).to upgrade_yum_package('apache2').with(version: '1.2.3')
|
|
137
|
-
#
|
|
138
|
-
# @example Assert that a +yum_package+ was upgraded using a regex
|
|
139
|
-
# expect(chef_run).to upgrade_yum_package('apache2').with(version: /(\d+\.){2}\.\d+/)
|
|
140
|
-
#
|
|
141
|
-
# @example Assert that a +yum_package+ was _not_ upgraded
|
|
142
|
-
# expect(chef_run).to_not upgrade_yum_package('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 upgrade_yum_package(resource_name)
|
|
151
|
-
ChefSpec::Matchers::ResourceMatcher.new(:yum_package, :upgrade, resource_name)
|
|
152
|
-
end
|
|
153
|
-
end
|
|
154
|
-
end
|
|
@@ -1,130 +0,0 @@
|
|
|
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 creates "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 +:add+. Given a Chef Recipe that adds "epel" as an
|
|
35
|
-
# +yum_repository+:
|
|
36
|
-
#
|
|
37
|
-
# yum_repository 'epel' do
|
|
38
|
-
# baseurl "http://mirrors.fedoraproject.org/mirrorlist?repo=epel-#{node['platform_version'].to_i}&arch=$basearch"
|
|
39
|
-
# description 'Extra Packages for $releasever - $basearch'
|
|
40
|
-
# action :add
|
|
41
|
-
# end
|
|
42
|
-
#
|
|
43
|
-
# The Examples section demonstrates the different ways to test an
|
|
44
|
-
# +yum_repository+ resource with ChefSpec.
|
|
45
|
-
#
|
|
46
|
-
# @example Assert that an +yum_repository+ was added
|
|
47
|
-
# expect(chef_run).to add_yum_repository('epel')
|
|
48
|
-
# @param [String, Regex] resource_name
|
|
49
|
-
# the name of the resource to match
|
|
50
|
-
#
|
|
51
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
52
|
-
|
|
53
|
-
def add_yum_repository(resource_name)
|
|
54
|
-
ChefSpec::Matchers::ResourceMatcher.new(:yum_repository, :add,
|
|
55
|
-
resource_name)
|
|
56
|
-
end
|
|
57
|
-
|
|
58
|
-
#
|
|
59
|
-
# Assert that a +yum_repository+ resource exists in the Chef run with the
|
|
60
|
-
# action +:delete+. Given a Chef Recipe that deletes "epel" as an
|
|
61
|
-
# +yum_repository+:
|
|
62
|
-
#
|
|
63
|
-
# yum_repository 'epel' do
|
|
64
|
-
# action :delete
|
|
65
|
-
# end
|
|
66
|
-
#
|
|
67
|
-
# The Examples section demonstrates the different ways to test an
|
|
68
|
-
# +yum_repository+ resource with ChefSpec.
|
|
69
|
-
#
|
|
70
|
-
# @example Assert that an +yum_repository+ was deleted
|
|
71
|
-
# expect(chef_run).to delete_yum_repository('epel')
|
|
72
|
-
# @param [String, Regex] resource_name
|
|
73
|
-
# the name of the resource to match
|
|
74
|
-
#
|
|
75
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
76
|
-
|
|
77
|
-
def delete_yum_repository(resource_name)
|
|
78
|
-
ChefSpec::Matchers::ResourceMatcher.new(:yum_repository, :delete,
|
|
79
|
-
resource_name)
|
|
80
|
-
end
|
|
81
|
-
|
|
82
|
-
#
|
|
83
|
-
# Assert that a +yum_repository+ resource exists in the Chef run with the
|
|
84
|
-
# action +:remove+. Given a Chef Recipe that removes "epel" as an
|
|
85
|
-
# +yum_repository+:
|
|
86
|
-
#
|
|
87
|
-
# yum_repository 'epel' do
|
|
88
|
-
# action :remove
|
|
89
|
-
# end
|
|
90
|
-
#
|
|
91
|
-
# The Examples section demonstrates the different ways to test an
|
|
92
|
-
# +yum_repository+ resource with ChefSpec.
|
|
93
|
-
#
|
|
94
|
-
# @example Assert that an +yum_repository+ was removed
|
|
95
|
-
# expect(chef_run).to remove_yum_repository('epel')
|
|
96
|
-
# @param [String, Regex] resource_name
|
|
97
|
-
# the name of the resource to match
|
|
98
|
-
#
|
|
99
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
100
|
-
|
|
101
|
-
def remove_yum_repository(resource_name)
|
|
102
|
-
ChefSpec::Matchers::ResourceMatcher.new(:yum_repository, :remove,
|
|
103
|
-
resource_name)
|
|
104
|
-
end
|
|
105
|
-
|
|
106
|
-
#
|
|
107
|
-
# Assert that a +yum_repository+ resource exists in the Chef run with the
|
|
108
|
-
# action +:makecache+. Given a Chef Recipe that makes cache for "epel" as
|
|
109
|
-
# a +yum_repository+:
|
|
110
|
-
#
|
|
111
|
-
# yum_repository 'epel' do
|
|
112
|
-
# action :makecache
|
|
113
|
-
# end
|
|
114
|
-
#
|
|
115
|
-
# The Examples section demonstrates the different ways to test an
|
|
116
|
-
# +yum_repository+ resource with ChefSpec.
|
|
117
|
-
#
|
|
118
|
-
# @example Assert that an +yum_repository+ was make cache'd
|
|
119
|
-
# expect(chef_run).to makecache_yum_repository('epel')
|
|
120
|
-
# @param [String, Regex] resource_name
|
|
121
|
-
# the name of the resource to match
|
|
122
|
-
#
|
|
123
|
-
# @return [ChefSpec::Matchers::ResourceMatcher]
|
|
124
|
-
|
|
125
|
-
def makecache_yum_repository(resource_name)
|
|
126
|
-
ChefSpec::Matchers::ResourceMatcher.new(:yum_repository, :makecache,
|
|
127
|
-
resource_name)
|
|
128
|
-
end
|
|
129
|
-
end
|
|
130
|
-
end
|
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
module ChefSpec::API
|
|
2
|
-
# @since 5.1.0
|
|
3
|
-
module ZypperPackageMatchers
|
|
4
|
-
ChefSpec.define_matcher :zypper_package
|
|
5
|
-
|
|
6
|
-
#
|
|
7
|
-
# Assert that a +zypper_package+ resource exists in the Chef run with the
|
|
8
|
-
# action +:install+. Given a Chef Recipe that installs "apache2" as a
|
|
9
|
-
# +zypper_package+:
|
|
10
|
-
#
|
|
11
|
-
# zypper_package 'apache2' do
|
|
12
|
-
# action :install
|
|
13
|
-
# end
|
|
14
|
-
#
|
|
15
|
-
# The Examples section demonstrates the different ways to test a
|
|
16
|
-
# +zypper_package+ resource with ChefSpec.
|
|
17
|
-
#
|
|
18
|
-
# @example Assert that a +zypper_package+ was installed
|
|
19
|
-
# expect(chef_run).to install_zypper_package('apache2')
|
|
20
|
-
#
|
|
21
|
-
# @example Assert that a +zypper_package+ was installed with predicate matchers
|
|
22
|
-
# expect(chef_run).to install_zypper_package('apache2').with_version('1.2.3')
|
|
23
|
-
#
|
|
24
|
-
# @example Assert that a +zypper_package+ was installed with attributes
|
|
25
|
-
# expect(chef_run).to install_zypper_package('apache2').with(version: '1.2.3')
|
|
26
|
-
#
|
|
27
|
-
# @example Assert that a +zypper_package+ was installed using a regex
|
|
28
|
-
# expect(chef_run).to install_zypper_package('apache2').with(version: /(\d+\.){2}\.\d+/)
|
|
29
|
-
#
|
|
30
|
-
# @example Assert that a +zypper_package+ was _not_ installed
|
|
31
|
-
# expect(chef_run).to_not install_zypper_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_zypper_package(resource_name)
|
|
40
|
-
ChefSpec::Matchers::ResourceMatcher.new(:zypper_package, :install, resource_name)
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
#
|
|
44
|
-
# Assert that a +zypper_package+ resource exists in the Chef run with the
|
|
45
|
-
# action +:purge+. Given a Chef Recipe that purges "apache2" as a
|
|
46
|
-
# +zypper_package+:
|
|
47
|
-
#
|
|
48
|
-
# zypper_package 'apache2' do
|
|
49
|
-
# action :purge
|
|
50
|
-
# end
|
|
51
|
-
#
|
|
52
|
-
# The Examples section demonstrates the different ways to test a
|
|
53
|
-
# +zypper_package+ resource with ChefSpec.
|
|
54
|
-
#
|
|
55
|
-
# @example Assert that a +zypper_package+ was purged
|
|
56
|
-
# expect(chef_run).to purge_zypper_package('apache2')
|
|
57
|
-
#
|
|
58
|
-
# @example Assert that a +zypper_package+ was purged with predicate matchers
|
|
59
|
-
# expect(chef_run).to purge_zypper_package('apache2').with_version('1.2.3')
|
|
60
|
-
#
|
|
61
|
-
# @example Assert that a +zypper_package+ was purged with attributes
|
|
62
|
-
# expect(chef_run).to purge_zypper_package('apache2').with(version: '1.2.3')
|
|
63
|
-
#
|
|
64
|
-
# @example Assert that a +zypper_package+ was purged using a regex
|
|
65
|
-
# expect(chef_run).to purge_zypper_package('apache2').with(version: /(\d+\.){2}\.\d+/)
|
|
66
|
-
#
|
|
67
|
-
# @example Assert that a +zypper_package+ was _not_ purged
|
|
68
|
-
# expect(chef_run).to_not purge_zypper_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 purge_zypper_package(resource_name)
|
|
77
|
-
ChefSpec::Matchers::ResourceMatcher.new(:zypper_package, :purge, resource_name)
|
|
78
|
-
end
|
|
79
|
-
|
|
80
|
-
#
|
|
81
|
-
# Assert that a +zypper_package+ resource exists in the Chef run with the
|
|
82
|
-
# action +:remove+. Given a Chef Recipe that removes "apache2" as a
|
|
83
|
-
# +zypper_package+:
|
|
84
|
-
#
|
|
85
|
-
# zypper_package 'apache2' do
|
|
86
|
-
# action :remove
|
|
87
|
-
# end
|
|
88
|
-
#
|
|
89
|
-
# The Examples section demonstrates the different ways to test a
|
|
90
|
-
# +zypper_package+ resource with ChefSpec.
|
|
91
|
-
#
|
|
92
|
-
# @example Assert that a +zypper_package+ was removed
|
|
93
|
-
# expect(chef_run).to remove_zypper_package('apache2')
|
|
94
|
-
#
|
|
95
|
-
# @example Assert that a +zypper_package+ was removed with predicate matchers
|
|
96
|
-
# expect(chef_run).to remove_zypper_package('apache2').with_version('1.2.3')
|
|
97
|
-
#
|
|
98
|
-
# @example Assert that a +zypper_package+ was removed with attributes
|
|
99
|
-
# expect(chef_run).to remove_zypper_package('apache2').with(version: '1.2.3')
|
|
100
|
-
#
|
|
101
|
-
# @example Assert that a +zypper_package+ was removed using a regex
|
|
102
|
-
# expect(chef_run).to remove_zypper_package('apache2').with(version: /(\d+\.){2}\.\d+/)
|
|
103
|
-
#
|
|
104
|
-
# @example Assert that a +zypper_package+ was _not_ removed
|
|
105
|
-
# expect(chef_run).to_not remove_zypper_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 remove_zypper_package(resource_name)
|
|
114
|
-
ChefSpec::Matchers::ResourceMatcher.new(:zypper_package, :remove, resource_name)
|
|
115
|
-
end
|
|
116
|
-
|
|
117
|
-
#
|
|
118
|
-
# Assert that a +zypper_package+ resource exists in the Chef run with the
|
|
119
|
-
# action +:upgrade+. Given a Chef Recipe that upgrades "apache2" as a
|
|
120
|
-
# +zypper_package+:
|
|
121
|
-
#
|
|
122
|
-
# zypper_package 'apache2' do
|
|
123
|
-
# action :upgrade
|
|
124
|
-
# end
|
|
125
|
-
#
|
|
126
|
-
# The Examples section demonstrates the different ways to test a
|
|
127
|
-
# +zypper_package+ resource with ChefSpec.
|
|
128
|
-
#
|
|
129
|
-
# @example Assert that a +zypper_package+ was upgraded
|
|
130
|
-
# expect(chef_run).to upgrade_zypper_package('apache2')
|
|
131
|
-
#
|
|
132
|
-
# @example Assert that a +zypper_package+ was upgraded with predicate matchers
|
|
133
|
-
# expect(chef_run).to upgrade_zypper_package('apache2').with_version('1.2.3')
|
|
134
|
-
#
|
|
135
|
-
# @example Assert that a +zypper_package+ was upgraded with attributes
|
|
136
|
-
# expect(chef_run).to upgrade_zypper_package('apache2').with(version: '1.2.3')
|
|
137
|
-
#
|
|
138
|
-
# @example Assert that a +zypper_package+ was upgraded using a regex
|
|
139
|
-
# expect(chef_run).to upgrade_zypper_package('apache2').with(version: /(\d+\.){2}\.\d+/)
|
|
140
|
-
#
|
|
141
|
-
# @example Assert that a +zypper_package+ was _not_ upgraded
|
|
142
|
-
# expect(chef_run).to_not upgrade_zypper_package('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 upgrade_zypper_package(resource_name)
|
|
151
|
-
ChefSpec::Matchers::ResourceMatcher.new(:zypper_package, :upgrade, resource_name)
|
|
152
|
-
end
|
|
153
|
-
end
|
|
154
|
-
end
|
data/spec/unit/api_spec.rb
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
require 'spec_helper'
|
|
2
|
-
|
|
3
|
-
describe ChefSpec::API do
|
|
4
|
-
before do
|
|
5
|
-
module ChefSpec::API
|
|
6
|
-
module CustomSubmodule
|
|
7
|
-
def custom_method; end
|
|
8
|
-
end
|
|
9
|
-
end
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
subject { Class.new { include ChefSpec::API }.new }
|
|
13
|
-
|
|
14
|
-
it 'includes all submodules in the including class' do
|
|
15
|
-
expect(subject).to be_a(ChefSpec::API::CustomSubmodule)
|
|
16
|
-
expect(subject).to respond_to(:custom_method)
|
|
17
|
-
end
|
|
18
|
-
end
|