chef 12.0.0.alpha.2-x86-mingw32 → 12.0.0.rc.0-x86-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (628) 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/ext/win32-eventlog/Rakefile +50 -0
  82. data/ext/win32-eventlog/chef-log.man +26 -0
  83. data/lib/chef/application.rb +313 -241
  84. data/lib/chef/application/apply.rb +10 -8
  85. data/lib/chef/application/client.rb +58 -33
  86. data/lib/chef/application/solo.rb +33 -12
  87. data/lib/chef/chef_fs/chef_fs_data_store.rb +1 -1
  88. data/lib/chef/chef_fs/command_line.rb +1 -1
  89. data/lib/chef/chef_fs/file_system/organization_invites_entry.rb +2 -1
  90. data/lib/chef/chef_fs/file_system/organization_members_entry.rb +2 -1
  91. data/lib/chef/chef_fs/file_system/rest_list_entry.rb +2 -1
  92. data/lib/chef/client.rb +18 -48
  93. data/lib/chef/config.rb +43 -11
  94. data/lib/chef/cookbook/cookbook_version_loader.rb +14 -7
  95. data/lib/chef/cookbook/metadata.rb +81 -38
  96. data/lib/chef/cookbook/syntax_check.rb +18 -52
  97. data/lib/chef/cookbook_loader.rb +1 -1
  98. data/lib/chef/cookbook_version.rb +58 -39
  99. data/lib/chef/data_bag.rb +2 -2
  100. data/lib/chef/deprecation/provider/file.rb +2 -1
  101. data/lib/chef/dsl/data_query.rb +2 -29
  102. data/lib/chef/dsl/recipe.rb +8 -22
  103. data/lib/chef/encrypted_data_bag_item/assertions.rb +1 -1
  104. data/lib/chef/encrypted_data_bag_item/check_encrypted.rb +56 -0
  105. data/lib/chef/encrypted_data_bag_item/encrypted_data_bag_item_assertions.rb +1 -1
  106. data/lib/chef/event_loggers/base.rb +62 -0
  107. data/lib/chef/event_loggers/windows_eventlog.rb +104 -0
  108. data/lib/chef/exceptions.rb +18 -1
  109. data/lib/chef/file_cache.rb +3 -2
  110. data/lib/chef/guard_interpreter/resource_guard_interpreter.rb +15 -6
  111. data/lib/chef/http.rb +20 -13
  112. data/lib/chef/http/ssl_policies.rb +2 -1
  113. data/lib/chef/json_compat.rb +9 -3
  114. data/lib/chef/knife.rb +2 -1
  115. data/lib/chef/knife/bootstrap.rb +12 -18
  116. data/lib/chef/knife/bootstrap/archlinux-gems.erb +2 -2
  117. data/lib/chef/knife/bootstrap/chef-aix.erb +2 -2
  118. data/lib/chef/knife/bootstrap/chef-full.erb +2 -2
  119. data/lib/chef/knife/cookbook_create.rb +1 -1
  120. data/lib/chef/knife/cookbook_site_share.rb +43 -8
  121. data/lib/chef/knife/core/bootstrap_context.rb +6 -11
  122. data/lib/chef/knife/core/object_loader.rb +5 -5
  123. data/lib/chef/knife/core/status_presenter.rb +156 -0
  124. data/lib/chef/knife/core/subcommand_loader.rb +6 -5
  125. data/lib/chef/knife/core/ui.rb +4 -4
  126. data/lib/chef/knife/data_bag_create.rb +7 -32
  127. data/lib/chef/knife/data_bag_edit.rb +24 -43
  128. data/lib/chef/knife/data_bag_from_file.rb +6 -31
  129. data/lib/chef/knife/data_bag_secret_options.rb +142 -0
  130. data/lib/chef/knife/data_bag_show.rb +19 -33
  131. data/lib/chef/knife/node_from_file.rb +9 -8
  132. data/lib/chef/knife/ssh.rb +0 -7
  133. data/lib/chef/knife/ssl_check.rb +70 -6
  134. data/lib/chef/knife/status.rb +11 -58
  135. data/lib/chef/mixin/command/unix.rb +2 -2
  136. data/lib/chef/mixin/convert_to_class_name.rb +54 -0
  137. data/lib/chef/mixin/descendants_tracker.rb +82 -0
  138. data/lib/chef/mixin/homebrew_user.rb +68 -0
  139. data/lib/chef/mixin/shell_out.rb +0 -4
  140. data/lib/chef/mixin/windows_architecture_helper.rb +16 -0
  141. data/lib/chef/mixin/windows_env_helper.rb +56 -0
  142. data/lib/chef/node.rb +2 -2
  143. data/lib/chef/node_map.rb +146 -0
  144. data/lib/chef/platform/provider_mapping.rb +11 -39
  145. data/lib/chef/platform/provider_priority_map.rb +80 -0
  146. data/lib/chef/platform/query_helpers.rb +5 -1
  147. data/lib/chef/platform/service_helpers.rb +113 -0
  148. data/lib/chef/provider.rb +24 -0
  149. data/lib/chef/provider/breakpoint.rb +2 -0
  150. data/lib/chef/provider/cookbook_file.rb +2 -0
  151. data/lib/chef/provider/cron.rb +1 -1
  152. data/lib/chef/provider/cron/unix.rb +13 -9
  153. data/lib/chef/provider/deploy.rb +3 -2
  154. data/lib/chef/provider/deploy/revision.rb +4 -2
  155. data/lib/chef/provider/deploy/timestamped.rb +2 -0
  156. data/lib/chef/provider/directory.rb +2 -0
  157. data/lib/chef/provider/dsc_script.rb +179 -0
  158. data/lib/chef/provider/env.rb +25 -10
  159. data/lib/chef/provider/env/windows.rb +9 -16
  160. data/lib/chef/provider/erl_call.rb +2 -0
  161. data/lib/chef/provider/execute.rb +5 -2
  162. data/lib/chef/provider/file.rb +2 -0
  163. data/lib/chef/provider/git.rb +51 -23
  164. data/lib/chef/provider/group/dscl.rb +2 -2
  165. data/lib/chef/provider/group/pw.rb +9 -13
  166. data/lib/chef/provider/http_request.rb +2 -0
  167. data/lib/chef/provider/link.rb +3 -0
  168. data/lib/chef/provider/log.rb +2 -0
  169. data/lib/chef/provider/lwrp_base.rb +11 -9
  170. data/lib/chef/provider/mount/mount.rb +1 -1
  171. data/lib/chef/provider/package/aix.rb +2 -0
  172. data/lib/chef/provider/package/apt.rb +2 -0
  173. data/lib/chef/provider/package/dpkg.rb +2 -0
  174. data/lib/chef/provider/package/easy_install.rb +2 -0
  175. data/lib/chef/provider/package/freebsd/pkg.rb +2 -1
  176. data/lib/chef/provider/package/freebsd/pkgng.rb +1 -1
  177. data/lib/chef/provider/package/freebsd/port.rb +1 -9
  178. data/lib/chef/provider/package/homebrew.rb +127 -0
  179. data/lib/chef/provider/package/ips.rb +2 -0
  180. data/lib/chef/provider/package/macports.rb +3 -0
  181. data/lib/chef/provider/package/pacman.rb +5 -4
  182. data/lib/chef/provider/package/paludis.rb +4 -2
  183. data/lib/chef/provider/package/portage.rb +4 -1
  184. data/lib/chef/provider/package/rpm.rb +2 -0
  185. data/lib/chef/provider/package/rubygems.rb +4 -0
  186. data/lib/chef/provider/package/smartos.rb +2 -0
  187. data/lib/chef/provider/package/solaris.rb +2 -0
  188. data/lib/chef/provider/package/windows.rb +5 -2
  189. data/lib/chef/provider/package/yum.rb +2 -0
  190. data/lib/chef/provider/powershell_script.rb +3 -1
  191. data/lib/chef/provider/remote_directory.rb +25 -10
  192. data/lib/chef/provider/route.rb +2 -0
  193. data/lib/chef/provider/ruby_block.rb +2 -0
  194. data/lib/chef/provider/script.rb +6 -0
  195. data/lib/chef/provider/service/aix.rb +128 -0
  196. data/lib/chef/provider/service/aixinit.rb +117 -0
  197. data/lib/chef/provider/service/arch.rb +6 -0
  198. data/lib/chef/provider/service/debian.rb +35 -29
  199. data/lib/chef/provider/service/freebsd.rb +7 -1
  200. data/lib/chef/provider/service/gentoo.rb +5 -1
  201. data/lib/chef/provider/service/init.rb +2 -0
  202. data/lib/chef/provider/service/insserv.rb +15 -8
  203. data/lib/chef/provider/service/invokercd.rb +6 -0
  204. data/lib/chef/provider/service/macosx.rb +4 -1
  205. data/lib/chef/provider/service/redhat.rb +9 -3
  206. data/lib/chef/provider/service/simple.rb +2 -0
  207. data/lib/chef/provider/service/solaris.rb +2 -0
  208. data/lib/chef/provider/service/systemd.rb +7 -0
  209. data/lib/chef/provider/service/upstart.rb +7 -0
  210. data/lib/chef/provider/service/windows.rb +5 -0
  211. data/lib/chef/provider/subversion.rb +2 -0
  212. data/lib/chef/provider/template.rb +1 -0
  213. data/lib/chef/provider/user/dscl.rb +3 -2
  214. data/lib/chef/provider/whyrun_safe_ruby_block.rb +2 -0
  215. data/lib/chef/provider_resolver.rb +103 -0
  216. data/lib/chef/providers.rb +6 -2
  217. data/lib/chef/recipe.rb +2 -0
  218. data/lib/chef/resource.rb +69 -78
  219. data/lib/chef/resource/apt_package.rb +3 -1
  220. data/lib/chef/resource/bash.rb +1 -0
  221. data/lib/chef/resource/bff_package.rb +0 -1
  222. data/lib/chef/resource/breakpoint.rb +1 -1
  223. data/lib/chef/resource/chef_gem.rb +1 -2
  224. data/lib/chef/resource/conditional.rb +26 -6
  225. data/lib/chef/resource/cookbook_file.rb +2 -3
  226. data/lib/chef/resource/csh.rb +1 -0
  227. data/lib/chef/resource/deploy.rb +0 -1
  228. data/lib/chef/resource/deploy_revision.rb +6 -1
  229. data/lib/chef/resource/directory.rb +1 -2
  230. data/lib/chef/resource/dpkg_package.rb +2 -1
  231. data/lib/chef/resource/dsc_script.rb +125 -0
  232. data/lib/chef/resource/easy_install_package.rb +2 -1
  233. data/lib/chef/resource/erl_call.rb +1 -0
  234. data/lib/chef/resource/execute.rb +26 -9
  235. data/lib/chef/resource/file.rb +1 -3
  236. data/lib/chef/resource/freebsd_package.rb +10 -23
  237. data/lib/chef/resource/gem_package.rb +2 -1
  238. data/lib/chef/resource/git.rb +2 -1
  239. data/lib/chef/resource/homebrew_package.rb +46 -0
  240. data/lib/chef/resource/http_request.rb +1 -0
  241. data/lib/chef/resource/ips_package.rb +3 -1
  242. data/lib/chef/resource/link.rb +1 -2
  243. data/lib/chef/resource/log.rb +4 -0
  244. data/lib/chef/resource/lwrp_base.rb +24 -15
  245. data/lib/chef/resource/macports_package.rb +3 -1
  246. data/lib/chef/resource/pacman_package.rb +2 -1
  247. data/lib/chef/resource/paludis_package.rb +3 -1
  248. data/lib/chef/resource/perl.rb +1 -0
  249. data/lib/chef/resource/powershell_script.rb +0 -2
  250. data/lib/chef/resource/python.rb +1 -1
  251. data/lib/chef/resource/remote_directory.rb +1 -2
  252. data/lib/chef/resource/remote_file.rb +1 -1
  253. data/lib/chef/resource/rpm_package.rb +2 -1
  254. data/lib/chef/resource/ruby.rb +1 -0
  255. data/lib/chef/resource/ruby_block.rb +3 -0
  256. data/lib/chef/resource/script.rb +2 -25
  257. data/lib/chef/resource/service.rb +0 -4
  258. data/lib/chef/resource/smartos_package.rb +3 -4
  259. data/lib/chef/resource/solaris_package.rb +7 -1
  260. data/lib/chef/resource/subversion.rb +0 -1
  261. data/lib/chef/resource/template.rb +2 -3
  262. data/lib/chef/resource/timestamped_deploy.rb +1 -2
  263. data/lib/chef/resource/whyrun_safe_ruby_block.rb +0 -1
  264. data/lib/chef/resource/windows_package.rb +3 -4
  265. data/lib/chef/resource/windows_script.rb +3 -0
  266. data/lib/chef/resource/windows_service.rb +2 -2
  267. data/lib/chef/resource/yum_package.rb +3 -1
  268. data/lib/chef/resource_collection.rb +50 -227
  269. data/lib/chef/resource_collection/resource_collection_serialization.rb +59 -0
  270. data/lib/chef/resource_collection/resource_list.rb +89 -0
  271. data/lib/chef/resource_collection/resource_set.rb +170 -0
  272. data/lib/chef/resources.rb +2 -0
  273. data/lib/chef/role.rb +1 -1
  274. data/lib/chef/run_context.rb +5 -1
  275. data/lib/chef/shell/ext.rb +1 -1
  276. data/lib/chef/util/backup.rb +3 -2
  277. data/lib/chef/util/dsc/configuration_generator.rb +115 -0
  278. data/lib/chef/util/dsc/lcm_output_parser.rb +133 -0
  279. data/lib/chef/util/dsc/local_configuration_manager.rb +141 -0
  280. data/lib/chef/util/dsc/resource_info.rb +26 -0
  281. data/lib/chef/util/path_helper.rb +12 -0
  282. data/lib/chef/util/powershell/cmdlet.rb +136 -0
  283. data/lib/chef/util/powershell/cmdlet_result.rb +46 -0
  284. data/lib/chef/version.rb +1 -1
  285. data/lib/chef/win32/api/system.rb +9 -0
  286. data/lib/chef/win32/version.rb +2 -0
  287. data/spec/.DS_Store +0 -0
  288. data/spec/data/.DS_Store +0 -0
  289. data/spec/data/bootstrap/test-hints.erb +1 -1
  290. data/spec/data/bootstrap/test.erb +1 -1
  291. data/spec/data/cb_version_cookbooks/cookbook2/files/test.txt +0 -0
  292. data/spec/data/cb_version_cookbooks/cookbook2/templates/test.erb +0 -0
  293. data/spec/data/cookbooks/ignorken/files/default/not_me.rb +2 -0
  294. data/spec/data/cookbooks/ignorken/templates/ubuntu-12.10/not_me.rb +2 -0
  295. data/spec/data/cookbooks/openldap/libraries/openldap.rb +4 -0
  296. data/spec/data/cookbooks/openldap/libraries/openldap/version.rb +3 -0
  297. data/spec/data/lwrp/.DS_Store +0 -0
  298. data/spec/data/lwrp/providers/.DS_Store +0 -0
  299. data/spec/data/lwrp/providers/buck_passer.rb +9 -2
  300. data/spec/data/lwrp/resources/.DS_Store +0 -0
  301. data/spec/data/lwrp/resources/foo.rb +3 -2
  302. data/spec/data/lwrp_override/.DS_Store +0 -0
  303. data/spec/data/lwrp_override/providers/.DS_Store +0 -0
  304. data/spec/data/lwrp_override/providers/buck_passer.rb +5 -10
  305. data/spec/data/lwrp_override/resources/.DS_Store +0 -0
  306. data/spec/data/lwrp_override/resources/foo.rb +4 -3
  307. data/spec/functional/assets/chefinittest +34 -0
  308. data/spec/functional/assets/testchefsubsys +11 -0
  309. data/spec/functional/dsl/reboot_pending_spec.rb +19 -16
  310. data/spec/functional/event_loggers/windows_eventlog_spec.rb +82 -0
  311. data/spec/functional/knife/cookbook_delete_spec.rb +3 -3
  312. data/spec/functional/knife/exec_spec.rb +1 -1
  313. data/spec/functional/resource/aix_service_spec.rb +136 -0
  314. data/spec/functional/resource/aixinit_service_spec.rb +211 -0
  315. data/spec/functional/resource/base.rb +1 -0
  316. data/spec/functional/resource/batch_spec.rb +4 -11
  317. data/spec/functional/resource/cron_spec.rb +7 -1
  318. data/spec/functional/resource/dsc_script_spec.rb +382 -0
  319. data/spec/functional/resource/env_spec.rb +54 -0
  320. data/spec/functional/resource/execute_spec.rb +113 -0
  321. data/spec/functional/resource/file_spec.rb +2 -0
  322. data/spec/functional/resource/group_spec.rb +7 -4
  323. data/spec/functional/resource/powershell_spec.rb +198 -185
  324. data/spec/functional/resource/rpm_spec.rb +5 -4
  325. data/spec/functional/resource/user/dscl_spec.rb +2 -1
  326. data/spec/functional/util/path_helper_spec.rb +37 -0
  327. data/spec/functional/util/powershell/cmdlet_spec.rb +114 -0
  328. data/spec/integration/client/client_spec.rb +1 -1
  329. data/spec/integration/client/ipv6_spec.rb +1 -1
  330. data/spec/integration/knife/chef_fs_data_store_spec.rb +1 -1
  331. data/spec/integration/knife/chef_repo_path_spec.rb +1 -1
  332. data/spec/integration/knife/chef_repository_file_system_spec.rb +1 -1
  333. data/spec/integration/knife/chefignore_spec.rb +1 -1
  334. data/spec/integration/knife/common_options_spec.rb +1 -1
  335. data/spec/integration/knife/cookbook_api_ipv6_spec.rb +2 -2
  336. data/spec/integration/knife/delete_spec.rb +1 -1
  337. data/spec/integration/knife/deps_spec.rb +1 -1
  338. data/spec/integration/knife/diff_spec.rb +1 -1
  339. data/spec/integration/knife/download_spec.rb +1 -1
  340. data/spec/integration/knife/list_spec.rb +1 -1
  341. data/spec/integration/knife/raw_spec.rb +1 -1
  342. data/spec/integration/knife/redirection_spec.rb +1 -1
  343. data/spec/integration/knife/serve_spec.rb +1 -1
  344. data/spec/integration/knife/show_spec.rb +1 -1
  345. data/spec/integration/knife/upload_spec.rb +4 -3
  346. data/spec/integration/recipes/lwrp_inline_resources_spec.rb +1 -1
  347. data/spec/spec_helper.rb +15 -0
  348. data/spec/support/chef_helpers.rb +1 -0
  349. data/spec/support/lib/chef/provider/snakeoil.rb +1 -0
  350. data/spec/support/lib/chef/resource/zen_follower.rb +1 -7
  351. data/spec/support/platform_helpers.rb +28 -0
  352. data/spec/support/shared/functional/file_resource.rb +6 -0
  353. data/spec/support/shared/functional/windows_script.rb +118 -0
  354. data/spec/support/shared/integration/integration_helper.rb +5 -2
  355. data/spec/support/shared/matchers/exit_with_code.rb +28 -0
  356. data/spec/support/shared/matchers/match_environment_variable.rb +17 -0
  357. data/spec/support/shared/shared_examples.rb +14 -0
  358. data/spec/support/shared/unit/execute_resource.rb +0 -7
  359. data/spec/support/shared/unit/resource/static_provider_resolution.rb +71 -0
  360. data/spec/support/shared/unit/script_resource.rb +1 -1
  361. data/spec/support/shared/unit/windows_script_resource.rb +35 -2
  362. data/spec/tiny_server.rb +1 -2
  363. data/spec/unit/api_client_spec.rb +5 -1
  364. data/spec/unit/application/{apply.rb → apply_spec.rb} +13 -5
  365. data/spec/unit/application/client_spec.rb +106 -13
  366. data/spec/unit/application/solo_spec.rb +25 -1
  367. data/spec/unit/client_spec.rb +1 -26
  368. data/spec/unit/config_fetcher_spec.rb +2 -1
  369. data/spec/unit/config_spec.rb +91 -2
  370. data/spec/unit/cookbook/cookbook_version_loader_spec.rb +8 -0
  371. data/spec/unit/cookbook/metadata_spec.rb +43 -6
  372. data/spec/unit/cookbook/syntax_check_spec.rb +8 -2
  373. data/spec/unit/cookbook_loader_spec.rb +4 -2
  374. data/spec/unit/cookbook_version_spec.rb +83 -2
  375. data/spec/unit/data_bag_item_spec.rb +5 -1
  376. data/spec/unit/data_bag_spec.rb +6 -1
  377. data/spec/unit/dsl/data_query_spec.rb +8 -110
  378. data/spec/unit/encrypted_data_bag_item/check_encrypted_spec.rb +95 -0
  379. data/spec/unit/encrypted_data_bag_item_spec.rb +16 -23
  380. data/spec/unit/environment_spec.rb +6 -2
  381. data/spec/unit/exceptions_spec.rb +6 -0
  382. data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +16 -15
  383. data/spec/unit/json_compat_spec.rb +12 -2
  384. data/spec/unit/knife/bootstrap_spec.rb +16 -63
  385. data/spec/unit/knife/cookbook_site_share_spec.rb +59 -6
  386. data/spec/unit/knife/core/bootstrap_context_spec.rb +8 -37
  387. data/spec/unit/knife/core/subcommand_loader_spec.rb +1 -1
  388. data/spec/unit/knife/core/ui_spec.rb +28 -0
  389. data/spec/unit/knife/data_bag_create_spec.rb +63 -71
  390. data/spec/unit/knife/data_bag_edit_spec.rb +83 -49
  391. data/spec/unit/knife/data_bag_from_file_spec.rb +104 -126
  392. data/spec/unit/knife/data_bag_secret_options_spec.rb +165 -0
  393. data/spec/unit/knife/data_bag_show_spec.rb +74 -72
  394. data/spec/unit/knife/environment_from_file_spec.rb +3 -2
  395. data/spec/unit/knife/ssl_check_spec.rb +46 -1
  396. data/spec/unit/knife/status_spec.rb +1 -2
  397. data/spec/unit/knife_spec.rb +18 -1
  398. data/spec/unit/lwrp_spec.rb +29 -8
  399. data/spec/unit/mixin/homebrew_user_spec.rb +100 -0
  400. data/spec/unit/node_map_spec.rb +155 -0
  401. data/spec/unit/node_spec.rb +11 -0
  402. data/spec/unit/platform/query_helpers_spec.rb +23 -0
  403. data/spec/unit/platform_spec.rb +23 -0
  404. data/spec/unit/provider/breakpoint_spec.rb +9 -9
  405. data/spec/unit/provider/cookbook_file/content_spec.rb +3 -3
  406. data/spec/unit/provider/cookbook_file_spec.rb +1 -1
  407. data/spec/unit/provider/cron/unix_spec.rb +78 -60
  408. data/spec/unit/provider/cron_spec.rb +175 -175
  409. data/spec/unit/provider/deploy/revision_spec.rb +22 -21
  410. data/spec/unit/provider/deploy/timestamped_spec.rb +3 -3
  411. data/spec/unit/provider/deploy_spec.rb +231 -230
  412. data/spec/unit/provider/directory_spec.rb +55 -55
  413. data/spec/unit/provider/dsc_script_spec.rb +174 -0
  414. data/spec/unit/provider/env/windows_spec.rb +70 -34
  415. data/spec/unit/provider/env_spec.rb +95 -49
  416. data/spec/unit/provider/erl_call_spec.rb +9 -9
  417. data/spec/unit/provider/execute_spec.rb +43 -27
  418. data/spec/unit/provider/file/content_spec.rb +9 -9
  419. data/spec/unit/provider/file_spec.rb +1 -1
  420. data/spec/unit/provider/git_spec.rb +221 -159
  421. data/spec/unit/provider/group/dscl_spec.rb +64 -63
  422. data/spec/unit/provider/group/gpasswd_spec.rb +14 -14
  423. data/spec/unit/provider/group/groupadd_spec.rb +33 -33
  424. data/spec/unit/provider/group/groupmod_spec.rb +23 -23
  425. data/spec/unit/provider/group/pw_spec.rb +21 -21
  426. data/spec/unit/provider/group/usermod_spec.rb +20 -20
  427. data/spec/unit/provider/group/windows_spec.rb +15 -15
  428. data/spec/unit/provider/group_spec.rb +76 -76
  429. data/spec/unit/provider/http_request_spec.rb +30 -30
  430. data/spec/unit/provider/ifconfig/aix_spec.rb +20 -20
  431. data/spec/unit/provider/ifconfig/debian_spec.rb +25 -9
  432. data/spec/unit/provider/ifconfig/redhat_spec.rb +13 -13
  433. data/spec/unit/provider/ifconfig_spec.rb +43 -43
  434. data/spec/unit/provider/link_spec.rb +60 -60
  435. data/spec/unit/provider/log_spec.rb +0 -4
  436. data/spec/unit/provider/mdadm_spec.rb +23 -23
  437. data/spec/unit/provider/mount/aix_spec.rb +17 -17
  438. data/spec/unit/provider/mount/mount_spec.rb +115 -119
  439. data/spec/unit/provider/mount/solaris_spec.rb +72 -72
  440. data/spec/unit/provider/mount/windows_spec.rb +24 -24
  441. data/spec/unit/provider/ohai_spec.rb +11 -11
  442. data/spec/unit/provider/package/aix_spec.rb +34 -34
  443. data/spec/unit/provider/package/apt_spec.rb +36 -36
  444. data/spec/unit/provider/package/dpkg_spec.rb +27 -27
  445. data/spec/unit/provider/package/easy_install_spec.rb +16 -16
  446. data/spec/unit/provider/package/freebsd/pkg_spec.rb +53 -53
  447. data/spec/unit/provider/package/freebsd/pkgng_spec.rb +24 -24
  448. data/spec/unit/provider/package/freebsd/port_spec.rb +45 -35
  449. data/spec/unit/provider/package/homebrew_spec.rb +266 -0
  450. data/spec/unit/provider/package/ips_spec.rb +34 -34
  451. data/spec/unit/provider/package/macports_spec.rb +49 -49
  452. data/spec/unit/provider/package/pacman_spec.rb +35 -39
  453. data/spec/unit/provider/package/paludis_spec.rb +20 -20
  454. data/spec/unit/provider/package/portage_spec.rb +38 -38
  455. data/spec/unit/provider/package/rpm_spec.rb +29 -29
  456. data/spec/unit/provider/package/rubygems_spec.rb +284 -270
  457. data/spec/unit/provider/package/smartos_spec.rb +15 -15
  458. data/spec/unit/provider/package/solaris_spec.rb +35 -35
  459. data/spec/unit/provider/package/windows/msi_spec.rb +3 -3
  460. data/spec/unit/provider/package/windows_spec.rb +6 -6
  461. data/spec/unit/provider/package/yum_spec.rb +416 -416
  462. data/spec/unit/provider/package/zypper_spec.rb +47 -47
  463. data/spec/unit/provider/package_spec.rb +107 -107
  464. data/spec/unit/provider/powershell_spec.rb +1 -1
  465. data/spec/unit/provider/registry_key_spec.rb +61 -61
  466. data/spec/unit/provider/remote_directory_spec.rb +36 -36
  467. data/spec/unit/provider/remote_file/cache_control_data_spec.rb +24 -24
  468. data/spec/unit/provider/remote_file/content_spec.rb +45 -45
  469. data/spec/unit/provider/remote_file/fetcher_spec.rb +9 -9
  470. data/spec/unit/provider/remote_file/ftp_spec.rb +32 -32
  471. data/spec/unit/provider/remote_file/http_spec.rb +44 -44
  472. data/spec/unit/provider/remote_file/local_file_spec.rb +9 -9
  473. data/spec/unit/provider/remote_file_spec.rb +3 -3
  474. data/spec/unit/provider/route_spec.rb +63 -63
  475. data/spec/unit/provider/ruby_block_spec.rb +4 -4
  476. data/spec/unit/provider/script_spec.rb +12 -12
  477. data/spec/unit/provider/service/aix_service_spec.rb +181 -0
  478. data/spec/unit/provider/service/aixinit_service_spec.rb +269 -0
  479. data/spec/unit/provider/service/arch_service_spec.rb +48 -48
  480. data/spec/unit/provider/service/debian_service_spec.rb +40 -40
  481. data/spec/unit/provider/service/gentoo_service_spec.rb +28 -28
  482. data/spec/unit/provider/service/init_service_spec.rb +39 -39
  483. data/spec/unit/provider/service/insserv_service_spec.rb +8 -8
  484. data/spec/unit/provider/service/invokercd_service_spec.rb +35 -35
  485. data/spec/unit/provider/service/macosx_spec.rb +49 -49
  486. data/spec/unit/provider/service/redhat_spec.rb +27 -27
  487. data/spec/unit/provider/service/simple_service_spec.rb +28 -28
  488. data/spec/unit/provider/service/solaris_smf_service_spec.rb +43 -46
  489. data/spec/unit/provider/service/systemd_service_spec.rb +63 -63
  490. data/spec/unit/provider/service/upstart_service_spec.rb +78 -78
  491. data/spec/unit/provider/service/windows_spec.rb +92 -92
  492. data/spec/unit/provider/service_spec.rb +40 -40
  493. data/spec/unit/provider/subversion_spec.rb +80 -80
  494. data/spec/unit/provider/template/content_spec.rb +9 -9
  495. data/spec/unit/provider/template_spec.rb +6 -6
  496. data/spec/unit/provider/user/dscl_spec.rb +170 -167
  497. data/spec/unit/provider/user/pw_spec.rb +48 -48
  498. data/spec/unit/provider/user/solaris_spec.rb +8 -8
  499. data/spec/unit/provider/user/useradd_spec.rb +1 -1
  500. data/spec/unit/provider/user/windows_spec.rb +26 -26
  501. data/spec/unit/provider/user_spec.rb +72 -72
  502. data/spec/unit/provider/whyrun_safe_ruby_block_spec.rb +4 -4
  503. data/spec/unit/provider_resolver_spec.rb +387 -0
  504. data/spec/unit/recipe_spec.rb +33 -12
  505. data/spec/unit/resource/apt_package_spec.rb +10 -13
  506. data/spec/unit/resource/bash_spec.rb +4 -4
  507. data/spec/unit/resource/batch_spec.rb +1 -1
  508. data/spec/unit/resource/breakpoint_spec.rb +11 -7
  509. data/spec/unit/resource/chef_gem_spec.rb +8 -15
  510. data/spec/unit/resource/conditional_action_not_nothing_spec.rb +2 -2
  511. data/spec/unit/resource/conditional_spec.rb +35 -16
  512. data/spec/unit/resource/cookbook_file_spec.rb +13 -13
  513. data/spec/unit/resource/cron_spec.rb +37 -37
  514. data/spec/unit/resource/csh_spec.rb +4 -4
  515. data/spec/unit/resource/deploy_revision_spec.rb +13 -18
  516. data/spec/unit/resource/deploy_spec.rb +60 -55
  517. data/spec/unit/resource/directory_spec.rb +18 -18
  518. data/spec/unit/resource/dpkg_package_spec.rb +8 -14
  519. data/spec/unit/resource/dsc_script_spec.rb +98 -0
  520. data/spec/unit/resource/easy_install_package_spec.rb +9 -18
  521. data/spec/unit/resource/env_spec.rb +12 -12
  522. data/spec/unit/resource/erl_call_spec.rb +11 -11
  523. data/spec/unit/resource/execute_spec.rb +5 -0
  524. data/spec/unit/resource/file_spec.rb +29 -29
  525. data/spec/unit/resource/freebsd_package_spec.rb +11 -12
  526. data/spec/unit/resource/gem_package_spec.rb +8 -15
  527. data/spec/unit/resource/git_spec.rb +12 -8
  528. data/spec/unit/resource/group_spec.rb +27 -27
  529. data/spec/unit/resource/homebrew_package_spec.rb +50 -0
  530. data/spec/unit/resource/http_request_spec.rb +6 -6
  531. data/spec/unit/resource/ifconfig_spec.rb +8 -8
  532. data/spec/unit/resource/ips_package_spec.rb +10 -13
  533. data/spec/unit/resource/link_spec.rb +25 -25
  534. data/spec/unit/resource/log_spec.rb +9 -9
  535. data/spec/unit/resource/macports_package_spec.rb +8 -13
  536. data/spec/unit/resource/mdadm_spec.rb +18 -18
  537. data/spec/unit/resource/mount_spec.rb +45 -45
  538. data/spec/unit/resource/ohai_spec.rb +7 -7
  539. data/spec/unit/resource/package_spec.rb +12 -12
  540. data/spec/unit/resource/pacman_package_spec.rb +8 -14
  541. data/spec/unit/resource/perl_spec.rb +4 -4
  542. data/spec/unit/resource/portage_package_spec.rb +3 -3
  543. data/spec/unit/resource/powershell_spec.rb +7 -7
  544. data/spec/unit/resource/python_spec.rb +4 -4
  545. data/spec/unit/resource/registry_key_spec.rb +32 -32
  546. data/spec/unit/resource/remote_directory_spec.rb +17 -17
  547. data/spec/unit/resource/remote_file_spec.rb +41 -41
  548. data/spec/unit/resource/route_spec.rb +19 -19
  549. data/spec/unit/resource/rpm_package_spec.rb +9 -13
  550. data/spec/unit/resource/ruby_block_spec.rb +8 -8
  551. data/spec/unit/resource/ruby_spec.rb +4 -4
  552. data/spec/unit/resource/scm_spec.rb +40 -40
  553. data/spec/unit/resource/script_spec.rb +2 -2
  554. data/spec/unit/resource/service_spec.rb +37 -47
  555. data/spec/unit/resource/smartos_package_spec.rb +10 -15
  556. data/spec/unit/resource/solaris_package_spec.rb +13 -28
  557. data/spec/unit/resource/subversion_spec.rb +16 -12
  558. data/spec/unit/resource/template_spec.rb +35 -35
  559. data/spec/unit/resource/timestamped_deploy_spec.rb +30 -4
  560. data/spec/unit/resource/user_spec.rb +23 -23
  561. data/spec/unit/resource/windows_package_spec.rb +17 -10
  562. data/spec/unit/resource/windows_service_spec.rb +9 -6
  563. data/spec/unit/resource/yum_package_spec.rb +16 -21
  564. data/spec/unit/resource_collection/resource_list_spec.rb +137 -0
  565. data/spec/unit/resource_collection/resource_set_spec.rb +199 -0
  566. data/spec/unit/resource_collection_spec.rb +73 -92
  567. data/spec/unit/resource_definition_spec.rb +38 -40
  568. data/spec/unit/resource_reporter_spec.rb +3 -3
  569. data/spec/unit/resource_spec.rb +68 -33
  570. data/spec/unit/rest_spec.rb +83 -76
  571. data/spec/unit/role_spec.rb +5 -0
  572. data/spec/unit/run_list_spec.rb +5 -1
  573. data/spec/unit/runner_spec.rb +245 -238
  574. data/spec/unit/shell/shell_ext_spec.rb +1 -1
  575. data/spec/unit/user_spec.rb +5 -1
  576. data/spec/unit/util/dsc/configuration_generator_spec.rb +171 -0
  577. data/spec/unit/util/dsc/lcm_output_parser_spec.rb +169 -0
  578. data/spec/unit/util/dsc/local_configuration_manager_spec.rb +139 -0
  579. data/spec/unit/util/path_helper_spec.rb +23 -1
  580. data/spec/unit/util/powershell/cmdlet_spec.rb +106 -0
  581. data/spec/unit/workstation_config_loader_spec.rb +1 -1
  582. metadata +303 -196
  583. checksums.yaml +0 -7
  584. data/distro/README +0 -2
  585. data/distro/arch/etc/conf.d/chef-client.conf +0 -5
  586. data/distro/arch/etc/conf.d/chef-expander.conf +0 -8
  587. data/distro/arch/etc/conf.d/chef-server-webui.conf +0 -10
  588. data/distro/arch/etc/conf.d/chef-server.conf +0 -10
  589. data/distro/arch/etc/conf.d/chef-solr.conf +0 -8
  590. data/distro/arch/etc/rc.d/chef-client +0 -90
  591. data/distro/arch/etc/rc.d/chef-expander +0 -78
  592. data/distro/arch/etc/rc.d/chef-server +0 -78
  593. data/distro/arch/etc/rc.d/chef-server-webui +0 -78
  594. data/distro/arch/etc/rc.d/chef-solr +0 -78
  595. data/distro/debian/etc/default/chef-client +0 -4
  596. data/distro/debian/etc/default/chef-expander +0 -8
  597. data/distro/debian/etc/default/chef-server +0 -9
  598. data/distro/debian/etc/default/chef-server-webui +0 -9
  599. data/distro/debian/etc/default/chef-solr +0 -8
  600. data/distro/debian/etc/init.d/chef-client +0 -212
  601. data/distro/debian/etc/init.d/chef-expander +0 -176
  602. data/distro/debian/etc/init.d/chef-server +0 -122
  603. data/distro/debian/etc/init.d/chef-server-webui +0 -123
  604. data/distro/debian/etc/init.d/chef-solr +0 -176
  605. data/distro/debian/etc/init/chef-client.conf +0 -17
  606. data/distro/debian/etc/init/chef-expander.conf +0 -17
  607. data/distro/debian/etc/init/chef-server-webui.conf +0 -17
  608. data/distro/debian/etc/init/chef-server.conf +0 -17
  609. data/distro/debian/etc/init/chef-solr.conf +0 -17
  610. data/distro/redhat/etc/init.d/chef-client +0 -121
  611. data/distro/redhat/etc/init.d/chef-expander +0 -104
  612. data/distro/redhat/etc/init.d/chef-server +0 -112
  613. data/distro/redhat/etc/init.d/chef-server-webui +0 -112
  614. data/distro/redhat/etc/init.d/chef-solr +0 -104
  615. data/distro/redhat/etc/logrotate.d/chef-client +0 -8
  616. data/distro/redhat/etc/logrotate.d/chef-expander +0 -8
  617. data/distro/redhat/etc/logrotate.d/chef-server +0 -8
  618. data/distro/redhat/etc/logrotate.d/chef-server-webui +0 -8
  619. data/distro/redhat/etc/logrotate.d/chef-solr +0 -8
  620. data/distro/redhat/etc/sysconfig/chef-client +0 -15
  621. data/distro/redhat/etc/sysconfig/chef-expander +0 -7
  622. data/distro/redhat/etc/sysconfig/chef-server +0 -14
  623. data/distro/redhat/etc/sysconfig/chef-server-webui +0 -14
  624. data/distro/redhat/etc/sysconfig/chef-solr +0 -8
  625. data/distro/windows/service_manager.rb +0 -20
  626. data/lib/chef/resource_platform_map.rb +0 -151
  627. data/spec/support/shared/matchers.rb +0 -17
  628. data/spec/unit/resource_platform_map_spec.rb +0 -164
