chef 12.0.0.alpha.2 → 12.0.0.rc.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (626) hide show
  1. data/CONTRIBUTING.md +9 -0
  2. data/README.md +1 -1
  3. data/Rakefile +12 -0
  4. data/bin/chef-service-manager +1 -1
  5. data/bin/chef-windows-service +35 -0
  6. data/distro/common/html/_sources/ctl_chef_server.txt +307 -10
  7. data/distro/common/html/ctl_chef_client.html +3 -7
  8. data/distro/common/html/ctl_chef_server.html +609 -41
  9. data/distro/common/html/ctl_chef_shell.html +2 -2
  10. data/distro/common/html/ctl_chef_solo.html +1 -1
  11. data/distro/common/html/index.html +13 -13
  12. data/distro/common/html/knife.html +10 -10
  13. data/distro/common/html/knife_bootstrap.html +8 -8
  14. data/distro/common/html/knife_client.html +12 -12
  15. data/distro/common/html/knife_common_options.html +7 -7
  16. data/distro/common/html/knife_configure.html +3 -3
  17. data/distro/common/html/knife_cookbook.html +19 -19
  18. data/distro/common/html/knife_cookbook_site.html +28 -28
  19. data/distro/common/html/knife_data_bag.html +28 -13
  20. data/distro/common/html/knife_delete.html +2 -2
  21. data/distro/common/html/knife_deps.html +3 -3
  22. data/distro/common/html/knife_diff.html +4 -4
  23. data/distro/common/html/knife_download.html +3 -3
  24. data/distro/common/html/knife_edit.html +2 -2
  25. data/distro/common/html/knife_environment.html +14 -14
  26. data/distro/common/html/knife_exec.html +11 -11
  27. data/distro/common/html/knife_index_rebuild.html +2 -2
  28. data/distro/common/html/knife_list.html +3 -3
  29. data/distro/common/html/knife_node.html +23 -23
  30. data/distro/common/html/knife_raw.html +4 -4
  31. data/distro/common/html/knife_recipe_list.html +3 -3
  32. data/distro/common/html/knife_role.html +11 -11
  33. data/distro/common/html/knife_search.html +4 -4
  34. data/distro/common/html/knife_serve.html +3 -3
  35. data/distro/common/html/knife_show.html +3 -3
  36. data/distro/common/html/knife_ssh.html +7 -7
  37. data/distro/common/html/knife_ssl_check.html +7 -7
  38. data/distro/common/html/knife_ssl_fetch.html +9 -9
  39. data/distro/common/html/knife_status.html +3 -3
  40. data/distro/common/html/knife_tag.html +9 -9
  41. data/distro/common/html/knife_upload.html +3 -3
  42. data/distro/common/html/knife_user.html +9 -9
  43. data/distro/common/html/knife_using.html +11 -11
  44. data/distro/common/html/knife_xargs.html +14 -5
  45. data/distro/common/html/search.html +2 -2
  46. data/distro/common/html/searchindex.js +1 -1
  47. data/distro/common/man/man1/chef-shell.1 +2 -2
  48. data/distro/common/man/man1/knife-bootstrap.1 +7 -7
  49. data/distro/common/man/man1/knife-client.1 +10 -10
  50. data/distro/common/man/man1/knife-configure.1 +5 -5
  51. data/distro/common/man/man1/knife-cookbook-site.1 +24 -24
  52. data/distro/common/man/man1/knife-cookbook.1 +12 -12
  53. data/distro/common/man/man1/knife-data-bag.1 +34 -10
  54. data/distro/common/man/man1/knife-delete.1 +5 -5
  55. data/distro/common/man/man1/knife-deps.1 +5 -5
  56. data/distro/common/man/man1/knife-diff.1 +7 -7
  57. data/distro/common/man/man1/knife-download.1 +5 -5
  58. data/distro/common/man/man1/knife-edit.1 +5 -5
  59. data/distro/common/man/man1/knife-environment.1 +11 -11
  60. data/distro/common/man/man1/knife-exec.1 +11 -11
  61. data/distro/common/man/man1/knife-index-rebuild.1 +1 -1
  62. data/distro/common/man/man1/knife-list.1 +5 -5
  63. data/distro/common/man/man1/knife-node.1 +16 -16
  64. data/distro/common/man/man1/knife-raw.1 +6 -6
  65. data/distro/common/man/man1/knife-recipe-list.1 +1 -1
  66. data/distro/common/man/man1/knife-role.1 +7 -7
  67. data/distro/common/man/man1/knife-search.1 +6 -6
  68. data/distro/common/man/man1/knife-serve.1 +6 -6
  69. data/distro/common/man/man1/knife-show.1 +5 -5
  70. data/distro/common/man/man1/knife-ssh.1 +9 -9
  71. data/distro/common/man/man1/knife-ssl-check.1 +7 -7
  72. data/distro/common/man/man1/knife-ssl-fetch.1 +9 -9
  73. data/distro/common/man/man1/knife-status.1 +5 -5
  74. data/distro/common/man/man1/knife-tag.1 +8 -8
  75. data/distro/common/man/man1/knife-upload.1 +5 -5
  76. data/distro/common/man/man1/knife-user.1 +8 -8
  77. data/distro/common/man/man1/knife-xargs.1 +36 -10
  78. data/distro/common/man/man1/knife.1 +14 -14
  79. data/distro/common/man/man8/chef-client.8 +3 -10
  80. data/distro/common/man/man8/chef-solo.8 +1 -1
  81. data/lib/chef/application.rb +313 -241
  82. data/lib/chef/application/apply.rb +10 -8
  83. data/lib/chef/application/client.rb +58 -33
  84. data/lib/chef/application/solo.rb +33 -12
  85. data/lib/chef/chef_fs/chef_fs_data_store.rb +1 -1
  86. data/lib/chef/chef_fs/command_line.rb +1 -1
  87. data/lib/chef/chef_fs/file_system/organization_invites_entry.rb +2 -1
  88. data/lib/chef/chef_fs/file_system/organization_members_entry.rb +2 -1
  89. data/lib/chef/chef_fs/file_system/rest_list_entry.rb +2 -1
  90. data/lib/chef/client.rb +18 -48
  91. data/lib/chef/config.rb +43 -11
  92. data/lib/chef/cookbook/cookbook_version_loader.rb +14 -7
  93. data/lib/chef/cookbook/metadata.rb +81 -38
  94. data/lib/chef/cookbook/syntax_check.rb +18 -52
  95. data/lib/chef/cookbook_loader.rb +1 -1
  96. data/lib/chef/cookbook_version.rb +58 -39
  97. data/lib/chef/data_bag.rb +2 -2
  98. data/lib/chef/deprecation/provider/file.rb +2 -1
  99. data/lib/chef/dsl/data_query.rb +2 -29
  100. data/lib/chef/dsl/recipe.rb +8 -22
  101. data/lib/chef/encrypted_data_bag_item/assertions.rb +1 -1
  102. data/lib/chef/encrypted_data_bag_item/check_encrypted.rb +56 -0
  103. data/lib/chef/encrypted_data_bag_item/encrypted_data_bag_item_assertions.rb +1 -1
  104. data/lib/chef/event_loggers/base.rb +62 -0
  105. data/lib/chef/event_loggers/windows_eventlog.rb +104 -0
  106. data/lib/chef/exceptions.rb +18 -1
  107. data/lib/chef/file_cache.rb +3 -2
  108. data/lib/chef/guard_interpreter/resource_guard_interpreter.rb +15 -6
  109. data/lib/chef/http.rb +20 -13
  110. data/lib/chef/http/ssl_policies.rb +2 -1
  111. data/lib/chef/json_compat.rb +9 -3
  112. data/lib/chef/knife.rb +2 -1
  113. data/lib/chef/knife/bootstrap.rb +12 -18
  114. data/lib/chef/knife/bootstrap/archlinux-gems.erb +2 -2
  115. data/lib/chef/knife/bootstrap/chef-aix.erb +2 -2
  116. data/lib/chef/knife/bootstrap/chef-full.erb +2 -2
  117. data/lib/chef/knife/cookbook_create.rb +1 -1
  118. data/lib/chef/knife/cookbook_site_share.rb +43 -8
  119. data/lib/chef/knife/core/bootstrap_context.rb +6 -11
  120. data/lib/chef/knife/core/object_loader.rb +5 -5
  121. data/lib/chef/knife/core/status_presenter.rb +156 -0
  122. data/lib/chef/knife/core/subcommand_loader.rb +6 -5
  123. data/lib/chef/knife/core/ui.rb +4 -4
  124. data/lib/chef/knife/data_bag_create.rb +7 -32
  125. data/lib/chef/knife/data_bag_edit.rb +24 -43
  126. data/lib/chef/knife/data_bag_from_file.rb +6 -31
  127. data/lib/chef/knife/data_bag_secret_options.rb +142 -0
  128. data/lib/chef/knife/data_bag_show.rb +19 -33
  129. data/lib/chef/knife/node_from_file.rb +9 -8
  130. data/lib/chef/knife/ssh.rb +0 -7
  131. data/lib/chef/knife/ssl_check.rb +70 -6
  132. data/lib/chef/knife/status.rb +11 -58
  133. data/lib/chef/mixin/command/unix.rb +2 -2
  134. data/lib/chef/mixin/convert_to_class_name.rb +54 -0
  135. data/lib/chef/mixin/descendants_tracker.rb +82 -0
  136. data/lib/chef/mixin/homebrew_user.rb +68 -0
  137. data/lib/chef/mixin/shell_out.rb +0 -4
  138. data/lib/chef/mixin/windows_architecture_helper.rb +16 -0
  139. data/lib/chef/mixin/windows_env_helper.rb +56 -0
  140. data/lib/chef/node.rb +2 -2
  141. data/lib/chef/node_map.rb +146 -0
  142. data/lib/chef/platform/provider_mapping.rb +11 -39
  143. data/lib/chef/platform/provider_priority_map.rb +80 -0
  144. data/lib/chef/platform/query_helpers.rb +5 -1
  145. data/lib/chef/platform/service_helpers.rb +113 -0
  146. data/lib/chef/provider.rb +24 -0
  147. data/lib/chef/provider/breakpoint.rb +2 -0
  148. data/lib/chef/provider/cookbook_file.rb +2 -0
  149. data/lib/chef/provider/cron.rb +1 -1
  150. data/lib/chef/provider/cron/unix.rb +13 -9
  151. data/lib/chef/provider/deploy.rb +3 -2
  152. data/lib/chef/provider/deploy/revision.rb +4 -2
  153. data/lib/chef/provider/deploy/timestamped.rb +2 -0
  154. data/lib/chef/provider/directory.rb +2 -0
  155. data/lib/chef/provider/dsc_script.rb +179 -0
  156. data/lib/chef/provider/env.rb +25 -10
  157. data/lib/chef/provider/env/windows.rb +9 -16
  158. data/lib/chef/provider/erl_call.rb +2 -0
  159. data/lib/chef/provider/execute.rb +5 -2
  160. data/lib/chef/provider/file.rb +2 -0
  161. data/lib/chef/provider/git.rb +51 -23
  162. data/lib/chef/provider/group/dscl.rb +2 -2
  163. data/lib/chef/provider/group/pw.rb +9 -13
  164. data/lib/chef/provider/http_request.rb +2 -0
  165. data/lib/chef/provider/link.rb +3 -0
  166. data/lib/chef/provider/log.rb +2 -0
  167. data/lib/chef/provider/lwrp_base.rb +11 -9
  168. data/lib/chef/provider/mount/mount.rb +1 -1
  169. data/lib/chef/provider/package/aix.rb +2 -0
  170. data/lib/chef/provider/package/apt.rb +2 -0
  171. data/lib/chef/provider/package/dpkg.rb +2 -0
  172. data/lib/chef/provider/package/easy_install.rb +2 -0
  173. data/lib/chef/provider/package/freebsd/pkg.rb +2 -1
  174. data/lib/chef/provider/package/freebsd/pkgng.rb +1 -1
  175. data/lib/chef/provider/package/freebsd/port.rb +1 -9
  176. data/lib/chef/provider/package/homebrew.rb +127 -0
  177. data/lib/chef/provider/package/ips.rb +2 -0
  178. data/lib/chef/provider/package/macports.rb +3 -0
  179. data/lib/chef/provider/package/pacman.rb +5 -4
  180. data/lib/chef/provider/package/paludis.rb +4 -2
  181. data/lib/chef/provider/package/portage.rb +4 -1
  182. data/lib/chef/provider/package/rpm.rb +2 -0
  183. data/lib/chef/provider/package/rubygems.rb +4 -0
  184. data/lib/chef/provider/package/smartos.rb +2 -0
  185. data/lib/chef/provider/package/solaris.rb +2 -0
  186. data/lib/chef/provider/package/windows.rb +5 -2
  187. data/lib/chef/provider/package/yum.rb +2 -0
  188. data/lib/chef/provider/powershell_script.rb +3 -1
  189. data/lib/chef/provider/remote_directory.rb +25 -10
  190. data/lib/chef/provider/route.rb +2 -0
  191. data/lib/chef/provider/ruby_block.rb +2 -0
  192. data/lib/chef/provider/script.rb +6 -0
  193. data/lib/chef/provider/service/aix.rb +128 -0
  194. data/lib/chef/provider/service/aixinit.rb +117 -0
  195. data/lib/chef/provider/service/arch.rb +6 -0
  196. data/lib/chef/provider/service/debian.rb +35 -29
  197. data/lib/chef/provider/service/freebsd.rb +7 -1
  198. data/lib/chef/provider/service/gentoo.rb +5 -1
  199. data/lib/chef/provider/service/init.rb +2 -0
  200. data/lib/chef/provider/service/insserv.rb +15 -8
  201. data/lib/chef/provider/service/invokercd.rb +6 -0
  202. data/lib/chef/provider/service/macosx.rb +4 -1
  203. data/lib/chef/provider/service/redhat.rb +9 -3
  204. data/lib/chef/provider/service/simple.rb +2 -0
  205. data/lib/chef/provider/service/solaris.rb +2 -0
  206. data/lib/chef/provider/service/systemd.rb +7 -0
  207. data/lib/chef/provider/service/upstart.rb +7 -0
  208. data/lib/chef/provider/service/windows.rb +5 -0
  209. data/lib/chef/provider/subversion.rb +2 -0
  210. data/lib/chef/provider/template.rb +1 -0
  211. data/lib/chef/provider/user/dscl.rb +3 -2
  212. data/lib/chef/provider/whyrun_safe_ruby_block.rb +2 -0
  213. data/lib/chef/provider_resolver.rb +103 -0
  214. data/lib/chef/providers.rb +6 -2
  215. data/lib/chef/recipe.rb +2 -0
  216. data/lib/chef/resource.rb +69 -78
  217. data/lib/chef/resource/apt_package.rb +3 -1
  218. data/lib/chef/resource/bash.rb +1 -0
  219. data/lib/chef/resource/bff_package.rb +0 -1
  220. data/lib/chef/resource/breakpoint.rb +1 -1
  221. data/lib/chef/resource/chef_gem.rb +1 -2
  222. data/lib/chef/resource/conditional.rb +26 -6
  223. data/lib/chef/resource/cookbook_file.rb +2 -3
  224. data/lib/chef/resource/csh.rb +1 -0
  225. data/lib/chef/resource/deploy.rb +0 -1
  226. data/lib/chef/resource/deploy_revision.rb +6 -1
  227. data/lib/chef/resource/directory.rb +1 -2
  228. data/lib/chef/resource/dpkg_package.rb +2 -1
  229. data/lib/chef/resource/dsc_script.rb +125 -0
  230. data/lib/chef/resource/easy_install_package.rb +2 -1
  231. data/lib/chef/resource/erl_call.rb +1 -0
  232. data/lib/chef/resource/execute.rb +26 -9
  233. data/lib/chef/resource/file.rb +1 -3
  234. data/lib/chef/resource/freebsd_package.rb +10 -23
  235. data/lib/chef/resource/gem_package.rb +2 -1
  236. data/lib/chef/resource/git.rb +2 -1
  237. data/lib/chef/resource/homebrew_package.rb +46 -0
  238. data/lib/chef/resource/http_request.rb +1 -0
  239. data/lib/chef/resource/ips_package.rb +3 -1
  240. data/lib/chef/resource/link.rb +1 -2
  241. data/lib/chef/resource/log.rb +4 -0
  242. data/lib/chef/resource/lwrp_base.rb +24 -15
  243. data/lib/chef/resource/macports_package.rb +3 -1
  244. data/lib/chef/resource/pacman_package.rb +2 -1
  245. data/lib/chef/resource/paludis_package.rb +3 -1
  246. data/lib/chef/resource/perl.rb +1 -0
  247. data/lib/chef/resource/powershell_script.rb +0 -2
  248. data/lib/chef/resource/python.rb +1 -1
  249. data/lib/chef/resource/remote_directory.rb +1 -2
  250. data/lib/chef/resource/remote_file.rb +1 -1
  251. data/lib/chef/resource/rpm_package.rb +2 -1
  252. data/lib/chef/resource/ruby.rb +1 -0
  253. data/lib/chef/resource/ruby_block.rb +3 -0
  254. data/lib/chef/resource/script.rb +2 -25
  255. data/lib/chef/resource/service.rb +0 -4
  256. data/lib/chef/resource/smartos_package.rb +3 -4
  257. data/lib/chef/resource/solaris_package.rb +7 -1
  258. data/lib/chef/resource/subversion.rb +0 -1
  259. data/lib/chef/resource/template.rb +2 -3
  260. data/lib/chef/resource/timestamped_deploy.rb +1 -2
  261. data/lib/chef/resource/whyrun_safe_ruby_block.rb +0 -1
  262. data/lib/chef/resource/windows_package.rb +3 -4
  263. data/lib/chef/resource/windows_script.rb +3 -0
  264. data/lib/chef/resource/windows_service.rb +2 -2
  265. data/lib/chef/resource/yum_package.rb +3 -1
  266. data/lib/chef/resource_collection.rb +50 -227
  267. data/lib/chef/resource_collection/resource_collection_serialization.rb +59 -0
  268. data/lib/chef/resource_collection/resource_list.rb +89 -0
  269. data/lib/chef/resource_collection/resource_set.rb +170 -0
  270. data/lib/chef/resources.rb +2 -0
  271. data/lib/chef/role.rb +1 -1
  272. data/lib/chef/run_context.rb +5 -1
  273. data/lib/chef/shell/ext.rb +1 -1
  274. data/lib/chef/util/backup.rb +3 -2
  275. data/lib/chef/util/dsc/configuration_generator.rb +115 -0
  276. data/lib/chef/util/dsc/lcm_output_parser.rb +133 -0
  277. data/lib/chef/util/dsc/local_configuration_manager.rb +141 -0
  278. data/lib/chef/util/dsc/resource_info.rb +26 -0
  279. data/lib/chef/util/path_helper.rb +12 -0
  280. data/lib/chef/util/powershell/cmdlet.rb +136 -0
  281. data/lib/chef/util/powershell/cmdlet_result.rb +46 -0
  282. data/lib/chef/version.rb +1 -1
  283. data/lib/chef/win32/api/system.rb +9 -0
  284. data/lib/chef/win32/version.rb +2 -0
  285. data/spec/.DS_Store +0 -0
  286. data/spec/data/.DS_Store +0 -0
  287. data/spec/data/bootstrap/test-hints.erb +1 -1
  288. data/spec/data/bootstrap/test.erb +1 -1
  289. data/spec/data/cb_version_cookbooks/cookbook2/files/test.txt +0 -0
  290. data/spec/data/cb_version_cookbooks/cookbook2/templates/test.erb +0 -0
  291. data/spec/data/cookbooks/ignorken/files/default/not_me.rb +2 -0
  292. data/spec/data/cookbooks/ignorken/templates/ubuntu-12.10/not_me.rb +2 -0
  293. data/spec/data/cookbooks/openldap/libraries/openldap.rb +4 -0
  294. data/spec/data/cookbooks/openldap/libraries/openldap/version.rb +3 -0
  295. data/spec/data/lwrp/.DS_Store +0 -0
  296. data/spec/data/lwrp/providers/.DS_Store +0 -0
  297. data/spec/data/lwrp/providers/buck_passer.rb +9 -2
  298. data/spec/data/lwrp/resources/.DS_Store +0 -0
  299. data/spec/data/lwrp/resources/foo.rb +3 -2
  300. data/spec/data/lwrp_override/.DS_Store +0 -0
  301. data/spec/data/lwrp_override/providers/.DS_Store +0 -0
  302. data/spec/data/lwrp_override/providers/buck_passer.rb +5 -10
  303. data/spec/data/lwrp_override/resources/.DS_Store +0 -0
  304. data/spec/data/lwrp_override/resources/foo.rb +4 -3
  305. data/spec/functional/assets/chefinittest +34 -0
  306. data/spec/functional/assets/testchefsubsys +11 -0
  307. data/spec/functional/dsl/reboot_pending_spec.rb +19 -16
  308. data/spec/functional/event_loggers/windows_eventlog_spec.rb +82 -0
  309. data/spec/functional/knife/cookbook_delete_spec.rb +3 -3
  310. data/spec/functional/knife/exec_spec.rb +1 -1
  311. data/spec/functional/resource/aix_service_spec.rb +136 -0
  312. data/spec/functional/resource/aixinit_service_spec.rb +211 -0
  313. data/spec/functional/resource/base.rb +1 -0
  314. data/spec/functional/resource/batch_spec.rb +4 -11
  315. data/spec/functional/resource/cron_spec.rb +7 -1
  316. data/spec/functional/resource/dsc_script_spec.rb +382 -0
  317. data/spec/functional/resource/env_spec.rb +54 -0
  318. data/spec/functional/resource/execute_spec.rb +113 -0
  319. data/spec/functional/resource/file_spec.rb +2 -0
  320. data/spec/functional/resource/group_spec.rb +7 -4
  321. data/spec/functional/resource/powershell_spec.rb +198 -185
  322. data/spec/functional/resource/rpm_spec.rb +5 -4
  323. data/spec/functional/resource/user/dscl_spec.rb +2 -1
  324. data/spec/functional/util/path_helper_spec.rb +37 -0
  325. data/spec/functional/util/powershell/cmdlet_spec.rb +114 -0
  326. data/spec/integration/client/client_spec.rb +1 -1
  327. data/spec/integration/client/ipv6_spec.rb +1 -1
  328. data/spec/integration/knife/chef_fs_data_store_spec.rb +1 -1
  329. data/spec/integration/knife/chef_repo_path_spec.rb +1 -1
  330. data/spec/integration/knife/chef_repository_file_system_spec.rb +1 -1
  331. data/spec/integration/knife/chefignore_spec.rb +1 -1
  332. data/spec/integration/knife/common_options_spec.rb +1 -1
  333. data/spec/integration/knife/cookbook_api_ipv6_spec.rb +2 -2
  334. data/spec/integration/knife/delete_spec.rb +1 -1
  335. data/spec/integration/knife/deps_spec.rb +1 -1
  336. data/spec/integration/knife/diff_spec.rb +1 -1
  337. data/spec/integration/knife/download_spec.rb +1 -1
  338. data/spec/integration/knife/list_spec.rb +1 -1
  339. data/spec/integration/knife/raw_spec.rb +1 -1
  340. data/spec/integration/knife/redirection_spec.rb +1 -1
  341. data/spec/integration/knife/serve_spec.rb +1 -1
  342. data/spec/integration/knife/show_spec.rb +1 -1
  343. data/spec/integration/knife/upload_spec.rb +4 -3
  344. data/spec/integration/recipes/lwrp_inline_resources_spec.rb +1 -1
  345. data/spec/spec_helper.rb +15 -0
  346. data/spec/support/chef_helpers.rb +1 -0
  347. data/spec/support/lib/chef/provider/snakeoil.rb +1 -0
  348. data/spec/support/lib/chef/resource/zen_follower.rb +1 -7
  349. data/spec/support/platform_helpers.rb +28 -0
  350. data/spec/support/shared/functional/file_resource.rb +6 -0
  351. data/spec/support/shared/functional/windows_script.rb +118 -0
  352. data/spec/support/shared/integration/integration_helper.rb +5 -2
  353. data/spec/support/shared/matchers/exit_with_code.rb +28 -0
  354. data/spec/support/shared/matchers/match_environment_variable.rb +17 -0
  355. data/spec/support/shared/shared_examples.rb +14 -0
  356. data/spec/support/shared/unit/execute_resource.rb +0 -7
  357. data/spec/support/shared/unit/resource/static_provider_resolution.rb +71 -0
  358. data/spec/support/shared/unit/script_resource.rb +1 -1
  359. data/spec/support/shared/unit/windows_script_resource.rb +35 -2
  360. data/spec/tiny_server.rb +1 -2
  361. data/spec/unit/api_client_spec.rb +5 -1
  362. data/spec/unit/application/{apply.rb → apply_spec.rb} +13 -5
  363. data/spec/unit/application/client_spec.rb +106 -13
  364. data/spec/unit/application/solo_spec.rb +25 -1
  365. data/spec/unit/client_spec.rb +1 -26
  366. data/spec/unit/config_fetcher_spec.rb +2 -1
  367. data/spec/unit/config_spec.rb +91 -2
  368. data/spec/unit/cookbook/cookbook_version_loader_spec.rb +8 -0
  369. data/spec/unit/cookbook/metadata_spec.rb +43 -6
  370. data/spec/unit/cookbook/syntax_check_spec.rb +8 -2
  371. data/spec/unit/cookbook_loader_spec.rb +4 -2
  372. data/spec/unit/cookbook_version_spec.rb +83 -2
  373. data/spec/unit/data_bag_item_spec.rb +5 -1
  374. data/spec/unit/data_bag_spec.rb +6 -1
  375. data/spec/unit/dsl/data_query_spec.rb +8 -110
  376. data/spec/unit/encrypted_data_bag_item/check_encrypted_spec.rb +95 -0
  377. data/spec/unit/encrypted_data_bag_item_spec.rb +16 -23
  378. data/spec/unit/environment_spec.rb +6 -2
  379. data/spec/unit/exceptions_spec.rb +6 -0
  380. data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +16 -15
  381. data/spec/unit/json_compat_spec.rb +12 -2
  382. data/spec/unit/knife/bootstrap_spec.rb +16 -63
  383. data/spec/unit/knife/cookbook_site_share_spec.rb +59 -6
  384. data/spec/unit/knife/core/bootstrap_context_spec.rb +8 -37
  385. data/spec/unit/knife/core/subcommand_loader_spec.rb +1 -1
  386. data/spec/unit/knife/core/ui_spec.rb +28 -0
  387. data/spec/unit/knife/data_bag_create_spec.rb +63 -71
  388. data/spec/unit/knife/data_bag_edit_spec.rb +83 -49
  389. data/spec/unit/knife/data_bag_from_file_spec.rb +104 -126
  390. data/spec/unit/knife/data_bag_secret_options_spec.rb +165 -0
  391. data/spec/unit/knife/data_bag_show_spec.rb +74 -72
  392. data/spec/unit/knife/environment_from_file_spec.rb +3 -2
  393. data/spec/unit/knife/ssl_check_spec.rb +46 -1
  394. data/spec/unit/knife/status_spec.rb +1 -2
  395. data/spec/unit/knife_spec.rb +18 -1
  396. data/spec/unit/lwrp_spec.rb +29 -8
  397. data/spec/unit/mixin/homebrew_user_spec.rb +100 -0
  398. data/spec/unit/node_map_spec.rb +155 -0
  399. data/spec/unit/node_spec.rb +11 -0
  400. data/spec/unit/platform/query_helpers_spec.rb +23 -0
  401. data/spec/unit/platform_spec.rb +23 -0
  402. data/spec/unit/provider/breakpoint_spec.rb +9 -9
  403. data/spec/unit/provider/cookbook_file/content_spec.rb +3 -3
  404. data/spec/unit/provider/cookbook_file_spec.rb +1 -1
  405. data/spec/unit/provider/cron/unix_spec.rb +78 -60
  406. data/spec/unit/provider/cron_spec.rb +175 -175
  407. data/spec/unit/provider/deploy/revision_spec.rb +22 -21
  408. data/spec/unit/provider/deploy/timestamped_spec.rb +3 -3
  409. data/spec/unit/provider/deploy_spec.rb +231 -230
  410. data/spec/unit/provider/directory_spec.rb +55 -55
  411. data/spec/unit/provider/dsc_script_spec.rb +174 -0
  412. data/spec/unit/provider/env/windows_spec.rb +70 -34
  413. data/spec/unit/provider/env_spec.rb +95 -49
  414. data/spec/unit/provider/erl_call_spec.rb +9 -9
  415. data/spec/unit/provider/execute_spec.rb +43 -27
  416. data/spec/unit/provider/file/content_spec.rb +9 -9
  417. data/spec/unit/provider/file_spec.rb +1 -1
  418. data/spec/unit/provider/git_spec.rb +221 -159
  419. data/spec/unit/provider/group/dscl_spec.rb +64 -63
  420. data/spec/unit/provider/group/gpasswd_spec.rb +14 -14
  421. data/spec/unit/provider/group/groupadd_spec.rb +33 -33
  422. data/spec/unit/provider/group/groupmod_spec.rb +23 -23
  423. data/spec/unit/provider/group/pw_spec.rb +21 -21
  424. data/spec/unit/provider/group/usermod_spec.rb +20 -20
  425. data/spec/unit/provider/group/windows_spec.rb +15 -15
  426. data/spec/unit/provider/group_spec.rb +76 -76
  427. data/spec/unit/provider/http_request_spec.rb +30 -30
  428. data/spec/unit/provider/ifconfig/aix_spec.rb +20 -20
  429. data/spec/unit/provider/ifconfig/debian_spec.rb +25 -9
  430. data/spec/unit/provider/ifconfig/redhat_spec.rb +13 -13
  431. data/spec/unit/provider/ifconfig_spec.rb +43 -43
  432. data/spec/unit/provider/link_spec.rb +60 -60
  433. data/spec/unit/provider/log_spec.rb +0 -4
  434. data/spec/unit/provider/mdadm_spec.rb +23 -23
  435. data/spec/unit/provider/mount/aix_spec.rb +17 -17
  436. data/spec/unit/provider/mount/mount_spec.rb +115 -119
  437. data/spec/unit/provider/mount/solaris_spec.rb +72 -72
  438. data/spec/unit/provider/mount/windows_spec.rb +24 -24
  439. data/spec/unit/provider/ohai_spec.rb +11 -11
  440. data/spec/unit/provider/package/aix_spec.rb +34 -34
  441. data/spec/unit/provider/package/apt_spec.rb +36 -36
  442. data/spec/unit/provider/package/dpkg_spec.rb +27 -27
  443. data/spec/unit/provider/package/easy_install_spec.rb +16 -16
  444. data/spec/unit/provider/package/freebsd/pkg_spec.rb +53 -53
  445. data/spec/unit/provider/package/freebsd/pkgng_spec.rb +24 -24
  446. data/spec/unit/provider/package/freebsd/port_spec.rb +45 -35
  447. data/spec/unit/provider/package/homebrew_spec.rb +266 -0
  448. data/spec/unit/provider/package/ips_spec.rb +34 -34
  449. data/spec/unit/provider/package/macports_spec.rb +49 -49
  450. data/spec/unit/provider/package/pacman_spec.rb +35 -39
  451. data/spec/unit/provider/package/paludis_spec.rb +20 -20
  452. data/spec/unit/provider/package/portage_spec.rb +38 -38
  453. data/spec/unit/provider/package/rpm_spec.rb +29 -29
  454. data/spec/unit/provider/package/rubygems_spec.rb +284 -270
  455. data/spec/unit/provider/package/smartos_spec.rb +15 -15
  456. data/spec/unit/provider/package/solaris_spec.rb +35 -35
  457. data/spec/unit/provider/package/windows/msi_spec.rb +3 -3
  458. data/spec/unit/provider/package/windows_spec.rb +6 -6
  459. data/spec/unit/provider/package/yum_spec.rb +416 -416
  460. data/spec/unit/provider/package/zypper_spec.rb +47 -47
  461. data/spec/unit/provider/package_spec.rb +107 -107
  462. data/spec/unit/provider/powershell_spec.rb +1 -1
  463. data/spec/unit/provider/registry_key_spec.rb +61 -61
  464. data/spec/unit/provider/remote_directory_spec.rb +36 -36
  465. data/spec/unit/provider/remote_file/cache_control_data_spec.rb +24 -24
  466. data/spec/unit/provider/remote_file/content_spec.rb +45 -45
  467. data/spec/unit/provider/remote_file/fetcher_spec.rb +9 -9
  468. data/spec/unit/provider/remote_file/ftp_spec.rb +32 -32
  469. data/spec/unit/provider/remote_file/http_spec.rb +44 -44
  470. data/spec/unit/provider/remote_file/local_file_spec.rb +9 -9
  471. data/spec/unit/provider/remote_file_spec.rb +3 -3
  472. data/spec/unit/provider/route_spec.rb +63 -63
  473. data/spec/unit/provider/ruby_block_spec.rb +4 -4
  474. data/spec/unit/provider/script_spec.rb +12 -12
  475. data/spec/unit/provider/service/aix_service_spec.rb +181 -0
  476. data/spec/unit/provider/service/aixinit_service_spec.rb +269 -0
  477. data/spec/unit/provider/service/arch_service_spec.rb +48 -48
  478. data/spec/unit/provider/service/debian_service_spec.rb +40 -40
  479. data/spec/unit/provider/service/gentoo_service_spec.rb +28 -28
  480. data/spec/unit/provider/service/init_service_spec.rb +39 -39
  481. data/spec/unit/provider/service/insserv_service_spec.rb +8 -8
  482. data/spec/unit/provider/service/invokercd_service_spec.rb +35 -35
  483. data/spec/unit/provider/service/macosx_spec.rb +49 -49
  484. data/spec/unit/provider/service/redhat_spec.rb +27 -27
  485. data/spec/unit/provider/service/simple_service_spec.rb +28 -28
  486. data/spec/unit/provider/service/solaris_smf_service_spec.rb +43 -46
  487. data/spec/unit/provider/service/systemd_service_spec.rb +63 -63
  488. data/spec/unit/provider/service/upstart_service_spec.rb +78 -78
  489. data/spec/unit/provider/service/windows_spec.rb +92 -92
  490. data/spec/unit/provider/service_spec.rb +40 -40
  491. data/spec/unit/provider/subversion_spec.rb +80 -80
  492. data/spec/unit/provider/template/content_spec.rb +9 -9
  493. data/spec/unit/provider/template_spec.rb +6 -6
  494. data/spec/unit/provider/user/dscl_spec.rb +170 -167
  495. data/spec/unit/provider/user/pw_spec.rb +48 -48
  496. data/spec/unit/provider/user/solaris_spec.rb +8 -8
  497. data/spec/unit/provider/user/useradd_spec.rb +1 -1
  498. data/spec/unit/provider/user/windows_spec.rb +26 -26
  499. data/spec/unit/provider/user_spec.rb +72 -72
  500. data/spec/unit/provider/whyrun_safe_ruby_block_spec.rb +4 -4
  501. data/spec/unit/provider_resolver_spec.rb +387 -0
  502. data/spec/unit/recipe_spec.rb +33 -12
  503. data/spec/unit/resource/apt_package_spec.rb +10 -13
  504. data/spec/unit/resource/bash_spec.rb +4 -4
  505. data/spec/unit/resource/batch_spec.rb +1 -1
  506. data/spec/unit/resource/breakpoint_spec.rb +11 -7
  507. data/spec/unit/resource/chef_gem_spec.rb +8 -15
  508. data/spec/unit/resource/conditional_action_not_nothing_spec.rb +2 -2
  509. data/spec/unit/resource/conditional_spec.rb +35 -16
  510. data/spec/unit/resource/cookbook_file_spec.rb +13 -13
  511. data/spec/unit/resource/cron_spec.rb +37 -37
  512. data/spec/unit/resource/csh_spec.rb +4 -4
  513. data/spec/unit/resource/deploy_revision_spec.rb +13 -18
  514. data/spec/unit/resource/deploy_spec.rb +60 -55
  515. data/spec/unit/resource/directory_spec.rb +18 -18
  516. data/spec/unit/resource/dpkg_package_spec.rb +8 -14
  517. data/spec/unit/resource/dsc_script_spec.rb +98 -0
  518. data/spec/unit/resource/easy_install_package_spec.rb +9 -18
  519. data/spec/unit/resource/env_spec.rb +12 -12
  520. data/spec/unit/resource/erl_call_spec.rb +11 -11
  521. data/spec/unit/resource/execute_spec.rb +5 -0
  522. data/spec/unit/resource/file_spec.rb +29 -29
  523. data/spec/unit/resource/freebsd_package_spec.rb +11 -12
  524. data/spec/unit/resource/gem_package_spec.rb +8 -15
  525. data/spec/unit/resource/git_spec.rb +12 -8
  526. data/spec/unit/resource/group_spec.rb +27 -27
  527. data/spec/unit/resource/homebrew_package_spec.rb +50 -0
  528. data/spec/unit/resource/http_request_spec.rb +6 -6
  529. data/spec/unit/resource/ifconfig_spec.rb +8 -8
  530. data/spec/unit/resource/ips_package_spec.rb +10 -13
  531. data/spec/unit/resource/link_spec.rb +25 -25
  532. data/spec/unit/resource/log_spec.rb +9 -9
  533. data/spec/unit/resource/macports_package_spec.rb +8 -13
  534. data/spec/unit/resource/mdadm_spec.rb +18 -18
  535. data/spec/unit/resource/mount_spec.rb +45 -45
  536. data/spec/unit/resource/ohai_spec.rb +7 -7
  537. data/spec/unit/resource/package_spec.rb +12 -12
  538. data/spec/unit/resource/pacman_package_spec.rb +8 -14
  539. data/spec/unit/resource/perl_spec.rb +4 -4
  540. data/spec/unit/resource/portage_package_spec.rb +3 -3
  541. data/spec/unit/resource/powershell_spec.rb +7 -7
  542. data/spec/unit/resource/python_spec.rb +4 -4
  543. data/spec/unit/resource/registry_key_spec.rb +32 -32
  544. data/spec/unit/resource/remote_directory_spec.rb +17 -17
  545. data/spec/unit/resource/remote_file_spec.rb +41 -41
  546. data/spec/unit/resource/route_spec.rb +19 -19
  547. data/spec/unit/resource/rpm_package_spec.rb +9 -13
  548. data/spec/unit/resource/ruby_block_spec.rb +8 -8
  549. data/spec/unit/resource/ruby_spec.rb +4 -4
  550. data/spec/unit/resource/scm_spec.rb +40 -40
  551. data/spec/unit/resource/script_spec.rb +2 -2
  552. data/spec/unit/resource/service_spec.rb +37 -47
  553. data/spec/unit/resource/smartos_package_spec.rb +10 -15
  554. data/spec/unit/resource/solaris_package_spec.rb +13 -28
  555. data/spec/unit/resource/subversion_spec.rb +16 -12
  556. data/spec/unit/resource/template_spec.rb +35 -35
  557. data/spec/unit/resource/timestamped_deploy_spec.rb +30 -4
  558. data/spec/unit/resource/user_spec.rb +23 -23
  559. data/spec/unit/resource/windows_package_spec.rb +17 -10
  560. data/spec/unit/resource/windows_service_spec.rb +9 -6
  561. data/spec/unit/resource/yum_package_spec.rb +16 -21
  562. data/spec/unit/resource_collection/resource_list_spec.rb +137 -0
  563. data/spec/unit/resource_collection/resource_set_spec.rb +199 -0
  564. data/spec/unit/resource_collection_spec.rb +73 -92
  565. data/spec/unit/resource_definition_spec.rb +38 -40
  566. data/spec/unit/resource_reporter_spec.rb +3 -3
  567. data/spec/unit/resource_spec.rb +68 -33
  568. data/spec/unit/rest_spec.rb +83 -76
  569. data/spec/unit/role_spec.rb +5 -0
  570. data/spec/unit/run_list_spec.rb +5 -1
  571. data/spec/unit/runner_spec.rb +245 -238
  572. data/spec/unit/shell/shell_ext_spec.rb +1 -1
  573. data/spec/unit/user_spec.rb +5 -1
  574. data/spec/unit/util/dsc/configuration_generator_spec.rb +171 -0
  575. data/spec/unit/util/dsc/lcm_output_parser_spec.rb +169 -0
  576. data/spec/unit/util/dsc/local_configuration_manager_spec.rb +139 -0
  577. data/spec/unit/util/path_helper_spec.rb +23 -1
  578. data/spec/unit/util/powershell/cmdlet_spec.rb +106 -0
  579. data/spec/unit/workstation_config_loader_spec.rb +1 -1
  580. metadata +257 -191
  581. checksums.yaml +0 -7
  582. data/distro/README +0 -2
  583. data/distro/arch/etc/conf.d/chef-client.conf +0 -5
  584. data/distro/arch/etc/conf.d/chef-expander.conf +0 -8
  585. data/distro/arch/etc/conf.d/chef-server-webui.conf +0 -10
  586. data/distro/arch/etc/conf.d/chef-server.conf +0 -10
  587. data/distro/arch/etc/conf.d/chef-solr.conf +0 -8
  588. data/distro/arch/etc/rc.d/chef-client +0 -90
  589. data/distro/arch/etc/rc.d/chef-expander +0 -78
  590. data/distro/arch/etc/rc.d/chef-server +0 -78
  591. data/distro/arch/etc/rc.d/chef-server-webui +0 -78
  592. data/distro/arch/etc/rc.d/chef-solr +0 -78
  593. data/distro/debian/etc/default/chef-client +0 -4
  594. data/distro/debian/etc/default/chef-expander +0 -8
  595. data/distro/debian/etc/default/chef-server +0 -9
  596. data/distro/debian/etc/default/chef-server-webui +0 -9
  597. data/distro/debian/etc/default/chef-solr +0 -8
  598. data/distro/debian/etc/init.d/chef-client +0 -212
  599. data/distro/debian/etc/init.d/chef-expander +0 -176
  600. data/distro/debian/etc/init.d/chef-server +0 -122
  601. data/distro/debian/etc/init.d/chef-server-webui +0 -123
  602. data/distro/debian/etc/init.d/chef-solr +0 -176
  603. data/distro/debian/etc/init/chef-client.conf +0 -17
  604. data/distro/debian/etc/init/chef-expander.conf +0 -17
  605. data/distro/debian/etc/init/chef-server-webui.conf +0 -17
  606. data/distro/debian/etc/init/chef-server.conf +0 -17
  607. data/distro/debian/etc/init/chef-solr.conf +0 -17
  608. data/distro/redhat/etc/init.d/chef-client +0 -121
  609. data/distro/redhat/etc/init.d/chef-expander +0 -104
  610. data/distro/redhat/etc/init.d/chef-server +0 -112
  611. data/distro/redhat/etc/init.d/chef-server-webui +0 -112
  612. data/distro/redhat/etc/init.d/chef-solr +0 -104
  613. data/distro/redhat/etc/logrotate.d/chef-client +0 -8
  614. data/distro/redhat/etc/logrotate.d/chef-expander +0 -8
  615. data/distro/redhat/etc/logrotate.d/chef-server +0 -8
  616. data/distro/redhat/etc/logrotate.d/chef-server-webui +0 -8
  617. data/distro/redhat/etc/logrotate.d/chef-solr +0 -8
  618. data/distro/redhat/etc/sysconfig/chef-client +0 -15
  619. data/distro/redhat/etc/sysconfig/chef-expander +0 -7
  620. data/distro/redhat/etc/sysconfig/chef-server +0 -14
  621. data/distro/redhat/etc/sysconfig/chef-server-webui +0 -14
  622. data/distro/redhat/etc/sysconfig/chef-solr +0 -8
  623. data/distro/windows/service_manager.rb +0 -20
  624. data/lib/chef/resource_platform_map.rb +0 -151
  625. data/spec/support/shared/matchers.rb +0 -17
  626. data/spec/unit/resource_platform_map_spec.rb +0 -164
