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
@@ -33,32 +33,32 @@ describe Chef::Provider::Package::Dpkg do
33
33
  @status = double("Status", :exitstatus => 0)
34
34
  @stderr = StringIO.new
35
35
  @pid = double("PID")
36
- @provider.stub(:popen4).and_return(@status)
36
+ allow(@provider).to receive(:popen4).and_return(@status)
37
37
 
38
- ::File.stub(:exists?).and_return(true)
38
+ allow(::File).to receive(:exists?).and_return(true)
39
39
  end
40
40
 
41
41
  describe "when loading the current resource state" do
42
42
 
43
43
  it "should create a current resource with the name of the new_resource" do
44
44
  @provider.load_current_resource
45
- @provider.current_resource.package_name.should == "wget"
45
+ expect(@provider.current_resource.package_name).to eq("wget")
46
46
  end
47
47
 
48
48
  it "should raise an exception if a source is supplied but not found" do
49
49
  @provider.load_current_resource
50
50
  @provider.define_resource_requirements
51
- ::File.stub(:exists?).and_return(false)
52
- lambda { @provider.run_action(:install) }.should raise_error(Chef::Exceptions::Package)
51
+ allow(::File).to receive(:exists?).and_return(false)
52
+ expect { @provider.run_action(:install) }.to raise_error(Chef::Exceptions::Package)
53
53
  end
54
54
 
55
55
  describe 'gets the source package version from dpkg-deb' do
56
56
  def check_version(version)
57
57
  @stdout = StringIO.new("wget\t#{version}")
58
- @provider.stub(:popen4).with("dpkg-deb -W #{@new_resource.source}").and_yield(@pid, @stdin, @stdout, @stderr).and_return(@status)
58
+ allow(@provider).to receive(:popen4).with("dpkg-deb -W #{@new_resource.source}").and_yield(@pid, @stdin, @stdout, @stderr).and_return(@status)
59
59
  @provider.load_current_resource
60
- @provider.current_resource.package_name.should == "wget"
61
- @new_resource.version.should == version
60
+ expect(@provider.current_resource.package_name).to eq("wget")
61
+ expect(@new_resource.version).to eq(version)
62
62
  end
63
63
 
64
64
  it 'if short version provided' do
@@ -80,9 +80,9 @@ describe Chef::Provider::Package::Dpkg do
80
80
 
81
81
  it "gets the source package name from dpkg-deb correctly when the package name has `-', `+' or `.' characters" do
82
82
  @stdout = StringIO.new("f.o.o-pkg++2\t1.11.4-1ubuntu1")
83
- @provider.stub(:popen4).and_yield(@pid, @stdin, @stdout, @stderr).and_return(@status)
83
+ allow(@provider).to receive(:popen4).and_yield(@pid, @stdin, @stdout, @stderr).and_return(@status)
84
84
  @provider.load_current_resource
85
- @provider.current_resource.package_name.should == "f.o.o-pkg++2"
85
+ expect(@provider.current_resource.package_name).to eq("f.o.o-pkg++2")
86
86
  end
87
87
 
88
88
  it "should raise an exception if the source is not set but we are installing" do
@@ -90,7 +90,7 @@ describe Chef::Provider::Package::Dpkg do
90
90
  @provider.new_resource = @new_resource
91
91
  @provider.define_resource_requirements
92
92
  @provider.load_current_resource
93
- lambda { @provider.run_action(:install)}.should raise_error(Chef::Exceptions::Package)
93
+ expect { @provider.run_action(:install)}.to raise_error(Chef::Exceptions::Package)
94
94
  end
95
95
 
96
96
  it "should return the current version installed if found by dpkg" do
@@ -107,22 +107,22 @@ Config-Version: 1.11.4-1ubuntu1
107
107
  Depends: libc6 (>= 2.8~20080505), libssl0.9.8 (>= 0.9.8f-5)
108
108
  Conflicts: wget-ssl
109
109
  DPKG_S