@@ -40,12 +40,12 @@ describe Chef::Provider::Mount::Windows do
40
40
  @new_resource = Chef::Resource::Mount.new("X:")
41
41
  @new_resource.device GUID
42
42
  @current_resource = Chef::Resource::Mount.new("X:")
43
- Chef::Resource::Mount.stub(:new).and_return(@current_resource)
43
+ allow(Chef::Resource::Mount).to receive(:new).and_return(@current_resource)
44
44
 
45
45
  @net_use = double("Chef::Util::Windows::NetUse")
46
- Chef::Util::Windows::NetUse.stub(:new).and_return(@net_use)
46
+ allow(Chef::Util::Windows::NetUse).to receive(:new).and_return(@net_use)
47
47
  @vol = double("Chef::Util::Windows::Volume")
48
- Chef::Util::Windows::Volume.stub(:new).and_return(@vol)
48
+ allow(Chef::Util::Windows::Volume).to receive(:new).and_return(@vol)
49
49
 
50
50
  @provider = Chef::Provider::Mount::Windows.new(@new_resource, @run_context)
51
51
  @provider.current_resource = @current_resource
@@ -53,26 +53,26 @@ describe Chef::Provider::Mount::Windows do
53
53
 
54
54
  describe "when loading the current resource" do
55
55
  it "should set mounted true if the mount point is found" do