@@ -22,21 +22,21 @@ describe Chef::Provider::Service::Macosx do
22
22
  describe ".gather_plist_dirs" do
23
23
  context "when HOME directory is set" do
24
24
  before do
25
- ENV.stub(:[]).with('HOME').and_return("/User/someuser")
25
+ allow(ENV).to receive(:[]).with('HOME').and_return("/User/someuser")
26
26
  end
27
27
 
28
28
  it "includes users's LaunchAgents folder" do
29
- described_class.gather_plist_dirs.should include("#{ENV['HOME']}/Library/LaunchAgents")
29
+ expect(described_class.gather_plist_dirs).to include("#{ENV['HOME']}/Library/LaunchAgents")
30
30
  end
31
31
  end
32
32
 
33
33
  context "when HOME directory is not set" do
34
34
  before do
35
- ENV.stub(:[]).with('HOME').and_return(nil)
35
+ allow(ENV).to receive(:[]).with('HOME').and_return(nil)
36
36
  end
37
37
 
38
38
  it "doesn't include user's LaunchAgents folder" do
39
- described_class.gather_plist_dirs.should_not include("~/Library/LaunchAgents")
39
+ expect(described_class.gather_plist_dirs).not_to include("~/Library/LaunchAgents")
40
40
  end
41
41
  end