110
- @provider.stub(:popen4).with("dpkg -s wget").and_yield(@pid, @stdin, @stdout, @stderr).and_return(@status)
110
+ allow(@provider).to receive(:popen4).with("dpkg -s wget").and_yield(@pid, @stdin, @stdout, @stderr).and_return(@status)
111
111
 
112
112
  @provider.load_current_resource
113
- @provider.current_resource.version.should == "1.11.4-1ubuntu1"
113
+ expect(@provider.current_resource.version).to eq("1.11.4-1ubuntu1")
114
114
  end
115
115
 
116
116
  it "should raise an exception if dpkg fails to run" do
117
117
  @status = double("Status", :exitstatus => -1)
118
- @provider.stub(:popen4).and_return(@status)
119
- lambda { @provider.load_current_resource }.should raise_error(Chef::Exceptions::Package)
118
+ allow(@provider).to receive(:popen4).and_return(@status)
119
+ expect { @provider.load_current_resource }.to raise_error(Chef::Exceptions::Package)
120
120
  end
121
121
  end
122
122
 
123
123
  describe Chef::Provider::Package::Dpkg, "install and upgrade" do
124
124
  it "should run dpkg -i with the package source" do
125
- @provider.should_receive(:run_noninteractive).with(
125
+ expect(@provider).to receive(:run_noninteractive).with(
126
126
  "dpkg -i /tmp/wget_1.11.4-1ubuntu1_amd64.deb"
127
127
  )
128
128
  @provider.install_package("wget", "1.11.4-1ubuntu1")
@@ -131,7 +131,7 @@ DPKG_S
131
131
  it "should run dpkg -i if the package is a path and the source is nil" do
132
132
  @new_resource = Chef::Resource::Package.new("/tmp/wget_1.11.4-1ubuntu1_amd64.deb")
133
133
  @provider = Chef::Provider::Package::Dpkg.new(@new_resource, @run_context)
134
- @provider.should_receive(:run_noninteractive).with(
134
+ expect(@provider).to receive(:run_noninteractive).with(
135
135
  "dpkg -i /tmp/wget_1.11.4-1ubuntu1_amd64.deb"
136
136
  )
137
137
  @provider.install_package("/tmp/wget_1.11.4-1ubuntu1_amd64.deb", "1.11.4-1ubuntu1")
@@ -140,55 +140,55 @@ DPKG_S
140
140
  it "should run dpkg -i if the package is a path and the source is nil for an upgrade" do
141
141
  @new_resource = Chef::Resource::Package.new("/tmp/wget_1.11.4-1ubuntu1_amd64.deb")
142
142
  @provider = Chef::Provider::Package::Dpkg.new(@new_resource, @run_context)
143
- @provider.should_receive(:run_noninteractive).with(
143
+ expect(@provider).to receive(:run_noninteractive).with(
144
144
  "dpkg -i /tmp/wget_1.11.4-1ubuntu1_amd64.deb"
145
145
  )
146
146
  @provider.upgrade_package("/tmp/wget_1.11.4-1ubuntu1_amd64.deb", "1.11.4-1ubuntu1")
147
147
  end
148
148
 
149
149
  it "should run dpkg -i with the package source and options if specified" do
150
- @provider.should_receive(:run_noninteractive).with(
150
+ expect(@provider).to receive(:run_noninteractive).with(
151
151
  "dpkg -i --force-yes /tmp/wget_1.11.4-1ubuntu1_amd64.deb"
152
152
  )
153
- @new_resource.stub(:options).and_return("--force-yes")
153
+ allow(@new_resource).to receive(:options).and_return("--force-yes")
154
154
 
155
155
  @provider.install_package("wget", "1.11.4-1ubuntu1")
156
156
  end
157
157
  it "should upgrade by running install_package" do
158
- @provider.should_receive(:install_package).with("wget", "1.11.4-1ubuntu1")
158
+ expect(@provider).to receive(:install_package).with("wget", "1.11.4-1ubuntu1")
159
159
  @provider.upgrade_package("wget", "1.11.4-1ubuntu1")
160
160
  end
161
161
  end
162
162
 
163
163
  describe Chef::Provider::Package::Dpkg, "remove and purge" do
164
164
  it "should run dpkg -r to remove the package" do
165
- @provider.should_receive(:run_noninteractive).with(
165
+ expect(@provider).to receive(:run_noninteractive).with(
166
166
  "dpkg -r wget"
167
167
  )
168
168
  @provider.remove_package("wget", "1.11.4-1ubuntu1")
169
169
  end
170
170
 
171
171
  it "should run dpkg -r to remove the package with options if specified" do
172
- @provider.should_receive(:run_noninteractive).with(
172
+ expect(@provider).to receive(:run_noninteractive).with(
173
173
  "dpkg -r --force-yes wget"
174
174
  )
175
- @new_resource.stub(:options).and_return("--force-yes")
175
+ allow(@new_resource).to receive(:options).and_return("--force-yes")
176
176
 
177
177
  @provider.remove_package("wget", "1.11.4-1ubuntu1")
178
178
  end
179
179
 
180
180
  it "should run dpkg -P to purge the package" do
181
- @provider.should_receive(:run_noninteractive).with(
181
+ expect(@provider).to receive(:run_noninteractive).with(
182
182
  "dpkg -P wget"
183
183
  )
184
184
  @provider.purge_package("wget", "1.11.4-1ubuntu1")
185
185
  end
186
186
 
187
187
  it "should run dpkg -P to purge the package with options if specified" do
188
- @provider.should_receive(:run_noninteractive).with(
188
+ expect(@provider).to receive(:run_noninteractive).with(
189
189
  "dpkg -P --force-yes wget"
190
190
  )
191
- @new_resource.stub(:options).and_return("--force-yes")
191
+ allow(@new_resource).to receive(:options).and_return("--force-yes")
192
192
 
193
193
  @provider.purge_package("wget", "1.11.4-1ubuntu1")
194
194
  end
@@ -30,79 +30,79 @@ describe Chef::Provider::Package::EasyInstall do
30
30
  @current_resource.version('1.8d')
31
31
 
32
32
  @provider = Chef::Provider::Package::EasyInstall.new(@new_resource, @run_context)
33
- Chef::Resource::Package.stub(:new).and_return(@current_resource)
33
+ allow(Chef::Resource::Package).to receive(:new).and_return(@current_resource)
34
34
 
35
35
  @stdin = StringIO.new
36
36
  @stdout = StringIO.new
37
37
  @status = double("Status", :exitstatus => 0)
38
38
  @stderr = StringIO.new
39
39
  @pid = 2342
40
- @provider.stub(:popen4).and_return(@status)
40
+ allow(@provider).to receive(:popen4).and_return(@status)
41
41
  end
42
42
 
43
43
  describe "easy_install_binary_path" do
44
44
  it "should return a Chef::Provider::EasyInstall object" do
45
45
  provider = Chef::Provider::Package::EasyInstall.new(@node, @new_resource)
46
- provider.should be_a_kind_of(Chef::Provider::Package::EasyInstall)
46
+ expect(provider).to be_a_kind_of(Chef::Provider::Package::EasyInstall)
47
47
  end
48
48
 
49
49
  it "should set the current resources package name to the new resources package name" do
50
- $stdout.stub(:write)
51
- @current_resource.should_receive(:package_name).with(@new_resource.package_name)
50
+ allow($stdout).to receive(:write)
51
+ expect(@current_resource).to receive(:package_name).with(@new_resource.package_name)
52
52
  @provider.load_current_resource
53
53
  end
54
54
 
55
55
  it "should return a relative path to easy_install if no easy_install_binary is given" do
56
- @provider.easy_install_binary_path.should eql("easy_install")
56
+ expect(@provider.easy_install_binary_path).to eql("easy_install")
57
57
  end
58
58
 
59
59
  it "should return a specific path to easy_install if a easy_install_binary is given" do
60
- @new_resource.should_receive(:easy_install_binary).and_return("/opt/local/bin/custom/easy_install")
61
- @provider.easy_install_binary_path.should eql("/opt/local/bin/custom/easy_install")
60
+ expect(@new_resource).to receive(:easy_install_binary).and_return("/opt/local/bin/custom/easy_install")
61
+ expect(@provider.easy_install_binary_path).to eql("/opt/local/bin/custom/easy_install")
62
62
  end
63
63
 
64
64
  end
65
65
 
66
66
  describe "actions_on_package" do
67
67
  it "should run easy_install with the package name and version" do
68
- @provider.should_receive(:run_command).with({
68
+ expect(@provider).to receive(:run_command).with({
69
69
  :command => "easy_install \"boto==1.8d\""
70
70
  })
71
71
  @provider.install_package("boto", "1.8d")
72
72
  end
73
73
 
74
74
  it "should run easy_install with the package name and version and specified options" do
75
- @provider.should_receive(:run_command).with({
75
+ expect(@provider).to receive(:run_command).with({
76
76
  :command => "easy_install --always-unzip \"boto==1.8d\""
77
77
  })
78
- @new_resource.stub(:options).and_return("--always-unzip")
78
+ allow(@new_resource).to receive(:options).and_return("--always-unzip")
79
79
  @provider.install_package("boto", "1.8d")
80
80
  end
81
81
 
82
82
  it "should run easy_install with the package name and version" do
83
- @provider.should_receive(:run_command).with({
83
+ expect(@provider).to receive(:run_command).with({
84
84
  :command => "easy_install \"boto==1.8d\""
85
85
  })
86
86
  @provider.upgrade_package("boto", "1.8d")
87
87
  end
88
88
 
89
89
  it "should run easy_install -m with the package name and version" do
90
- @provider.should_receive(:run_command).with({
90
+ expect(@provider).to receive(:run_command).with({
91
91
  :command => "easy_install -m boto"
92
92
  })
93
93
  @provider.remove_package("boto", "1.8d")
94
94
  end
95
95
 
96
96
  it "should run easy_install -m with the package name and version and specified options" do
97
- @provider.should_receive(:run_command).with({
97
+ expect(@provider).to receive(:run_command).with({
98
98
  :command => "easy_install -x -m boto"
99
99
  })
100
- @new_resource.stub(:options).and_return("-x")
100
+ allow(@new_resource).to receive(:options).and_return("-x")
101
101
  @provider.remove_package("boto", "1.8d")
102
102
  end
103
103
 
104
104
  it "should run easy_install -m with the package name and version" do
105
- @provider.should_receive(:run_command).with({
105
+ expect(@provider).to receive(:run_command).with({
106
106
  :command => "easy_install -m boto"
107
107
  })
108
108
  @provider.purge_package("boto", "1.8d")
@@ -30,35 +30,35 @@ describe Chef::Provider::Package::Freebsd::Pkg, "load_current_resource" do
30
30
 
31
31
  @provider = Chef::Provider::Package::Freebsd::Pkg.new(@new_resource, @run_context)
32
32
  @provider.current_resource = @current_resource
33
- ::File.stub(:exist?).with('/usr/ports/Makefile').and_return(false)
33
+ allow(::File).to receive(:exist?).with('/usr/ports/Makefile').and_return(false)
34
34
  end
35
35
 
36
36
  describe "when determining the current package state" do
37
37
  before do
38
- @provider.stub(:ports_candidate_version).and_return("4.3.6")
38
+ allow(@provider).to receive(:ports_candidate_version).and_return("4.3.6")
39
39
  end
40
40
 
41
41
  it "should create a current resource with the name of the new_resource" do
42
42
  current_resource = Chef::Provider::Package::Freebsd::Pkg.new(@new_resource, @run_context).current_resource
43
- current_resource.name.should == "zsh"
43
+ expect(current_resource.name).to eq("zsh")
44
44
  end
45
45
 
46
46
  it "should return a version if the package is installed" do
47
- @provider.should_receive(:current_installed_version).and_return("4.3.6_7")
47
+ expect(@provider).to receive(:current_installed_version).and_return("4.3.6_7")
48
48
  @provider.load_current_resource
49
- @current_resource.version.should == "4.3.6_7"
49
+ expect(@current_resource.version).to eq("4.3.6_7")
50
50
  end
51
51
 
52
52
  it "should return nil if the package is not installed" do
53
- @provider.should_receive(:current_installed_version).and_return(nil)
53
+ expect(@provider).to receive(:current_installed_version).and_return(nil)
54
54
  @provider.load_current_resource
55
- @current_resource.version.should be_nil
55
+ expect(@current_resource.version).to be_nil
56
56
  end
57
57
 
58
58
  it "should return a candidate version if it exists" do
59
- @provider.should_receive(:current_installed_version).and_return(nil)
59
+ expect(@provider).to receive(:current_installed_version).and_return(nil)
60
60
  @provider.load_current_resource
61
- @provider.candidate_version.should eql("4.3.6")
61
+ expect(@provider.candidate_version).to eql("4.3.6")
62
62
  end
63
63
  end
64
64
 
@@ -77,42 +77,42 @@ describe Chef::Provider::Package::Freebsd::Pkg, "load_current_resource" do
77
77
 
78
78
  it "should return the version number when it is installed" do
79
79
  pkg_info = OpenStruct.new(:stdout => "zsh-4.3.6_7")
80
- @provider.should_receive(:shell_out!).with('pkg_info -E "zsh*"', :env => nil, :returns => [0,1]).and_return(pkg_info)
80
+ expect(@provider).to receive(:shell_out!).with('pkg_info -E "zsh*"', :env => nil, :returns => [0,1]).and_return(pkg_info)
81
81
  #@provider.should_receive(:popen4).with('pkg_info -E "zsh*"').and_yield(@pid, @stdin, ["zsh-4.3.6_7"], @stderr).and_return(@status)
82
- @provider.stub(:package_name).and_return("zsh")
83
- @provider.current_installed_version.should == "4.3.6_7"
82
+ allow(@provider).to receive(:package_name).and_return("zsh")
83
+ expect(@provider.current_installed_version).to eq("4.3.6_7")
84
84
  end
85
85
 
86
86
  it "does not set the current version number when the package is not installed" do
87
87
  pkg_info = OpenStruct.new(:stdout => "")
88
- @provider.should_receive(:shell_out!).with('pkg_info -E "zsh*"', :env => nil, :returns => [0,1]).and_return(pkg_info)
89
- @provider.stub(:package_name).and_return("zsh")
90
- @provider.current_installed_version.should be_nil
88
+ expect(@provider).to receive(:shell_out!).with('pkg_info -E "zsh*"', :env => nil, :returns => [0,1]).and_return(pkg_info)
89
+ allow(@provider).to receive(:package_name).and_return("zsh")
90
+ expect(@provider.current_installed_version).to be_nil
91
91
  end
92
92
 
93
93
  it "should return the port path for a valid port name" do
94
94
  whereis = OpenStruct.new(:stdout => "zsh: /usr/ports/shells/zsh")
95
- @provider.should_receive(:shell_out!).with("whereis -s zsh", :env => nil).and_return(whereis)
95
+ expect(@provider).to receive(:shell_out!).with("whereis -s zsh", :env => nil).and_return(whereis)
96
96
  #@provider.should_receive(:popen4).with("whereis -s zsh").and_yield(@pid, @stdin, ["zsh: /usr/ports/shells/zsh"], @stderr).and_return(@status)
97
- @provider.stub(:port_name).and_return("zsh")
98
- @provider.port_path.should == "/usr/ports/shells/zsh"
97
+ allow(@provider).to receive(:port_name).and_return("zsh")
98
+ expect(@provider.port_path).to eq("/usr/ports/shells/zsh")
99
99
  end
100
100
 
101
101
  # Not happy with the form of these tests as they are far too closely tied to the implementation and so very fragile.
102
102
  it "should return the ports candidate version when given a valid port path" do
103
- @provider.stub(:port_path).and_return("/usr/ports/shells/zsh")
103
+ allow(@provider).to receive(:port_path).and_return("/usr/ports/shells/zsh")
104
104
  make_v = OpenStruct.new(:stdout => "4.3.6\n", :exitstatus => 0)
105
- @provider.should_receive(:shell_out!).with("make -V PORTVERSION", {:cwd=>"/usr/ports/shells/zsh", :returns=>[0, 1], :env=>nil}).and_return(make_v)
106
- @provider.ports_candidate_version.should == "4.3.6"
105
+ expect(@provider).to receive(:shell_out!).with("make -V PORTVERSION", {:cwd=>"/usr/ports/shells/zsh", :returns=>[0, 1], :env=>nil}).and_return(make_v)
106
+ expect(@provider.ports_candidate_version).to eq("4.3.6")
107
107
  end
108
108
 
109
109
  it "should figure out the package name when we have ports" do
110
- ::File.stub(:exist?).with('/usr/ports/Makefile').and_return(true)
111
- @provider.stub(:port_path).and_return("/usr/ports/shells/zsh")
110
+ allow(::File).to receive(:exist?).with('/usr/ports/Makefile').and_return(true)
111
+ allow(@provider).to receive(:port_path).and_return("/usr/ports/shells/zsh")
112
112
  make_v = OpenStruct.new(:stdout => "zsh-4.3.6_7\n", :exitstatus => 0)
113
- @provider.should_receive(:shell_out!).with("make -V PKGNAME", {:cwd=>"/usr/ports/shells/zsh", :env=>nil, :returns=>[0, 1]}).and_return(make_v)
113
+ expect(@provider).to receive(:shell_out!).with("make -V PKGNAME", {:cwd=>"/usr/ports/shells/zsh", :env=>nil, :returns=>[0, 1]}).and_return(make_v)
114
114
  #@provider.should_receive(:ports_makefile_variable_value).with("PKGNAME").and_return("zsh-4.3.6_7")
115
- @provider.package_name.should == "zsh"
115
+ expect(@provider.package_name).to eq("zsh")
116
116
  end
117
117
  end
118
118
 
@@ -121,13 +121,13 @@ describe Chef::Provider::Package::Freebsd::Pkg, "load_current_resource" do
121
121
  @cmd_result = OpenStruct.new(:status => true)
122
122
 
123
123
  @provider.current_resource = @current_resource
124
- @provider.stub(:package_name).and_return("zsh")
125
- @provider.stub(:latest_link_name).and_return("zsh")
126
- @provider.stub(:port_path).and_return("/usr/ports/shells/zsh")
124
+ allow(@provider).to receive(:package_name).and_return("zsh")
125
+ allow(@provider).to receive(:latest_link_name).and_return("zsh")
126
+ allow(@provider).to receive(:port_path).and_return("/usr/ports/shells/zsh")
127
127
  end
128
128
 
129
129
  it "should run pkg_add -r with the package name" do
130
- @provider.should_receive(:shell_out!).with("pkg_add -r zsh", :env => nil).and_return(@cmd_result)
130
+ expect(@provider).to receive(:shell_out!).with("pkg_add -r zsh", :env => nil).and_return(@cmd_result)
131
131
  @provider.install_package("zsh", "4.3.6_7")
132
132
  end
133
133
  end
@@ -142,15 +142,15 @@ describe Chef::Provider::Package::Freebsd::Pkg, "load_current_resource" do
142
142
 
143
143
  it "should figure out the port path from the package_name using whereis" do
144
144
  whereis = OpenStruct.new(:stdout => "zsh: /usr/ports/shells/zsh")
145
- @provider.should_receive(:shell_out!).with("whereis -s zsh", :env=>nil).and_return(whereis)
146
- @provider.port_path.should == "/usr/ports/shells/zsh"
145
+ expect(@provider).to receive(:shell_out!).with("whereis -s zsh", :env=>nil).and_return(whereis)
146
+ expect(@provider.port_path).to eq("/usr/ports/shells/zsh")
147
147
  end
148
148
 
149
149
  it "should use the package_name as the port path when it starts with /" do
150
150
  new_resource = Chef::Resource::Package.new("/usr/ports/www/wordpress")
151
151
  provider = Chef::Provider::Package::Freebsd::Pkg.new(new_resource, @run_context)
152
- provider.should_not_receive(:popen4)
153
- provider.port_path.should == "/usr/ports/www/wordpress"
152
+ expect(provider).not_to receive(:popen4)
153
+ expect(provider.port_path).to eq("/usr/ports/www/wordpress")
154
154
  end
155
155
 
156
156
  it "should use the package_name as a relative path from /usr/ports when it contains / but doesn't start with it" do
@@ -159,8 +159,8 @@ describe Chef::Provider::Package::Freebsd::Pkg, "load_current_resource" do
159
159
  # :cookbook_name => "xenoparadox")
160
160
  new_resource = Chef::Resource::Package.new("www/wordpress")
161
161
  provider = Chef::Provider::Package::Freebsd::Pkg.new(new_resource, @run_context)
162
- provider.should_not_receive(:popen4)
163
- provider.port_path.should == "/usr/ports/www/wordpress"
162
+ expect(provider).not_to receive(:popen4)
163
+ expect(provider.port_path).to eq("/usr/ports/www/wordpress")
164
164
  end
165
165
  end
166
166
 
@@ -170,15 +170,15 @@ describe Chef::Provider::Package::Freebsd::Pkg, "load_current_resource" do
170
170
  @current_resource = Chef::Resource::Package.new("ruby-iconv")
171
171
  @provider = Chef::Provider::Package::Freebsd::Pkg.new(@new_resource, @run_context)
172
172
  @provider.current_resource = @current_resource
173
- @provider.stub(:port_path).and_return("/usr/ports/converters/ruby-iconv")
174
- @provider.stub(:package_name).and_return("ruby18-iconv")
175
- @provider.stub(:latest_link_name).and_return("ruby18-iconv")
173
+ allow(@provider).to receive(:port_path).and_return("/usr/ports/converters/ruby-iconv")
174
+ allow(@provider).to receive(:package_name).and_return("ruby18-iconv")
175
+ allow(@provider).to receive(:latest_link_name).and_return("ruby18-iconv")
176
176
 
177
177
  @install_result = OpenStruct.new(:status => true)
178
178
  end
179
179
 
180
180
  it "should run pkg_add -r with the package name" do
181
- @provider.should_receive(:shell_out!).with("pkg_add -r ruby18-iconv", :env => nil).and_return(@install_result)
181
+ expect(@provider).to receive(:shell_out!).with("pkg_add -r ruby18-iconv", :env => nil).and_return(@install_result)
182
182
  @provider.install_package("ruby-iconv", "1.0")
183
183
  end
184
184
  end
@@ -189,11 +189,11 @@ describe Chef::Provider::Package::Freebsd::Pkg, "load_current_resource" do
189
189
  @new_resource.version "4.3.6_7"
190
190
  @current_resource.version "4.3.6_7"
191
191
  @provider.current_resource = @current_resource
192
- @provider.stub(:package_name).and_return("zsh")
192
+ allow(@provider).to receive(:package_name).and_return("zsh")
193
193
  end
194
194
 
195
195
  it "should run pkg_delete with the package name and version" do
196
- @provider.should_receive(:shell_out!).with("pkg_delete zsh-4.3.6_7", :env => nil).and_return(@pkg_delete)
196
+ expect(@provider).to receive(:shell_out!).with("pkg_delete zsh-4.3.6_7", :env => nil).and_return(@pkg_delete)
197
197
  @provider.remove_package("zsh", "4.3.6_7")
198
198
  end
199
199
  end
@@ -213,16 +213,16 @@ describe Chef::Provider::Package::Freebsd::Pkg, "load_current_resource" do
213
213
 
214
214
  it "should return the port path for a valid port name" do
215
215
  whereis = OpenStruct.new(:stdout => "bonnie++: /usr/ports/benchmarks/bonnie++")
216
- @provider.should_receive(:shell_out!).with("whereis -s bonnie++", :env => nil).and_return(whereis)
217
- @provider.stub(:port_name).and_return("bonnie++")
218
- @provider.port_path.should == "/usr/ports/benchmarks/bonnie++"
216
+ expect(@provider).to receive(:shell_out!).with("whereis -s bonnie++", :env => nil).and_return(whereis)
217
+ allow(@provider).to receive(:port_name).and_return("bonnie++")
218
+ expect(@provider.port_path).to eq("/usr/ports/benchmarks/bonnie++")
219
219
  end
220
220
 
221
221
  it "should return the version number when it is installed" do
222
222
  pkg_info = OpenStruct.new(:stdout => "bonnie++-1.96")
223
- @provider.should_receive(:shell_out!).with('pkg_info -E "bonnie++*"', :env => nil, :returns => [0,1]).and_return(pkg_info)
224
- @provider.stub(:package_name).and_return("bonnie++")
225
- @provider.current_installed_version.should == "1.96"
223
+ expect(@provider).to receive(:shell_out!).with('pkg_info -E "bonnie++*"', :env => nil, :returns => [0,1]).and_return(pkg_info)
224
+ allow(@provider).to receive(:package_name).and_return("bonnie++")
225
+ expect(@provider.current_installed_version).to eq("1.96")
226
226
  end
227
227
  end
228
228
 
@@ -249,11 +249,11 @@ describe Chef::Provider::Package::Freebsd::Pkg, "load_current_resource" do
249
249
  @current_resource = Chef::Resource::Package.new("perl5.8")
250
250
  @provider = Chef::Provider::Package::Freebsd::Pkg.new(@new_resource, @run_context)
251
251
  @provider.current_resource = @current_resource
252
- @provider.stub(:package_name).and_return("perl")
253
- @provider.stub(:latest_link_name).and_return("perl")
252
+ allow(@provider).to receive(:package_name).and_return("perl")
253
+ allow(@provider).to receive(:latest_link_name).and_return("perl")
254
254
 
255
255
  cmd = OpenStruct.new(:status => true)
256
- @provider.should_receive(:shell_out!).with("pkg_add -r perl", :env => nil).and_return(cmd)
256
+ expect(@provider).to receive(:shell_out!).with("pkg_add -r perl", :env => nil).and_return(cmd)
257
257
  @provider.install_package("perl5.8", "5.8.8_1")
258
258
  end
259
259
 
@@ -263,11 +263,11 @@ describe Chef::Provider::Package::Freebsd::Pkg, "load_current_resource" do
263
263
  @current_resource = Chef::Resource::Package.new("mysql50-server")
264
264
  @provider = Chef::Provider::Package::Freebsd::Pkg.new(@new_resource, @run_context)
265
265
  @provider.current_resource = @current_resource
266
- @provider.stub(:package_name).and_return("mysql-server")
267
- @provider.stub(:latest_link_name).and_return("mysql50-server")
266
+ allow(@provider).to receive(:package_name).and_return("mysql-server")
267
+ allow(@provider).to receive(:latest_link_name).and_return("mysql50-server")
268
268
 
269
269
  cmd = OpenStruct.new(:status => true)
270
- @provider.should_receive(:shell_out!).with("pkg_add -r mysql50-server", :env=>nil).and_return(cmd)
270
+ expect(@provider).to receive(:shell_out!).with("pkg_add -r mysql50-server", :env=>nil).and_return(cmd)
271
271
  @provider.install_package("mysql50-server", "5.0.45_1")
272
272
  end
273
273
  end