56
- @vol.stub(:device).and_return(@new_resource.device)
57
- @current_resource.should_receive(:mounted).with(true)
56
+ allow(@vol).to receive(:device).and_return(@new_resource.device)
57
+ expect(@current_resource).to receive(:mounted).with(true)
58
58
  @provider.load_current_resource
59
59
  end
60
60
 
61
61
  it "should set mounted false if the mount point is not found" do
62
- @vol.stub(:device).and_raise(ArgumentError)
63
- @current_resource.should_receive(:mounted).with(false)
62
+ allow(@vol).to receive(:device).and_raise(ArgumentError)
63
+ expect(@current_resource).to receive(:mounted).with(false)
64
64
  @provider.load_current_resource
65
65
  end
66
66
 
67
67
  describe "with a local device" do
68
68
  before do
69
69
  @new_resource.device GUID
70
- @vol.stub(:device).and_return(@new_resource.device)
71
- @net_use.stub(:device).and_raise(ArgumentError)
70
+ allow(@vol).to receive(:device).and_return(@new_resource.device)
71
+ allow(@net_use).to receive(:device).and_raise(ArgumentError)
72
72
  end
73
73
 
74
74
  it "should determine the device is a volume GUID" do
75
- @provider.should_receive(:is_volume).with(@new_resource.device).and_return(true)
75
+ expect(@provider).to receive(:is_volume).with(@new_resource.device).and_return(true)
76
76
  @provider.load_current_resource