42
42
  end
@@ -60,20 +60,20 @@ XML
60
60
 
61
61
  ["redis-server", "io.redis.redis-server"].each do |service_name|
62
62
  before do
63
- Dir.stub(:glob).and_return(["/Users/igor/Library/LaunchAgents/io.redis.redis-server.plist"], [])
64
- provider.stub(:shell_out!).
63
+ allow(Dir).to receive(:glob).and_return(["/Users/igor/Library/LaunchAgents/io.redis.redis-server.plist"], [])
64
+ allow(provider).to receive(:shell_out!).
65
65
  with("launchctl list", {:group => 1001, :user => 101}).
66
66
  and_return(double("Status", :stdout => launchctl_stdout))
67
- provider.stub(:shell_out).
67
+ allow(provider).to receive(:shell_out).
68
68
  with(/launchctl list /,
69
69
  {:group => nil, :user => nil}).
70
70
  and_return(double("Status",
71
71
  :stdout => launchctl_stdout, :exitstatus => 0))
72
- provider.stub(:shell_out!).
72
+ allow(provider).to receive(:shell_out!).
73
73
  with(/plutil -convert xml1 -o/).
74
74
  and_return(double("Status", :stdout => plutil_stdout))
75
75
 
76
- File.stub(:stat).and_return(double("stat", :gid => 1001, :uid => 101))
76
+ allow(File).to receive(:stat).and_return(double("stat", :gid => 1001, :uid => 101))
77
77
  end
78
78
 
79
79
  context "#{service_name}" do
@@ -95,26 +95,26 @@ XML
95
95
  end
96
96
 
97
97
  before do
98
- Dir.stub(:glob).and_return([])
99
- provider.stub(:shell_out!).
98
+ allow(Dir).to receive(:glob).and_return([])
99
+ allow(provider).to receive(:shell_out!).
100
100
  with(/plutil -convert xml1 -o/).
101
101
  and_raise(Mixlib::ShellOut::ShellCommandFailed)
102
102
  end
103
103
 
104
104
  it "works for action :nothing" do
105
- lambda { run_resource_setup_for_action(:nothing) }.should_not raise_error
105
+ expect { run_resource_setup_for_action(:nothing) }.not_to raise_error
106
106
  end
107
107
 
108
108
  it "works for action :start" do
109
- lambda { run_resource_setup_for_action(:start) }.should_not raise_error
109
+ expect { run_resource_setup_for_action(:start) }.not_to raise_error
110
110
  end
111
111
 
112
112
  it "errors if action is :enable" do
113
- lambda { run_resource_setup_for_action(:enable) }.should raise_error(Chef::Exceptions::Service)
113
+ expect { run_resource_setup_for_action(:enable) }.to raise_error(Chef::Exceptions::Service)
114
114
  end