77
77
  end
78
78
  end
@@ -80,12 +80,12 @@ describe Chef::Provider::Mount::Windows do
80
80
  describe "with a remote device" do
81
81
  before do
82
82
  @new_resource.device REMOTE
83
- @net_use.stub(:device).and_return(@new_resource.device)
84
- @vol.stub(:device).and_raise(ArgumentError)
83
+ allow(@net_use).to receive(:device).and_return(@new_resource.device)
84
+ allow(@vol).to receive(:device).and_raise(ArgumentError)
85
85
  end
86
86
 
87
87
  it "should determine the device is remote" do
88
- @provider.should_receive(:is_volume).with(@new_resource.device).and_return(false)
88
+ expect(@provider).to receive(:is_volume).with(@new_resource.device).and_return(false)
89
89
  @provider.load_current_resource
90
90
  end
91
91
  end
@@ -93,13 +93,13 @@ describe Chef::Provider::Mount::Windows do
93
93
  describe "when mounting a file system" do
94
94
  before do
95
95
  @new_resource.device GUID
96
- @vol.stub(:add)
97
- @vol.stub(:device).and_raise(ArgumentError)
96
+ allow(@vol).to receive(:add)
97
+ allow(@vol).to receive(:device).and_raise(ArgumentError)
98
98
  @provider.load_current_resource
99
99
  end
100
100
 
101
101
  it "should mount the filesystem if it is not mounted" do
102
- @vol.should_receive(:add).with(:remote => @new_resource.device,
102
+ expect(@vol).to receive(:add).with(:remote => @new_resource.device,
103
103
  :username => @new_resource.username,
104
104
  :domainname => @new_resource.domain,
105
105
  :password => @new_resource.password)
@@ -107,8 +107,8 @@ describe Chef::Provider::Mount::Windows do
107
107
  end
108
108
 
109
109
  it "should not mount the filesystem if it is mounted" do
110
- @vol.should_not_receive(:add)
111
- @current_resource.stub(:mounted).and_return(true)
110
+ expect(@vol).not_to receive(:add)
111
+ allow(@current_resource).to receive(:mounted).and_return(true)
112
112
  @provider.mount_fs
113
113
  end
114
114
  end
@@ -116,20 +116,20 @@ describe Chef::Provider::Mount::Windows do
116
116
  describe "when unmounting a file system" do
117
117
  before do
118
118
  @new_resource.device GUID
119
- @vol.stub(:delete)
120
- @vol.stub(:device).and_raise(ArgumentError)
119
+ allow(@vol).to receive(:delete)
120
+ allow(@vol).to receive(:device).and_raise(ArgumentError)
121
121
  @provider.load_current_resource
122
122
  end
123
123
 
124
124
  it "should umount the filesystem if it is mounted" do
125
- @current_resource.stub(:mounted).and_return(true)
126
- @vol.should_receive(:delete)
125
+ allow(@current_resource).to receive(:mounted).and_return(true)
126
+ expect(@vol).to receive(:delete)
127
127
  @provider.umount_fs
128
128
  end
129
129
 
130
130
  it "should not umount the filesystem if it is not mounted" do
131
- @current_resource.stub(:mounted).and_return(false)
132
- @vol.should_not_receive(:delete)
131
+ allow(@current_resource).to receive(:mounted).and_return(false)
132
+ expect(@vol).not_to receive(:delete)
133
133
  @provider.umount_fs
134
134
  end
135
135
  end
@@ -41,16 +41,16 @@ describe Chef::Provider::Ohai do
41
41
  :newdata => "somevalue"
42
42
  }