115
115
 
116
116
  it "errors if action is :disable" do
117
- lambda { run_resource_setup_for_action(:disable) }.should raise_error(Chef::Exceptions::Service)
117
+ expect { run_resource_setup_for_action(:disable) }.to raise_error(Chef::Exceptions::Service)
118
118
  end
119
119
  end
120
120
 
@@ -130,11 +130,11 @@ XML
130
130
  end
131
131
 
132
132
  it "sets resource running state to true" do
133
- provider.current_resource.running.should be_true
133
+ expect(provider.current_resource.running).to be_true
134
134
  end
135
135
 
136
136
  it "sets resouce enabled state to true" do
137
- provider.current_resource.enabled.should be_true
137
+ expect(provider.current_resource.enabled).to be_true
138
138
  end
139
139
  end
140
140
 
@@ -146,10 +146,10 @@ XML
146
146
  SVC_LIST
147
147
 
148
148
  before do
149
- Dir.stub(:glob).and_return(["/Users/igor/Library/LaunchAgents/io.redis.redis-server.plist"], [])
149
+ allow(Dir).to receive(:glob).and_return(["/Users/igor/Library/LaunchAgents/io.redis.redis-server.plist"], [])
150
150
  end
151
151
  it "should throw an exception when reload action is attempted" do