43
43
  }
44
- mock_ohai.stub(:all_plugins).and_return(true)
45
- mock_ohai.stub(:data).and_return(mock_ohai[:data],
44
+ allow(mock_ohai).to receive(:all_plugins).and_return(true)
45
+ allow(mock_ohai).to receive(:data).and_return(mock_ohai[:data],
46
46
  mock_ohai[:data2])
47
- Ohai::System.stub(:new).and_return(mock_ohai)
48
- Chef::Platform.stub(:find_platform_and_version).and_return({ "platform" => @platform,
47
+ allow(Ohai::System).to receive(:new).and_return(mock_ohai)
48
+ allow(Chef::Platform).to receive(:find_platform_and_version).and_return({ "platform" => @platform,
49
49
  "platform_version" => @platform_version})
50
50
  # Fake node with a dummy save
51
51
  @node = Chef::Node.new
52
52
  @node.name(@fqdn)
53
- @node.stub(:save).and_return(@node)
53
+ allow(@node).to receive(:save).and_return(@node)
54
54
  @events = Chef::EventDispatch::Dispatcher.new
55
55
  @run_context = Chef::RunContext.new(@node, {}, @events)
56
56
  @new_resource = Chef::Resource::Ohai.new("ohai_reload")
@@ -67,18 +67,18 @@ describe Chef::Provider::Ohai do
67
67
  end
68
68
 
69
69
  it "applies updated ohai data to the node" do
70
- @node[:origdata].should == 'somevalue'
71
- @node[:newdata].should be_nil
70
+ expect(@node[:origdata]).to eq('somevalue')
71
+ expect(@node[:newdata]).to be_nil
72
72
  @provider.run_action(:reload)
73
- @node[:origdata].should == 'somevalue'
74
- @node[:newdata].should == 'somevalue'
73
+ expect(@node[:origdata]).to eq('somevalue')
74
+ expect(@node[:newdata]).to eq('somevalue')
75
75
  end
76
76
 
77
77
  it "should reload a specific plugin and cause node to pick up new values" do
78
78
  @new_resource.plugin "someplugin"
79
79
  @provider.run_action(:reload)
80
- @node[:origdata].should == 'somevalue'
81
- @node[:newdata].should == 'somevalue'
80
+ expect(@node[:origdata]).to eq('somevalue')
81
+ expect(@node[:newdata]).to eq('somevalue')
82
82
  end
83
83
  end
84
84
  end
@@ -28,7 +28,7 @@ describe Chef::Provider::Package::Aix do
28
28
  @new_resource.source("/tmp/samba.base")
29
29
 
30
30
  @provider = Chef::Provider::Package::Aix.new(@new_resource, @run_context)
31
- ::File.stub(:exists?).and_return(true)
31
+ allow(::File).to receive(:exists?).and_return(true)
32
32
  end
33
33
 
34
34
  describe "assessing the current package status" do
@@ -40,118 +40,118 @@ describe Chef::Provider::Package::Aix do
40
40
  end
41
41
 
42
42
  it "should create a current resource with the name of new_resource" do
43
- @provider.stub(:popen4).and_return(@status)
43
+ allow(@provider).to receive(:popen4).and_return(@status)
44
44
  @provider.load_current_resource
45
- @provider.current_resource.name.should == "samba.base"
45
+ expect(@provider.current_resource.name).to eq("samba.base")
46
46
  end
47
47
 
48
48
  it "should set the current resource bff package name to the new resource bff package name" do
49
- @provider.stub(:popen4).and_return(@status)
49
+ allow(@provider).to receive(:popen4).and_return(@status)
50
50
  @provider.load_current_resource
51
- @provider.current_resource.package_name.should == "samba.base"
51
+ expect(@provider.current_resource.package_name).to eq("samba.base")
52
52
  end
53
53
 
54
54
  it "should raise an exception if a source is supplied but not found" do
55
- @provider.stub(:popen4).and_return(@status)
56
- ::File.stub(:exists?).and_return(false)
55
+ allow(@provider).to receive(:popen4).and_return(@status)
56
+ allow(::File).to receive(:exists?).and_return(false)
57
57
  @provider.define_resource_requirements
58
58
  @provider.load_current_resource
59
- lambda { @provider.process_resource_requirements }.should raise_error(Chef::Exceptions::Package)
59
+ expect { @provider.process_resource_requirements }.to raise_error(Chef::Exceptions::Package)
60
60
  end
61
61
 
62
62
  it "should get the source package version from lslpp if provided" do
63
63
  @stdout = StringIO.new(@bffinfo)
64
64
  @stdin, @stderr = StringIO.new, StringIO.new
65
- @provider.should_receive(:popen4).with("installp -L -d /tmp/samba.base").and_yield(@pid, @stdin, @stdout, @stderr).and_return(@status)
66
- @provider.should_receive(:popen4).with("lslpp -lcq samba.base").and_return(@status)
65
+ expect(@provider).to receive(:popen4).with("installp -L -d /tmp/samba.base").and_yield(@pid, @stdin, @stdout, @stderr).and_return(@status)
66
+ expect(@provider).to receive(:popen4).with("lslpp -lcq samba.base").and_return(@status)
67
67
  @provider.load_current_resource
68
68
 
69
- @provider.current_resource.package_name.should == "samba.base"
70
- @new_resource.version.should == "3.3.12.0"
69
+ expect(@provider.current_resource.package_name).to eq("samba.base")
70
+ expect(@new_resource.version).to eq("3.3.12.0")
71
71
  end
72
72
 
73
73
  it "should return the current version installed if found by lslpp" do
74
74
  @stdout = StringIO.new(@bffinfo)
75
75
  @stdin, @stderr = StringIO.new, StringIO.new
76
- @provider.should_receive(:popen4).with("installp -L -d /tmp/samba.base").and_return(@status)
77
- @provider.should_receive(:popen4).with("lslpp -lcq samba.base").and_yield(@pid, @stdin, @stdout, @stderr).and_return(@status)
76
+ expect(@provider).to receive(:popen4).with("installp -L -d /tmp/samba.base").and_return(@status)
77
+ expect(@provider).to receive(:popen4).with("lslpp -lcq samba.base").and_yield(@pid, @stdin, @stdout, @stderr).and_return(@status)
78
78
  @provider.load_current_resource
79
- @provider.current_resource.version.should == "3.3.12.0"
79
+ expect(@provider.current_resource.version).to eq("3.3.12.0")
80
80
  end
81
81
 
82
82
  it "should raise an exception if the source is not set but we are installing" do
83
83
  @new_resource = Chef::Resource::Package.new("samba.base")
84
84
  @provider = Chef::Provider::Package::Aix.new(@new_resource, @run_context)
85
- @provider.stub(:popen4).and_return(@status)
86
- lambda { @provider.run_action(:install) }.should raise_error(Chef::Exceptions::Package)
85
+ allow(@provider).to receive(:popen4).and_return(@status)
86
+ expect { @provider.run_action(:install) }.to raise_error(Chef::Exceptions::Package)
87
87
  end
88
88
 
89
89
  it "should raise an exception if installp/lslpp fails to run" do
90
90
  @status = double("Status", :exitstatus => -1)
91
- @provider.stub(:popen4).and_return(@status)
92
- lambda { @provider.load_current_resource }.should raise_error(Chef::Exceptions::Package)
91
+ allow(@provider).to receive(:popen4).and_return(@status)
92
+ expect { @provider.load_current_resource }.to raise_error(Chef::Exceptions::Package)
93
93
  end
94
94
 
95
95
  it "should return a current resource with a nil version if the package is not found" do
96
96
  @stdout = StringIO.new
97
- @provider.should_receive(:popen4).with("installp -L -d /tmp/samba.base").and_return(@status)
98
- @provider.should_receive(:popen4).with("lslpp -lcq samba.base").and_yield(@pid, @stdin, @stdout, @stderr).and_return(@status)
97
+ expect(@provider).to receive(:popen4).with("installp -L -d /tmp/samba.base").and_return(@status)
98
+ expect(@provider).to receive(:popen4).with("lslpp -lcq samba.base").and_yield(@pid, @stdin, @stdout, @stderr).and_return(@status)
99
99
  @provider.load_current_resource
100
- @provider.current_resource.version.should be_nil
100
+ expect(@provider.current_resource.version).to be_nil
101
101
  end
102
102
  end
103
103
 
104
104
  describe "candidate_version" do
105
105
  it "should return the candidate_version variable if already setup" do
106
106
  @provider.candidate_version = "3.3.12.0"
107
- @provider.should_not_receive(:popen4)
107
+ expect(@provider).not_to receive(:popen4)
108
108
  @provider.candidate_version
109
109
  end
110
110
 
111
111
  it "should lookup the candidate_version if the variable is not already set" do
112
112
  @status = double("Status", :exitstatus => 0)
113
- @provider.should_receive(:popen4).and_return(@status)
113
+ expect(@provider).to receive(:popen4).and_return(@status)
114
114
  @provider.candidate_version
115
115
  end
116
116
 
117
117
  it "should throw and exception if the exitstatus is not 0" do
118
118
  @status = double("Status", :exitstatus => 1)
119
- @provider.stub(:popen4).and_return(@status)
120
- lambda { @provider.candidate_version }.should raise_error(Chef::Exceptions::Package)
119
+ allow(@provider).to receive(:popen4).and_return(@status)
120
+ expect { @provider.candidate_version }.to raise_error(Chef::Exceptions::Package)
121
121
  end
122
122
 
123
123
  end
124
124
 
125
125
  describe "install and upgrade" do
126
126
  it "should run installp -aYF -d with the package source to install" do
127
- @provider.should_receive(:shell_out!).with("installp -aYF -d /tmp/samba.base samba.base")
127
+ expect(@provider).to receive(:shell_out!).with("installp -aYF -d /tmp/samba.base samba.base")
128
128
  @provider.install_package("samba.base", "3.3.12.0")
129
129
  end
130
130
 
131
131
  it "should run when the package is a path to install" do
132
132
  @new_resource = Chef::Resource::Package.new("/tmp/samba.base")
133
133
  @provider = Chef::Provider::Package::Aix.new(@new_resource, @run_context)
134
- @new_resource.source.should == "/tmp/samba.base"
135
- @provider.should_receive(:shell_out!).with("installp -aYF -d /tmp/samba.base /tmp/samba.base")
134
+ expect(@new_resource.source).to eq("/tmp/samba.base")
135
+ expect(@provider).to receive(:shell_out!).with("installp -aYF -d /tmp/samba.base /tmp/samba.base")
136
136
  @provider.install_package("/tmp/samba.base", "3.3.12.0")
137
137
  end
138
138
 
139
139
  it "should run installp with -eLogfile option." do
140
- @new_resource.stub(:options).and_return("-e/tmp/installp.log")
141
- @provider.should_receive(:shell_out!).with("installp -aYF -e/tmp/installp.log -d /tmp/samba.base samba.base")
140
+ allow(@new_resource).to receive(:options).and_return("-e/tmp/installp.log")
141
+ expect(@provider).to receive(:shell_out!).with("installp -aYF -e/tmp/installp.log -d /tmp/samba.base samba.base")
142
142
  @provider.install_package("samba.base", "3.3.12.0")
143
143
  end
144
144
  end
145
145
 
146
146
  describe "remove" do
147
147
  it "should run installp -u samba.base to remove the package" do
148
- @provider.should_receive(:shell_out!).with("installp -u samba.base")
148
+ expect(@provider).to receive(:shell_out!).with("installp -u samba.base")
149
149
  @provider.remove_package("samba.base", "3.3.12.0")
150
150
  end
151
151
 
152
152
  it "should run installp -u -e/tmp/installp.log with options -e/tmp/installp.log" do
153
- @new_resource.stub(:options).and_return("-e/tmp/installp.log")
154
- @provider.should_receive(:shell_out!).with("installp -u -e/tmp/installp.log samba.base")
153
+ allow(@new_resource).to receive(:options).and_return("-e/tmp/installp.log")
154
+ expect(@provider).to receive(:shell_out!).with("installp -u -e/tmp/installp.log samba.base")
155
155
  @provider.remove_package("samba.base", "3.3.12.0")
156
156
  end
157
157
 
@@ -45,17 +45,17 @@ PKG_STATUS
45
45
  describe "when loading current resource" do
46
46
 
47
47
  it "should create a current resource with the name of the new_resource" do
48
- @provider.should_receive(:shell_out!).with(
48
+ expect(@provider).to receive(:shell_out!).with(
49
49
  "apt-cache policy #{@new_resource.package_name}",
50
50
  :timeout => @timeout
51
51
  ).and_return(@shell_out)
52
52
  @provider.load_current_resource
53
53
 
54
54
  current_resource = @provider.current_resource
55
- current_resource.should be_a(Chef::Resource::Package)
56
- current_resource.name.should == "irssi"
57
- current_resource.package_name.should == "irssi"
58
- current_resource.version.should be_nil
55
+ expect(current_resource).to be_a(Chef::Resource::Package)
56
+ expect(current_resource.name).to eq("irssi")
57
+ expect(current_resource.package_name).to eq("irssi")
58
+ expect(current_resource.version).to be_nil
59
59
  end
60
60
 
61
61
  it "should set the installed version if package has one" do
@@ -71,10 +71,10 @@ sudo:
71
71
  1.7.2p1-1ubuntu5 0
72
72
  500 http://us.archive.ubuntu.com/ubuntu/ lucid/main Packages
73
73
  INSTALLED
74
- @provider.should_receive(:shell_out!).and_return(@shell_out)
74
+ expect(@provider).to receive(:shell_out!).and_return(@shell_out)
75
75
  @provider.load_current_resource
76
- @provider.current_resource.version.should == "1.7.2p1-1ubuntu5.3"
77
- @provider.candidate_version.should eql("1.7.2p1-1ubuntu5.3")
76
+ expect(@provider.current_resource.version).to eq("1.7.2p1-1ubuntu5.3")
77
+ expect(@provider.candidate_version).to eql("1.7.2p1-1ubuntu5.3")
78
78
  end
79
79
 
80
80
  # libmysqlclient-dev is a real package in newer versions of debian + ubuntu
@@ -88,7 +88,7 @@ libmysqlclient15-dev:
88
88
  Version table:
89
89
  VPKG_STDOUT
90
90
  virtual_package = double(:stdout => virtual_package_out,:exitstatus => 0)
91
- @provider.should_receive(:shell_out!).with(
91
+ expect(@provider).to receive(:shell_out!).with(
92
92
  "apt-cache policy libmysqlclient15-dev",
93
93
  :timeout => @timeout
94
94
  ).and_return(virtual_package)
@@ -111,7 +111,7 @@ libmysqlclient-dev 5.1.41-3ubuntu12.10
111
111
  libmysqlclient-dev 5.1.41-3ubuntu12
112
112
  SHOWPKG_STDOUT
113
113
  showpkg = double(:stdout => showpkg_out,:exitstatus => 0)
114
- @provider.should_receive(:shell_out!).with(
114
+ expect(@provider).to receive(:shell_out!).with(
115
115
  "apt-cache showpkg libmysqlclient15-dev",
116
116
  :timeout => @timeout
117
117
  ).and_return(showpkg)
@@ -129,7 +129,7 @@ libmysqlclient-dev:
129
129
  500 http://us.archive.ubuntu.com/ubuntu/ lucid/main Packages
130
130
  RPKG_STDOUT
131
131
  real_package = double(:stdout => real_package_out,:exitstatus => 0)
132
- @provider.should_receive(:shell_out!).with(
132
+ expect(@provider).to receive(:shell_out!).with(
133
133
  "apt-cache policy libmysqlclient-dev",
134
134
  :timeout => @timeout
135
135
  ).and_return(real_package)
@@ -145,7 +145,7 @@ mp3-decoder:
145
145
  Version table:
146
146
  VPKG_STDOUT
147
147
  virtual_package = double(:stdout => virtual_package_out,:exitstatus => 0)
148
- @provider.should_receive(:shell_out!).with(
148
+ expect(@provider).to receive(:shell_out!).with(
149
149
  "apt-cache policy mp3-decoder",
150
150
  :timeout => @timeout
151
151
  ).and_return(virtual_package)
@@ -171,20 +171,20 @@ mpg321 0.2.10.6
171
171
  mpg123 1.12.1-0ubuntu1
172
172
  SHOWPKG_STDOUT
173
173
  showpkg = double(:stdout => showpkg_out,:exitstatus => 0)
174
- @provider.should_receive(:shell_out!).with(
174
+ expect(@provider).to receive(:shell_out!).with(
175
175
  "apt-cache showpkg mp3-decoder",
176
176
  :timeout => @timeout
177
177
  ).and_return(showpkg)
178
- lambda { @provider.load_current_resource }.should raise_error(Chef::Exceptions::Package)
178
+ expect { @provider.load_current_resource }.to raise_error(Chef::Exceptions::Package)
179
179
  end
180
180
 
181
181
  it "should run apt-cache policy with the default_release option, if there is one and provider is explicitly defined" do
182
182
  @new_resource = Chef::Resource::AptPackage.new("irssi", @run_context)
183
183
  @provider = Chef::Provider::Package::Apt.new(@new_resource, @run_context)
184
184
 
185
- @new_resource.stub(:default_release).and_return("lenny-backports")
186
- @new_resource.stub(:provider).and_return("Chef::Provider::Package::Apt")
187
- @provider.should_receive(:shell_out!).with(
185
+ allow(@new_resource).to receive(:default_release).and_return("lenny-backports")
186
+ allow(@new_resource).to receive(:provider).and_return("Chef::Provider::Package::Apt")
187
+ expect(@provider).to receive(:shell_out!).with(
188
188
  "apt-cache -o APT::Default-Release=lenny-backports policy irssi",
189
189
  :timeout => @timeout
190
190
  ).and_return(@shell_out)
@@ -194,7 +194,7 @@ SHOWPKG_STDOUT
194
194
  it "raises an exception if a source is specified (CHEF-5113)" do
195
195
  @new_resource.source "pluto"
196
196
  @provider.define_resource_requirements
197
- @provider.should_receive(:shell_out!).with("apt-cache policy irssi", {:timeout=>900}).and_return(@shell_out)
197
+ expect(@provider).to receive(:shell_out!).with("apt-cache policy irssi", {:timeout=>900}).and_return(@shell_out)
198
198
  expect { @provider.run_action(:install) }.to raise_error(Chef::Exceptions::Package)
199
199
  end
200
200
  end
@@ -207,7 +207,7 @@ SHOWPKG_STDOUT
207
207
 
208
208
  describe "install_package" do
209
209
  it "should run apt-get install with the package name and version" do
210
- @provider.should_receive(:shell_out!). with(
210
+ expect(@provider).to receive(:shell_out!). with(
211
211
  "apt-get -q -y install irssi=0.8.12-7",
212
212
  :env => { "DEBIAN_FRONTEND" => "noninteractive", "LC_ALL" => nil},
213
213
  :timeout => @timeout
@@ -216,7 +216,7 @@ SHOWPKG_STDOUT
216
216
  end
217
217
 
218
218
  it "should run apt-get install with the package name and version and options if specified" do
219
- @provider.should_receive(:shell_out!).with(
219
+ expect(@provider).to receive(:shell_out!).with(
220
220
  "apt-get -q -y --force-yes install irssi=0.8.12-7",
221
221
  :env => {"DEBIAN_FRONTEND" => "noninteractive", "LC_ALL" => nil },
222
222
  :timeout => @timeout
@@ -229,10 +229,10 @@ SHOWPKG_STDOUT
229
229
  @new_resource = nil
230
230
  @new_resource = Chef::Resource::AptPackage.new("irssi", @run_context)
231
231
  @new_resource.default_release("lenny-backports")
232
-
232
+ @new_resource.provider = @provider
233
233
  @provider.new_resource = @new_resource
234
234
 
235
- @provider.should_receive(:shell_out!).with(
235
+ expect(@provider).to receive(:shell_out!).with(
236
236
  "apt-get -q -y -o APT::Default-Release=lenny-backports install irssi=0.8.12-7",
237
237
  :env => {"DEBIAN_FRONTEND" => "noninteractive", "LC_ALL" => nil },
238
238
  :timeout => @timeout
@@ -245,7 +245,7 @@ SHOWPKG_STDOUT
245
245
  describe Chef::Provider::Package::Apt, "upgrade_package" do
246
246
 
247
247
  it "should run install_package with the name and version" do
248
- @provider.should_receive(:install_package).with("irssi", "0.8.12-7")
248
+ expect(@provider).to receive(:install_package).with("irssi", "0.8.12-7")
249
249
  @provider.upgrade_package("irssi", "0.8.12-7")
250
250
  end
251
251
  end
@@ -253,7 +253,7 @@ SHOWPKG_STDOUT
253
253
  describe Chef::Provider::Package::Apt, "remove_package" do
254
254
 
255
255
  it "should run apt-get remove with the package name" do
256
- @provider.should_receive(:shell_out!).with(
256
+ expect(@provider).to receive(:shell_out!).with(
257
257
  "apt-get -q -y remove irssi",
258
258
  :env => {"DEBIAN_FRONTEND" => "noninteractive", "LC_ALL" => nil},
259
259
  :timeout => @timeout
@@ -262,7 +262,7 @@ SHOWPKG_STDOUT
262
262
  end
263
263
 
264
264
  it "should run apt-get remove with the package name and options if specified" do
265
- @provider.should_receive(:shell_out!).with(
265
+ expect(@provider).to receive(:shell_out!).with(
266
266
  "apt-get -q -y --force-yes remove irssi",
267
267
  :env => { "DEBIAN_FRONTEND" => "noninteractive", "LC_ALL" => nil },
268
268
  :timeout => @timeout
@@ -276,7 +276,7 @@ SHOWPKG_STDOUT
276
276
  describe "when purging a package" do
277
277
 
278
278
  it "should run apt-get purge with the package name" do
279
- @provider.should_receive(:shell_out!).with(
279
+ expect(@provider).to receive(:shell_out!).with(
280
280
  "apt-get -q -y purge irssi",
281
281
  :env => { "DEBIAN_FRONTEND" => "noninteractive", "LC_ALL" => nil },
282
282
  :timeout => @timeout
@@ -285,7 +285,7 @@ SHOWPKG_STDOUT
285
285
  end
286
286
 
287
287
  it "should run apt-get purge with the package name and options if specified" do
288
- @provider.should_receive(:shell_out!).with(
288
+ expect(@provider).to receive(:shell_out!).with(
289
289
  "apt-get -q -y --force-yes purge irssi",
290
290
  :env => { "DEBIAN_FRONTEND" => "noninteractive", "LC_ALL" => nil },
291
291
  :timeout => @timeout
@@ -298,14 +298,14 @@ SHOWPKG_STDOUT
298
298
 
299
299
  describe "when preseeding a package" do
300
300
  before(:each) do
301
- @provider.stub(:get_preseed_file).and_return("/tmp/irssi-0.8.12-7.seed")
301
+ allow(@provider).to receive(:get_preseed_file).and_return("/tmp/irssi-0.8.12-7.seed")
302
302
  end
303
303
 
304
304
  it "should get the full path to the preseed response file" do
305
- @provider.should_receive(:get_preseed_file).with("irssi", "0.8.12-7").and_return("/tmp/irssi-0.8.12-7.seed")
305
+ expect(@provider).to receive(:get_preseed_file).with("irssi", "0.8.12-7").and_return("/tmp/irssi-0.8.12-7.seed")
306
306
  file = @provider.get_preseed_file("irssi", "0.8.12-7")
307
307
 
308
- @provider.should_receive(:shell_out!).with(
308
+ expect(@provider).to receive(:shell_out!).with(
309
309
  "debconf-set-selections /tmp/irssi-0.8.12-7.seed",
310
310
  :env => {"DEBIAN_FRONTEND" => "noninteractive", "LC_ALL" => nil},
311
311
  :timeout => @timeout
@@ -315,7 +315,7 @@ SHOWPKG_STDOUT
315
315
  end
316
316
 
317
317
  it "should run debconf-set-selections on the preseed file if it has changed" do
318
- @provider.should_receive(:shell_out!).with(
318
+ expect(@provider).to receive(:shell_out!).with(
319
319
  "debconf-set-selections /tmp/irssi-0.8.12-7.seed",
320
320
  :env => {"DEBIAN_FRONTEND" => "noninteractive", "LC_ALL" => nil},
321
321
  :timeout => @timeout
@@ -325,18 +325,18 @@ SHOWPKG_STDOUT
325
325
  end
326
326
 
327
327
  it "should not run debconf-set-selections if the preseed file has not changed" do
328
- @provider.stub(:check_package_state)
328
+ allow(@provider).to receive(:check_package_state)
329
329
  @current_resource.version "0.8.11"
330
330
  @new_resource.response_file "/tmp/file"
331
- @provider.stub(:get_preseed_file).and_return(false)
332
- @provider.should_not_receive(:shell_out!)
331
+ allow(@provider).to receive(:get_preseed_file).and_return(false)
332
+ expect(@provider).not_to receive(:shell_out!)
333
333
  @provider.run_action(:reconfig)
334
334
  end
335
335
  end
336
336
 
337
337
  describe "when reconfiguring a package" do
338
338
  it "should run dpkg-reconfigure package" do
339
- @provider.should_receive(:shell_out!).with(
339
+ expect(@provider).to receive(:shell_out!).with(
340
340
  "dpkg-reconfigure irssi",
341
341
  :env => {"DEBIAN_FRONTEND" => "noninteractive", "LC_ALL" => nil },
342
342
  :timeout => @timeout
@@ -348,7 +348,7 @@ SHOWPKG_STDOUT
348
348
  describe "when installing a virtual package" do
349
349
  it "should install the package without specifying a version" do
350
350
  @provider.is_virtual_package = true
351
- @provider.should_receive(:shell_out!).with(
351
+ expect(@provider).to receive(:shell_out!).with(
352
352
  "apt-get -q -y install libmysqlclient-dev",
353
353
  :env => {"DEBIAN_FRONTEND" => "noninteractive", "LC_ALL" => nil },
354
354
  :timeout => @timeout