152
- lambda {provider.run_action(:reload)}.should raise_error(Chef::Exceptions::UnsupportedAction)
152
+ expect {provider.run_action(:reload)}.to raise_error(Chef::Exceptions::UnsupportedAction)
153
153
  end
154
154
  end
155
155
  context "when launchctl returns empty service pid" do
@@ -164,11 +164,11 @@ SVC_LIST
164
164
  end
165
165
 
166
166
  it "sets resource running state to false" do
167
- provider.current_resource.running.should be_false
167
+ expect(provider.current_resource.running).to be_false
168
168
  end
169
169
 
170
170
  it "sets resouce enabled state to true" do
171
- provider.current_resource.enabled.should be_true
171
+ expect(provider.current_resource.enabled).to be_true
172
172
  end
173
173
  end
174
174
 
@@ -180,65 +180,65 @@ SVC_LIST
180
180
 
181
181
  it "sets service running state to false" do
182
182
  provider.load_current_resource
183
- provider.current_resource.running.should be_false
183
+ expect(provider.current_resource.running).to be_false
184
184
  end
185
185
 
186
186
  context "and plist for service is not available" do
187
187
  before do
188
- Dir.stub(:glob).and_return([])
188
+ allow(Dir).to receive(:glob).and_return([])
189
189
  provider.load_current_resource
190
190
  end
191
191
 
192
192
  it "sets resouce enabled state to false" do
193
- provider.current_resource.enabled.should be_false
193
+ expect(provider.current_resource.enabled).to be_false
194
194
  end
195
195
  end
196
196
 
197
197
  context "and plist for service is available" do
198
198
  before do
199
- Dir.stub(:glob).and_return(["/Users/igor/Library/LaunchAgents/io.redis.redis-server.plist"], [])
199
+ allow(Dir).to receive(:glob).and_return(["/Users/igor/Library/LaunchAgents/io.redis.redis-server.plist"], [])
200
200
  provider.load_current_resource
201
201
  end
202
202
 
203
203
  it "sets resouce enabled state to true" do
204
- provider.current_resource.enabled.should be_true
204
+ expect(provider.current_resource.enabled).to be_true
205
205
  end
206
206
  end
207
207
 
208
208
  describe "and several plists match service name" do
209
209
  it "throws exception" do
210
- Dir.stub(:glob).and_return(["/Users/igor/Library/LaunchAgents/io.redis.redis-server.plist",
210
+ allow(Dir).to receive(:glob).and_return(["/Users/igor/Library/LaunchAgents/io.redis.redis-server.plist",
211
211
  "/Users/wtf/something.plist"])
212
212
  provider.load_current_resource
213
213
  provider.define_resource_requirements
214
- lambda { provider.process_resource_requirements }.should raise_error(Chef::Exceptions::Service)
214
+ expect { provider.process_resource_requirements }.to raise_error(Chef::Exceptions::Service)
215
215
  end
216
216
  end
217
217
  end
218
218
  end
219
219
  describe "#start_service" do
220
220
  before do
221
- Chef::Resource::Service.stub(:new).and_return(current_resource)
221
+ allow(Chef::Resource::Service).to receive(:new).and_return(current_resource)
222
222
  provider.load_current_resource
223
- current_resource.stub(:running).and_return(false)
223
+ allow(current_resource).to receive(:running).and_return(false)
224
224
  end
225
225
 
226
226
  it "calls the start command if one is specified and service is not running" do
227
- new_resource.stub(:start_command).and_return("cowsay dirty")
227
+ allow(new_resource).to receive(:start_command).and_return("cowsay dirty")
228
228
 
229
- provider.should_receive(:shell_out_with_systems_locale!).with("cowsay dirty")
229
+ expect(provider).to receive(:shell_out_with_systems_locale!).with("cowsay dirty")
230
230
  provider.start_service
231
231
  end
232
232
 
233
233
  it "shows warning message if service is already running" do
234
- current_resource.stub(:running).and_return(true)
235
- Chef::Log.should_receive(:debug).with("service[#{service_name}] already running, not starting")
234
+ allow(current_resource).to receive(:running).and_return(true)
235
+ expect(Chef::Log).to receive(:debug).with("service[#{service_name}] already running, not starting")
236
236
 
237
237
  provider.start_service
238
238
  end
239
239
 
240
240
  it "starts service via launchctl if service found" do
241
- provider.should_receive(:shell_out_with_systems_locale!).
241
+ expect(provider).to receive(:shell_out_with_systems_locale!).
242
242
  with("launchctl load -w '/Users/igor/Library/LaunchAgents/io.redis.redis-server.plist'",
243
243
  :group => 1001, :user => 101).
244
244
  and_return(0)
@@ -249,28 +249,28 @@ SVC_LIST
249
249
 
250
250
  describe "#stop_service" do
251
251
  before do
252
- Chef::Resource::Service.stub(:new).and_return(current_resource)
252
+ allow(Chef::Resource::Service).to receive(:new).and_return(current_resource)
253
253
 
254
254
  provider.load_current_resource
255
- current_resource.stub(:running).and_return(true)
255
+ allow(current_resource).to receive(:running).and_return(true)
256
256
  end
257
257
 
258
258
  it "calls the stop command if one is specified and service is running" do
259
- new_resource.stub(:stop_command).and_return("kill -9 123")
259
+ allow(new_resource).to receive(:stop_command).and_return("kill -9 123")
260
260
 
261
- provider.should_receive(:shell_out_with_systems_locale!).with("kill -9 123")
261
+ expect(provider).to receive(:shell_out_with_systems_locale!).with("kill -9 123")
262
262
  provider.stop_service
263
263
  end
264
264
 
265
265
  it "shows warning message if service is not running" do
266
- current_resource.stub(:running).and_return(false)
267
- Chef::Log.should_receive(:debug).with("service[#{service_name}] not running, not stopping")
266
+ allow(current_resource).to receive(:running).and_return(false)
267
+ expect(Chef::Log).to receive(:debug).with("service[#{service_name}] not running, not stopping")
268
268
 
269
269
  provider.stop_service
270
270
  end
271
271
 
272
272
  it "stops the service via launchctl if service found" do
273
- provider.should_receive(:shell_out_with_systems_locale!).
273
+ expect(provider).to receive(:shell_out_with_systems_locale!).
274
274
  with("launchctl unload '/Users/igor/Library/LaunchAgents/io.redis.redis-server.plist'",
275
275
  :group => 1001, :user => 101).
276
276
  and_return(0)
@@ -281,23 +281,23 @@ SVC_LIST
281
281
 
282
282
  describe "#restart_service" do
283
283
  before do
284
- Chef::Resource::Service.stub(:new).and_return(current_resource)
284
+ allow(Chef::Resource::Service).to receive(:new).and_return(current_resource)
285
285
 
286
286
  provider.load_current_resource
287
- current_resource.stub(:running).and_return(true)
288
- provider.stub(:sleep)
287
+ allow(current_resource).to receive(:running).and_return(true)
288
+ allow(provider).to receive(:sleep)
289
289
  end
290
290
 
291
291
  it "issues a command if given" do
292
- new_resource.stub(:restart_command).and_return("reload that thing")
292
+ allow(new_resource).to receive(:restart_command).and_return("reload that thing")
293
293
 
294
- provider.should_receive(:shell_out_with_systems_locale!).with("reload that thing")
294
+ expect(provider).to receive(:shell_out_with_systems_locale!).with("reload that thing")
295
295
  provider.restart_service
296
296
  end
297
297
 
298
298
  it "stops and then starts service" do
299
- provider.should_receive(:stop_service)
300
- provider.should_receive(:start_service);
299
+ expect(provider).to receive(:stop_service)
300
+ expect(provider).to receive(:start_service);
301
301
 
302
302
  provider.restart_service
303
303
  end
@@ -21,22 +21,22 @@ require 'ostruct'
21
21
 
22
22
  shared_examples_for "define_resource_requirements_common" do
23
23
  it "should raise an error if /sbin/chkconfig does not exist" do
24
- File.stub(:exists?).with("/sbin/chkconfig").and_return(false)
25
- @provider.stub(:shell_out).with("/sbin/service chef status").and_raise(Errno::ENOENT)
26
- @provider.stub(:shell_out!).with("/sbin/chkconfig --list chef", :returns => [0,1]).and_raise(Errno::ENOENT)
24
+ allow(File).to receive(:exists?).with("/sbin/chkconfig").and_return(false)
25
+ allow(@provider).to receive(:shell_out).with("/sbin/service chef status").and_raise(Errno::ENOENT)
26
+ allow(@provider).to receive(:shell_out!).with("/sbin/chkconfig --list chef", :returns => [0,1]).and_raise(Errno::ENOENT)
27
27
  @provider.load_current_resource
28
28
  @provider.define_resource_requirements
29
- lambda { @provider.process_resource_requirements }.should raise_error(Chef::Exceptions::Service)
29
+ expect { @provider.process_resource_requirements }.to raise_error(Chef::Exceptions::Service)
30
30
  end
31
31
 
32
32
  it "should not raise an error if the service exists but is not added to any runlevels" do
33
33
  status = double("Status", :exitstatus => 0, :stdout => "" , :stderr => "")
34
- @provider.should_receive(:shell_out).with("/sbin/service chef status").and_return(status)
34
+ expect(@provider).to receive(:shell_out).with("/sbin/service chef status").and_return(status)
35
35
  chkconfig = double("Chkconfig", :exitstatus => 0, :stdout => "", :stderr => "service chef supports chkconfig, but is not referenced in any runlevel (run 'chkconfig --add chef')")
36
- @provider.should_receive(:shell_out!).with("/sbin/chkconfig --list chef", :returns => [0,1]).and_return(chkconfig)
36
+ expect(@provider).to receive(:shell_out!).with("/sbin/chkconfig --list chef", :returns => [0,1]).and_return(chkconfig)
37
37
  @provider.load_current_resource
38
38
  @provider.define_resource_requirements
39
- lambda { @provider.process_resource_requirements }.should_not raise_error
39
+ expect { @provider.process_resource_requirements }.not_to raise_error
40
40
  end
41
41
  end
42
42
 
@@ -54,8 +54,8 @@ describe "Chef::Provider::Service::Redhat" do
54
54
 
55
55
  @provider = Chef::Provider::Service::Redhat.new(@new_resource, @run_context)
56
56
  @provider.action = :start
57
- Chef::Resource::Service.stub(:new).and_return(@current_resource)
58
- File.stub(:exists?).with("/sbin/chkconfig").and_return(true)
57
+ allow(Chef::Resource::Service).to receive(:new).and_return(@current_resource)
58
+ allow(File).to receive(:exists?).with("/sbin/chkconfig").and_return(true)
59
59
  end
60
60
 
61
61
  describe "while not in why run mode" do
@@ -66,22 +66,22 @@ describe "Chef::Provider::Service::Redhat" do
66
66
  describe "load current resource" do
67
67
  it "sets the current enabled status to true if the service is enabled for any run level" do
68
68
  status = double("Status", :exitstatus => 0, :stdout => "" , :stderr => "")
69
- @provider.should_receive(:shell_out).with("/sbin/service chef status").and_return(status)
69
+ expect(@provider).to receive(:shell_out).with("/sbin/service chef status").and_return(status)
70
70
  chkconfig = double("Chkconfig", :exitstatus => 0, :stdout => "chef 0:off 1:off 2:off 3:off 4:off 5:on 6:off", :stderr => "")
71
- @provider.should_receive(:shell_out!).with("/sbin/chkconfig --list chef", :returns => [0,1]).and_return(chkconfig)
72
- @provider.instance_variable_get("@service_missing").should be_false
71
+ expect(@provider).to receive(:shell_out!).with("/sbin/chkconfig --list chef", :returns => [0,1]).and_return(chkconfig)
72
+ expect(@provider.instance_variable_get("@service_missing")).to be_false
73
73
  @provider.load_current_resource
74
- @current_resource.enabled.should be_true
74
+ expect(@current_resource.enabled).to be_true
75
75
  end
76
76
 
77
77
  it "sets the current enabled status to false if the regex does not match" do
78
78
  status = double("Status", :exitstatus => 0, :stdout => "" , :stderr => "")
79
- @provider.should_receive(:shell_out).with("/sbin/service chef status").and_return(status)
79
+ expect(@provider).to receive(:shell_out).with("/sbin/service chef status").and_return(status)
80
80
  chkconfig = double("Chkconfig", :exitstatus => 0, :stdout => "chef 0:off 1:off 2:off 3:off 4:off 5:off 6:off", :stderr => "")
81
- @provider.should_receive(:shell_out!).with("/sbin/chkconfig --list chef", :returns => [0,1]).and_return(chkconfig)
82
- @provider.instance_variable_get("@service_missing").should be_false
83
- @provider.load_current_resource.should eql(@current_resource)
84
- @current_resource.enabled.should be_false
81
+ expect(@provider).to receive(:shell_out!).with("/sbin/chkconfig --list chef", :returns => [0,1]).and_return(chkconfig)
82
+ expect(@provider.instance_variable_get("@service_missing")).to be_false
83
+ expect(@provider.load_current_resource).to eql(@current_resource)
84
+ expect(@current_resource.enabled).to be_false
85
85
  end
86
86
  end
87
87
 
@@ -91,9 +91,9 @@ describe "Chef::Provider::Service::Redhat" do
91
91
  context "when the service does not exist" do
92
92
  before do
93
93
  status = double("Status", :exitstatus => 1, :stdout => "", :stderr => "chef: unrecognized service")
94
- @provider.should_receive(:shell_out).with("/sbin/service chef status").and_return(status)
94
+ expect(@provider).to receive(:shell_out).with("/sbin/service chef status").and_return(status)
95
95
  chkconfig = double("Chkconfig", :existatus=> 1, :stdout => "", :stderr => "error reading information on service chef: No such file or directory")
96
- @provider.should_receive(:shell_out!).with("/sbin/chkconfig --list chef", :returns => [0,1]).and_return(chkconfig)
96
+ expect(@provider).to receive(:shell_out!).with("/sbin/chkconfig --list chef", :returns => [0,1]).and_return(chkconfig)
97
97
  @provider.load_current_resource
98
98
  @provider.define_resource_requirements
99
99
  end
@@ -101,14 +101,14 @@ describe "Chef::Provider::Service::Redhat" do
101
101
  [ "start", "reload", "restart", "enable" ].each do |action|
102
102
  it "should raise an error when the action is #{action}" do
103
103
  @provider.action = action
104
- lambda { @provider.process_resource_requirements }.should raise_error(Chef::Exceptions::Service)
104
+ expect { @provider.process_resource_requirements }.to raise_error(Chef::Exceptions::Service)
105
105
  end
106
106
  end
107
107
 
108
108
  [ "stop", "disable" ].each do |action|
109
109
  it "should not raise an error when the action is #{action}" do
110
110
  @provider.action = action
111
- lambda { @provider.process_resource_requirements }.should_not raise_error
111
+ expect { @provider.process_resource_requirements }.not_to raise_error
112
112
  end
113
113
  end
114
114
  end
@@ -129,26 +129,26 @@ describe "Chef::Provider::Service::Redhat" do
129
129
 
130
130
  it "should not raise an error if the service does not exist" do
131
131
  status = double("Status", :exitstatus => 1, :stdout => "", :stderr => "chef: unrecognized service")
132
- @provider.should_receive(:shell_out).with("/sbin/service chef status").and_return(status)
132
+ expect(@provider).to receive(:shell_out).with("/sbin/service chef status").and_return(status)
133
133
  chkconfig = double("Chkconfig", :existatus=> 1, :stdout => "", :stderr => "error reading information on service chef: No such file or directory")
134
- @provider.should_receive(:shell_out!).with("/sbin/chkconfig --list chef", :returns => [0,1]).and_return(chkconfig)
134
+ expect(@provider).to receive(:shell_out!).with("/sbin/chkconfig --list chef", :returns => [0,1]).and_return(chkconfig)
135
135
  @provider.load_current_resource
136
136
  @provider.define_resource_requirements
137
- lambda { @provider.process_resource_requirements }.should_not raise_error
137
+ expect { @provider.process_resource_requirements }.not_to raise_error
138
138
  end
139
139
  end
140
140
  end
141
141
 
142
142
  describe "enable_service" do
143
143
  it "should call chkconfig to add 'service_name'" do
144
- @provider.should_receive(:shell_out!).with("/sbin/chkconfig #{@new_resource.service_name} on")
144
+ expect(@provider).to receive(:shell_out!).with("/sbin/chkconfig #{@new_resource.service_name} on")
145
145
  @provider.enable_service
146
146
  end
147
147
  end
148
148
 
149
149
  describe "disable_service" do
150
150
  it "should call chkconfig to del 'service_name'" do
151
- @provider.should_receive(:shell_out!).with("/sbin/chkconfig #{@new_resource.service_name} off")
151
+ expect(@provider).to receive(:shell_out!).with("/sbin/chkconfig #{@new_resource.service_name} off")
152
152
  @provider.disable_service
153
153
  end
154
154
  end
@@ -29,7 +29,7 @@ describe Chef::Provider::Service::Simple, "load_current_resource" do
29
29
  @current_resource = Chef::Resource::Service.new("chef")
30
30
 
31
31
  @provider = Chef::Provider::Service::Simple.new(@new_resource, @run_context)
32
- Chef::Resource::Service.stub(:new).and_return(@current_resource)
32
+ allow(Chef::Resource::Service).to receive(:new).and_return(@current_resource)
33
33
 
34
34
  @stdout = StringIO.new(<<-NOMOCKINGSTRINGSPLZ)
35
35
  aj 7842 5057 0 21:26 pts/2 00:00:06 vi init.rb
@@ -37,40 +37,40 @@ aj 7903 5016 0 21:26 pts/5 00:00:00 /bin/bash
37
37
  aj 8119 6041 0 21:34 pts/3 00:00:03 vi simple_service_spec.rb
38
38
  NOMOCKINGSTRINGSPLZ
39
39
  @status = double("Status", :exitstatus => 0, :stdout => @stdout)
40
- @provider.stub(:shell_out!).and_return(@status)
40
+ allow(@provider).to receive(:shell_out!).and_return(@status)
41
41
  end
42
42
 
43
43
  it "should create a current resource with the name of the new resource" do
44
- Chef::Resource::Service.should_receive(:new).and_return(@current_resource)
44
+ expect(Chef::Resource::Service).to receive(:new).and_return(@current_resource)
45
45
  @provider.load_current_resource
46
46
  end
47
47
 
48
48
  it "should set the current resources service name to the new resources service name" do
49
- @current_resource.should_receive(:service_name).with(@new_resource.service_name)
49
+ expect(@current_resource).to receive(:service_name).with(@new_resource.service_name)
50
50
  @provider.load_current_resource
51
51
  end
52
52
 
53
53
  it "should raise error if the node has a nil ps attribute and no other means to get status" do
54
54
  @node.automatic_attrs[:command] = {:ps => nil}
55
55
  @provider.define_resource_requirements
56
- lambda { @provider.process_resource_requirements }.should raise_error(Chef::Exceptions::Service)
56
+ expect { @provider.process_resource_requirements }.to raise_error(Chef::Exceptions::Service)
57
57
  end
58
58
 
59
59
  it "should raise error if the node has an empty ps attribute and no other means to get status" do
60
60
  @node.automatic_attrs[:command] = {:ps => ""}
61
61
  @provider.define_resource_requirements
62
- lambda { @provider.process_resource_requirements }.should raise_error(Chef::Exceptions::Service)
62
+ expect { @provider.process_resource_requirements }.to raise_error(Chef::Exceptions::Service)
63
63
  end
64
64
 
65
65
  describe "when we have a 'ps' attribute" do
66
66
  it "should shell_out! the node's ps command" do
67
- @provider.should_receive(:shell_out!).with(@node[:command][:ps]).and_return(@status)
67
+ expect(@provider).to receive(:shell_out!).with(@node[:command][:ps]).and_return(@status)
68
68
  @provider.load_current_resource
69
69
  end
70
70
 
71
71
  it "should read stdout of the ps command" do
72
- @provider.stub(:shell_out!).and_return(@status)
73
- @stdout.should_receive(:each_line).and_return(true)
72
+ allow(@provider).to receive(:shell_out!).and_return(@status)
73
+ expect(@stdout).to receive(:each_line).and_return(true)
74
74
  @provider.load_current_resource
75
75
  end
76
76
 
@@ -80,75 +80,75 @@ aj 7842 5057 0 21:26 pts/2 00:00:06 chef
80
80
  aj 7842 5057 0 21:26 pts/2 00:00:06 poos
81
81
  NOMOCKINGSTRINGSPLZ
82
82
  @status = double("Status", :exitstatus => 0, :stdout => @stdout)
83
- @provider.stub(:shell_out!).and_return(@status)
83
+ allow(@provider).to receive(:shell_out!).and_return(@status)
84
84
  @provider.load_current_resource
85
- @current_resource.running.should be_true
85
+ expect(@current_resource.running).to be_true
86
86
  end
87
87
 
88
88
  it "should set running to false if the regex doesn't match" do
89
- @provider.stub(:shell_out!).and_return(@status)
89
+ allow(@provider).to receive(:shell_out!).and_return(@status)
90
90
  @provider.load_current_resource
91
- @current_resource.running.should be_false
91
+ expect(@current_resource.running).to be_false
92
92
  end
93
93
 
94
94
  it "should raise an exception if ps fails" do
95
- @provider.stub(:shell_out!).and_raise(Mixlib::ShellOut::ShellCommandFailed)
95
+ allow(@provider).to receive(:shell_out!).and_raise(Mixlib::ShellOut::ShellCommandFailed)
96
96
  @provider.action = :start
97
97
  @provider.load_current_resource
98
98
  @provider.define_resource_requirements
99
- lambda { @provider.process_resource_requirements }.should raise_error(Chef::Exceptions::Service)
99
+ expect { @provider.process_resource_requirements }.to raise_error(Chef::Exceptions::Service)
100
100
  end
101
101
  end
102
102
 
103
103
  it "should return the current resource" do
104
- @provider.load_current_resource.should eql(@current_resource)
104
+ expect(@provider.load_current_resource).to eql(@current_resource)
105
105
  end
106
106
 
107
107
  describe "when starting the service" do
108
108
  it "should call the start command if one is specified" do
109
- @new_resource.stub(:start_command).and_return("#{@new_resource.start_command}")
110
- @provider.should_receive(:shell_out_with_systems_locale!).with("#{@new_resource.start_command}")
109
+ allow(@new_resource).to receive(:start_command).and_return("#{@new_resource.start_command}")
110
+ expect(@provider).to receive(:shell_out_with_systems_locale!).with("#{@new_resource.start_command}")
111
111
  @provider.start_service()
112
112
  end
113
113
 
114
114
  it "should raise an exception if no start command is specified" do
115
115
  @provider.define_resource_requirements
116
116
  @provider.action = :start
117
- lambda { @provider.process_resource_requirements }.should raise_error(Chef::Exceptions::Service)
117
+ expect { @provider.process_resource_requirements }.to raise_error(Chef::Exceptions::Service)
118
118
  end
119
119
  end
120
120
 
121
121
  describe "when stopping a service" do
122
122
  it "should call the stop command if one is specified" do
123
123
  @new_resource.stop_command("/etc/init.d/themadness stop")
124
- @provider.should_receive(:shell_out_with_systems_locale!).with("/etc/init.d/themadness stop")
124
+ expect(@provider).to receive(:shell_out_with_systems_locale!).with("/etc/init.d/themadness stop")
125
125
  @provider.stop_service()
126
126
  end
127
127
 
128
128
  it "should raise an exception if no stop command is specified" do
129
129
  @provider.define_resource_requirements
130
130
  @provider.action = :stop
131
- lambda { @provider.process_resource_requirements }.should raise_error(Chef::Exceptions::Service)
131
+ expect { @provider.process_resource_requirements }.to raise_error(Chef::Exceptions::Service)
132
132
  end
133
133
  end
134
134
 
135
135
  describe Chef::Provider::Service::Simple, "restart_service" do
136
136
  it "should call the restart command if one has been specified" do
137
137
  @new_resource.restart_command("/etc/init.d/foo restart")
138
- @provider.should_receive(:shell_out_with_systems_locale!).with("/etc/init.d/foo restart")
138
+ expect(@provider).to receive(:shell_out_with_systems_locale!).with("/etc/init.d/foo restart")
139
139
  @provider.restart_service()
140
140
  end
141
141
 
142
142
  it "should raise an exception if the resource doesn't support restart, no restart command is provided, and no stop command is provided" do
143
143
  @provider.define_resource_requirements
144
144
  @provider.action = :restart
145
- lambda { @provider.process_resource_requirements }.should raise_error(Chef::Exceptions::Service)
145
+ expect { @provider.process_resource_requirements }.to raise_error(Chef::Exceptions::Service)
146
146
  end
147
147
 
148
148
  it "should just call stop, then start when the resource doesn't support restart and no restart_command is specified" do
149
- @provider.should_receive(:stop_service)
150
- @provider.should_receive(:sleep).with(1)
151
- @provider.should_receive(:start_service)
149
+ expect(@provider).to receive(:stop_service)
150
+ expect(@provider).to receive(:sleep).with(1)
151
+ expect(@provider).to receive(:start_service)
152
152
  @provider.restart_service()
153
153
  end
154
154
  end
@@ -157,12 +157,12 @@ NOMOCKINGSTRINGSPLZ
157
157
  it "should raise an exception if reload is requested but no command is specified" do
158
158
  @provider.define_resource_requirements
159
159
  @provider.action = :reload
160
- lambda { @provider.process_resource_requirements }.should raise_error(Chef::Exceptions::UnsupportedAction)
160
+ expect { @provider.process_resource_requirements }.to raise_error(Chef::Exceptions::UnsupportedAction)
161
161
  end
162
162
 
163
163
  it "should should run the user specified reload command if one is specified" do
164
164
  @new_resource.reload_command("kill -9 1")
165
- @provider.should_receive(:shell_out_with_systems_locale!).with("kill -9 1")
165
+ expect(@provider).to receive(:shell_out_with_systems_locale!).with("kill -9 1")
166
166
  @provider.reload_service()
167
167
  end
168
168
  end