chef 11.10.0.rc.0 → 11.10.0.rc.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (401) hide show
  1. data/Rakefile +0 -75
  2. data/distro/common/html/_sources/ctl_chef_client.txt +36 -0
  3. data/distro/common/html/_sources/ctl_chef_server.txt +26 -0
  4. data/distro/common/html/_sources/ctl_chef_shell.txt +15 -0
  5. data/distro/common/html/_sources/ctl_chef_solo.txt +25 -0
  6. data/distro/common/html/_sources/index.txt +126 -0
  7. data/distro/common/html/_sources/knife.txt +74 -0
  8. data/distro/common/html/_sources/knife_bootstrap.txt +56 -0
  9. data/distro/common/html/_sources/knife_client.txt +151 -0
  10. data/distro/common/html/_sources/knife_common_options.txt +6 -0
  11. data/distro/common/html/_sources/knife_configure.txt +29 -0
  12. data/distro/common/html/_sources/knife_cookbook.txt +236 -0
  13. data/distro/common/html/_sources/knife_cookbook_site.txt +157 -0
  14. data/distro/common/html/_sources/knife_data_bag.txt +160 -0
  15. data/distro/common/html/_sources/knife_delete.txt +26 -0
  16. data/distro/common/html/_sources/knife_deps.txt +61 -0
  17. data/distro/common/html/_sources/knife_diff.txt +34 -0
  18. data/distro/common/html/_sources/knife_download.txt +44 -0
  19. data/distro/common/html/_sources/knife_edit.txt +26 -0
  20. data/distro/common/html/_sources/knife_environment.txt +158 -0
  21. data/distro/common/html/_sources/knife_exec.txt +47 -0
  22. data/distro/common/html/_sources/knife_index_rebuild.txt +21 -0
  23. data/distro/common/html/_sources/knife_list.txt +33 -0
  24. data/distro/common/html/_sources/knife_node.txt +250 -0
  25. data/distro/common/html/_sources/knife_raw.txt +35 -0
  26. data/distro/common/html/_sources/knife_recipe_list.txt +23 -0
  27. data/distro/common/html/_sources/knife_role.txt +157 -0
  28. data/distro/common/html/_sources/knife_search.txt +53 -0
  29. data/distro/common/html/_sources/knife_show.txt +27 -0
  30. data/distro/common/html/_sources/knife_ssh.txt +43 -0
  31. data/distro/common/html/_sources/knife_status.txt +37 -0
  32. data/distro/common/html/_sources/knife_tag.txt +69 -0
  33. data/distro/common/html/_sources/knife_upload.txt +49 -0
  34. data/distro/common/html/_sources/knife_user.txt +127 -0
  35. data/distro/common/html/_sources/knife_using.txt +43 -0
  36. data/distro/common/html/_sources/knife_xargs.txt +30 -0
  37. data/distro/common/html/_static/ajax-loader.gif +0 -0
  38. data/distro/common/html/_static/basic.css +540 -0
  39. data/distro/common/html/_static/chef.css +507 -0
  40. data/distro/common/html/_static/chef.ico +0 -0
  41. data/distro/common/html/_static/chef_html_logo.png +0 -0
  42. data/distro/common/html/_static/chef_logo.png +0 -0
  43. data/distro/common/html/_static/comment-bright.png +0 -0
  44. data/distro/common/html/_static/comment-close.png +0 -0
  45. data/distro/common/html/_static/comment.png +0 -0
  46. data/distro/common/html/_static/contents.png +0 -0
  47. data/distro/common/html/_static/doctools.js +247 -0
  48. data/distro/common/html/_static/down-pressed.png +0 -0
  49. data/distro/common/html/_static/down.png +0 -0
  50. data/distro/common/html/_static/file.png +0 -0
  51. data/distro/common/html/_static/guide.css +505 -0
  52. data/distro/common/html/_static/jquery.js +154 -0
  53. data/distro/common/html/_static/minus.png +0 -0
  54. data/distro/common/html/_static/navigation.png +0 -0
  55. data/distro/common/html/_static/plus.png +0 -0
  56. data/distro/common/html/_static/pygments.css +62 -0
  57. data/distro/common/html/_static/searchtools.js +560 -0
  58. data/distro/common/html/_static/underscore.js +23 -0
  59. data/distro/common/html/_static/up-pressed.png +0 -0
  60. data/distro/common/html/_static/up.png +0 -0
  61. data/distro/common/html/_static/websupport.js +808 -0
  62. data/distro/common/html/ctl_chef_client.html +219 -0
  63. data/distro/common/html/ctl_chef_server.html +111 -0
  64. data/distro/common/html/ctl_chef_shell.html +120 -0
  65. data/distro/common/html/ctl_chef_solo.html +144 -0
  66. data/distro/common/html/index.html +185 -0
  67. data/distro/common/html/knife.html +172 -0
  68. data/distro/common/html/knife_bootstrap.html +250 -0
  69. data/distro/common/html/knife_client.html +283 -0
  70. data/distro/common/html/knife_common_options.html +98 -0
  71. data/distro/common/html/knife_configure.html +107 -0
  72. data/distro/common/html/knife_cookbook.html +481 -0
  73. data/distro/common/html/knife_cookbook_site.html +372 -0
  74. data/distro/common/html/knife_data_bag.html +359 -0
  75. data/distro/common/html/knife_delete.html +95 -0
  76. data/distro/common/html/knife_deps.html +145 -0
  77. data/distro/common/html/knife_diff.html +125 -0
  78. data/distro/common/html/knife_download.html +147 -0
  79. data/distro/common/html/knife_edit.html +91 -0
  80. data/distro/common/html/knife_environment.html +328 -0
  81. data/distro/common/html/knife_exec.html +222 -0
  82. data/distro/common/html/knife_index_rebuild.html +85 -0
  83. data/distro/common/html/knife_list.html +116 -0
  84. data/distro/common/html/knife_node.html +450 -0
  85. data/distro/common/html/knife_raw.html +112 -0
  86. data/distro/common/html/knife_recipe_list.html +93 -0
  87. data/distro/common/html/knife_role.html +295 -0
  88. data/distro/common/html/knife_search.html +204 -0
  89. data/distro/common/html/knife_show.html +106 -0
  90. data/distro/common/html/knife_ssh.html +179 -0
  91. data/distro/common/html/knife_status.html +142 -0
  92. data/distro/common/html/knife_tag.html +140 -0
  93. data/distro/common/html/knife_upload.html +155 -0
  94. data/distro/common/html/knife_user.html +244 -0
  95. data/distro/common/html/knife_using.html +211 -0
  96. data/distro/common/html/knife_xargs.html +115 -0
  97. data/distro/common/html/objects.inv +0 -0
  98. data/distro/common/html/search.html +84 -0
  99. data/distro/common/html/searchindex.js +1 -0
  100. data/distro/common/man/man1/chef-shell.1 +5 -5
  101. data/distro/common/man/man1/knife-bootstrap.1 +6 -9
  102. data/distro/common/man/man1/knife-client.1 +1 -9
  103. data/distro/common/man/man1/knife-configure.1 +10 -6
  104. data/distro/common/man/man1/knife-cookbook-site.1 +1 -9
  105. data/distro/common/man/man1/knife-cookbook.1 +11 -21
  106. data/distro/common/man/man1/knife-data-bag.1 +8 -22
  107. data/distro/common/man/man1/knife-delete.1 +1 -1
  108. data/distro/common/man/man1/knife-deps.1 +4 -12
  109. data/distro/common/man/man1/knife-diff.1 +1 -1
  110. data/distro/common/man/man1/knife-download.1 +2 -2
  111. data/distro/common/man/man1/knife-edit.1 +1 -1
  112. data/distro/common/man/man1/knife-environment.1 +108 -9
  113. data/distro/common/man/man1/knife-exec.1 +1 -15
  114. data/distro/common/man/man1/knife-index-rebuild.1 +1 -1
  115. data/distro/common/man/man1/knife-list.1 +1 -1
  116. data/distro/common/man/man1/knife-node.1 +3 -13
  117. data/distro/common/man/man1/knife-raw.1 +1 -1
  118. data/distro/common/man/man1/knife-recipe-list.1 +1 -1
  119. data/distro/common/man/man1/knife-role.1 +2 -12
  120. data/distro/common/man/man1/knife-search.1 +5 -5
  121. data/distro/common/man/man1/knife-show.1 +1 -3
  122. data/distro/common/man/man1/knife-ssh.1 +1 -5
  123. data/distro/common/man/man1/knife-status.1 +1 -1
  124. data/distro/common/man/man1/knife-tag.1 +1 -9
  125. data/distro/common/man/man1/knife-upload.1 +7 -9
  126. data/distro/common/man/man1/knife-user.1 +3 -17
  127. data/distro/common/man/man1/knife-xargs.1 +1 -3
  128. data/distro/common/man/man8/chef-client.8 +18 -18
  129. data/distro/common/man/man8/chef-solo.8 +12 -6
  130. data/lib/chef/client.rb +9 -5
  131. data/lib/chef/cookbook_uploader.rb +1 -1
  132. data/lib/chef/dsl/recipe.rb +119 -38
  133. data/lib/chef/exceptions.rb +4 -0
  134. data/lib/chef/policy_builder/expand_node_object.rb +11 -4
  135. data/lib/chef/policy_builder/policyfile.rb +7 -1
  136. data/lib/chef/provider/file.rb +1 -0
  137. data/lib/chef/resource_platform_map.rb +1 -1
  138. data/lib/chef/resource_reporter.rb +2 -2
  139. data/lib/chef/version.rb +1 -1
  140. data/spec/functional/knife/cookbook_delete_spec.rb +9 -9
  141. data/spec/functional/knife/ssh_spec.rb +1 -1
  142. data/spec/functional/resource/link_spec.rb +6 -6
  143. data/spec/functional/resource/registry_spec.rb +7 -7
  144. data/spec/functional/run_lock_spec.rb +1 -1
  145. data/spec/integration/knife/download_spec.rb +1 -1
  146. data/spec/integration/solo/solo_spec.rb +1 -1
  147. data/spec/spec_helper.rb +0 -1
  148. data/spec/stress/win32/file_spec.rb +6 -0
  149. data/spec/support/lib/chef/resource/zen_master.rb +1 -1
  150. data/spec/support/mock/platform.rb +1 -1
  151. data/spec/support/shared/functional/file_resource.rb +0 -2
  152. data/spec/support/shared/functional/securable_resource.rb +2 -2
  153. data/spec/support/shared/unit/api_error_inspector.rb +7 -7
  154. data/spec/support/shared/unit/provider/file.rb +47 -8
  155. data/spec/support/shared/unit/provider/useradd_based_user_provider.rb +23 -23
  156. data/spec/unit/api_client/registration_spec.rb +5 -5
  157. data/spec/unit/api_client_spec.rb +2 -2
  158. data/spec/unit/application/apply.rb +6 -6
  159. data/spec/unit/application/client_spec.rb +6 -6
  160. data/spec/unit/application/knife_spec.rb +5 -5
  161. data/spec/unit/application/solo_spec.rb +13 -13
  162. data/spec/unit/application_spec.rb +19 -19
  163. data/spec/unit/checksum/storage/filesystem_spec.rb +2 -2
  164. data/spec/unit/client_spec.rb +23 -23
  165. data/spec/unit/config_spec.rb +4 -4
  166. data/spec/unit/cookbook/metadata_spec.rb +22 -22
  167. data/spec/unit/cookbook/synchronizer_spec.rb +17 -17
  168. data/spec/unit/daemon_spec.rb +21 -22
  169. data/spec/unit/data_bag_item_spec.rb +8 -8
  170. data/spec/unit/data_bag_spec.rb +6 -6
  171. data/spec/unit/deprecation_spec.rb +1 -1
  172. data/spec/unit/dsl/data_query_spec.rb +1 -1
  173. data/spec/unit/environment_spec.rb +5 -5
  174. data/spec/unit/file_access_control_spec.rb +5 -5
  175. data/spec/unit/file_cache_spec.rb +1 -1
  176. data/spec/unit/file_content_management/deploy/mv_unix_spec.rb +1 -1
  177. data/spec/unit/file_content_management/deploy/mv_windows_spec.rb +12 -12
  178. data/spec/unit/formatters/error_inspectors/compile_error_inspector_spec.rb +4 -4
  179. data/spec/unit/formatters/error_inspectors/cookbook_resolve_error_inspector_spec.rb +4 -4
  180. data/spec/unit/formatters/error_inspectors/cookbook_sync_error_inspector_spec.rb +1 -1
  181. data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +6 -6
  182. data/spec/unit/formatters/error_inspectors/run_list_expansion_error_inspector_spec.rb +4 -4
  183. data/spec/unit/handler/json_file_spec.rb +1 -1
  184. data/spec/unit/handler_spec.rb +3 -3
  185. data/spec/unit/knife/bootstrap_spec.rb +17 -17
  186. data/spec/unit/knife/client_bulk_delete_spec.rb +4 -4
  187. data/spec/unit/knife/client_create_spec.rb +7 -7
  188. data/spec/unit/knife/client_reregister_spec.rb +2 -2
  189. data/spec/unit/knife/client_show_spec.rb +1 -1
  190. data/spec/unit/knife/config_file_selection_spec.rb +4 -4
  191. data/spec/unit/knife/configure_client_spec.rb +4 -4
  192. data/spec/unit/knife/configure_spec.rb +16 -16
  193. data/spec/unit/knife/cookbook_bulk_delete_spec.rb +10 -10
  194. data/spec/unit/knife/cookbook_create_spec.rb +5 -5
  195. data/spec/unit/knife/cookbook_delete_spec.rb +6 -6
  196. data/spec/unit/knife/cookbook_download_spec.rb +10 -10
  197. data/spec/unit/knife/cookbook_list_spec.rb +3 -3
  198. data/spec/unit/knife/cookbook_metadata_from_file_spec.rb +2 -2
  199. data/spec/unit/knife/cookbook_metadata_spec.rb +8 -8
  200. data/spec/unit/knife/cookbook_show_spec.rb +4 -4
  201. data/spec/unit/knife/cookbook_site_download_spec.rb +3 -3
  202. data/spec/unit/knife/cookbook_site_install_spec.rb +8 -8
  203. data/spec/unit/knife/cookbook_site_share_spec.rb +22 -22
  204. data/spec/unit/knife/cookbook_site_unshare_spec.rb +8 -8
  205. data/spec/unit/knife/cookbook_test_spec.rb +7 -7
  206. data/spec/unit/knife/cookbook_upload_spec.rb +20 -20
  207. data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +6 -6
  208. data/spec/unit/knife/core/object_loader_spec.rb +1 -1
  209. data/spec/unit/knife/core/ui_spec.rb +19 -21
  210. data/spec/unit/knife/data_bag_create_spec.rb +4 -4
  211. data/spec/unit/knife/data_bag_edit_spec.rb +7 -7
  212. data/spec/unit/knife/data_bag_from_file_spec.rb +15 -15
  213. data/spec/unit/knife/data_bag_show_spec.rb +5 -5
  214. data/spec/unit/knife/environment_create_spec.rb +6 -6
  215. data/spec/unit/knife/environment_delete_spec.rb +6 -6
  216. data/spec/unit/knife/environment_edit_spec.rb +5 -5
  217. data/spec/unit/knife/environment_from_file_spec.rb +7 -7
  218. data/spec/unit/knife/environment_list_spec.rb +4 -4
  219. data/spec/unit/knife/environment_show_spec.rb +4 -4
  220. data/spec/unit/knife/index_rebuild_spec.rb +2 -2
  221. data/spec/unit/knife/knife_help.rb +11 -11
  222. data/spec/unit/knife/node_bulk_delete_spec.rb +4 -4
  223. data/spec/unit/knife/node_delete_spec.rb +5 -5
  224. data/spec/unit/knife/node_edit_spec.rb +2 -2
  225. data/spec/unit/knife/node_from_file_spec.rb +5 -5
  226. data/spec/unit/knife/node_list_spec.rb +3 -3
  227. data/spec/unit/knife/node_run_list_add_spec.rb +3 -3
  228. data/spec/unit/knife/node_run_list_remove_spec.rb +4 -4
  229. data/spec/unit/knife/node_run_list_set_spec.rb +5 -5
  230. data/spec/unit/knife/node_show_spec.rb +2 -2
  231. data/spec/unit/knife/role_bulk_delete_spec.rb +4 -4
  232. data/spec/unit/knife/role_create_spec.rb +5 -5
  233. data/spec/unit/knife/role_delete_spec.rb +5 -5
  234. data/spec/unit/knife/role_edit_spec.rb +5 -5
  235. data/spec/unit/knife/role_from_file_spec.rb +5 -5
  236. data/spec/unit/knife/role_list_spec.rb +2 -2
  237. data/spec/unit/knife/ssh_spec.rb +6 -6
  238. data/spec/unit/knife/status_spec.rb +4 -4
  239. data/spec/unit/knife/tag_create_spec.rb +3 -3
  240. data/spec/unit/knife/tag_delete_spec.rb +3 -3
  241. data/spec/unit/knife/tag_list_spec.rb +2 -2
  242. data/spec/unit/knife/user_create_spec.rb +7 -7
  243. data/spec/unit/knife/user_reregister_spec.rb +3 -3
  244. data/spec/unit/knife/user_show_spec.rb +1 -1
  245. data/spec/unit/knife_spec.rb +29 -29
  246. data/spec/unit/lwrp_spec.rb +2 -2
  247. data/spec/unit/mixin/checksum_spec.rb +2 -2
  248. data/spec/unit/mixin/command_spec.rb +1 -1
  249. data/spec/unit/mixin/enforce_ownership_and_permissions_spec.rb +4 -4
  250. data/spec/unit/mixin/params_validate_spec.rb +17 -17
  251. data/spec/unit/mixin/path_sanity_spec.rb +8 -8
  252. data/spec/unit/mixin/securable_spec.rb +87 -87
  253. data/spec/unit/mixin/shell_out_spec.rb +1 -1
  254. data/spec/unit/mixin/template_spec.rb +2 -2
  255. data/spec/unit/node/attribute_spec.rb +3 -3
  256. data/spec/unit/node_spec.rb +12 -12
  257. data/spec/unit/platform_spec.rb +1 -1
  258. data/spec/unit/policy_builder/expand_node_object_spec.rb +16 -0
  259. data/spec/unit/policy_builder/policyfile_spec.rb +4 -0
  260. data/spec/unit/provider/breakpoint_spec.rb +8 -8
  261. data/spec/unit/provider/cookbook_file/content_spec.rb +4 -4
  262. data/spec/unit/provider/cookbook_file_spec.rb +1 -1
  263. data/spec/unit/provider/cron/unix_spec.rb +11 -11
  264. data/spec/unit/provider/cron_spec.rb +40 -40
  265. data/spec/unit/provider/deploy/revision_spec.rb +11 -12
  266. data/spec/unit/provider/deploy/timestamped_spec.rb +3 -3
  267. data/spec/unit/provider/deploy_spec.rb +50 -50
  268. data/spec/unit/provider/directory_spec.rb +18 -18
  269. data/spec/unit/provider/env_spec.rb +15 -15
  270. data/spec/unit/provider/erl_call_spec.rb +1 -1
  271. data/spec/unit/provider/execute_spec.rb +5 -5
  272. data/spec/unit/provider/file/content_spec.rb +5 -5
  273. data/spec/unit/provider/file_spec.rb +1 -1
  274. data/spec/unit/provider/git_spec.rb +47 -47
  275. data/spec/unit/provider/group/dscl_spec.rb +16 -15
  276. data/spec/unit/provider/group/gpasswd_spec.rb +6 -5
  277. data/spec/unit/provider/group/groupadd_spec.rb +10 -10
  278. data/spec/unit/provider/group/groupmod_spec.rb +3 -3
  279. data/spec/unit/provider/group/pw_spec.rb +9 -8
  280. data/spec/unit/provider/group/usermod_spec.rb +13 -12
  281. data/spec/unit/provider/group/windows_spec.rb +9 -9
  282. data/spec/unit/provider/group_spec.rb +31 -31
  283. data/spec/unit/provider/http_request_spec.rb +3 -3
  284. data/spec/unit/provider/ifconfig/aix_spec.rb +7 -7
  285. data/spec/unit/provider/ifconfig/debian_spec.rb +3 -3
  286. data/spec/unit/provider/ifconfig/redhat_spec.rb +5 -5
  287. data/spec/unit/provider/ifconfig_spec.rb +13 -13
  288. data/spec/unit/provider/link_spec.rb +33 -33
  289. data/spec/unit/provider/mdadm_spec.rb +4 -4
  290. data/spec/unit/provider/mount/aix_spec.rb +5 -5
  291. data/spec/unit/provider/mount/mount_spec.rb +49 -50
  292. data/spec/unit/provider/mount/windows_spec.rb +18 -18
  293. data/spec/unit/provider/mount_spec.rb +12 -12
  294. data/spec/unit/provider/ohai_spec.rb +6 -6
  295. data/spec/unit/provider/package/aix_spec.rb +14 -14
  296. data/spec/unit/provider/package/apt_spec.rb +10 -10
  297. data/spec/unit/provider/package/dpkg_spec.rb +13 -13
  298. data/spec/unit/provider/package/easy_install_spec.rb +6 -6
  299. data/spec/unit/provider/package/freebsd_spec.rb +29 -29
  300. data/spec/unit/provider/package/ips_spec.rb +4 -4
  301. data/spec/unit/provider/package/macports_spec.rb +6 -6
  302. data/spec/unit/provider/package/pacman_spec.rb +17 -17
  303. data/spec/unit/provider/package/portage_spec.rb +18 -18
  304. data/spec/unit/provider/package/rpm_spec.rb +7 -7
  305. data/spec/unit/provider/package/rubygems_spec.rb +31 -31
  306. data/spec/unit/provider/package/smartos_spec.rb +4 -4
  307. data/spec/unit/provider/package/solaris_spec.rb +15 -15
  308. data/spec/unit/provider/package/yum_spec.rb +100 -100
  309. data/spec/unit/provider/package/zypper_spec.rb +10 -10
  310. data/spec/unit/provider/package_spec.rb +21 -21
  311. data/spec/unit/provider/registry_key_spec.rb +2 -2
  312. data/spec/unit/provider/remote_file/content_spec.rb +31 -31
  313. data/spec/unit/provider/remote_file/fetcher_spec.rb +8 -8
  314. data/spec/unit/provider/remote_file/ftp_spec.rb +10 -10
  315. data/spec/unit/provider/remote_file/http_spec.rb +4 -4
  316. data/spec/unit/provider/remote_file/local_file_spec.rb +2 -2
  317. data/spec/unit/provider/remote_file_spec.rb +1 -1
  318. data/spec/unit/provider/route_spec.rb +23 -23
  319. data/spec/unit/provider/script_spec.rb +5 -5
  320. data/spec/unit/provider/service/arch_service_spec.rb +41 -41
  321. data/spec/unit/provider/service/debian_service_spec.rb +23 -23
  322. data/spec/unit/provider/service/freebsd_service_spec.rb +33 -33
  323. data/spec/unit/provider/service/gentoo_service_spec.rb +16 -16
  324. data/spec/unit/provider/service/init_service_spec.rb +13 -13
  325. data/spec/unit/provider/service/insserv_service_spec.rb +4 -4
  326. data/spec/unit/provider/service/invokercd_service_spec.rb +12 -12
  327. data/spec/unit/provider/service/macosx_spec.rb +20 -20
  328. data/spec/unit/provider/service/redhat_spec.rb +15 -15
  329. data/spec/unit/provider/service/simple_service_spec.rb +9 -9
  330. data/spec/unit/provider/service/solaris_smf_service_spec.rb +13 -13
  331. data/spec/unit/provider/service/systemd_service_spec.rb +28 -28
  332. data/spec/unit/provider/service/upstart_service_spec.rb +41 -41
  333. data/spec/unit/provider/service/windows_spec.rb +37 -37
  334. data/spec/unit/provider/service_spec.rb +9 -9
  335. data/spec/unit/provider/subversion_spec.rb +36 -36
  336. data/spec/unit/provider/template/content_spec.rb +8 -8
  337. data/spec/unit/provider/template_spec.rb +1 -1
  338. data/spec/unit/provider/user/dscl_spec.rb +9 -9
  339. data/spec/unit/provider/user/pw_spec.rb +20 -20
  340. data/spec/unit/provider/user/solaris_spec.rb +5 -5
  341. data/spec/unit/provider/user/windows_spec.rb +8 -8
  342. data/spec/unit/provider/user_spec.rb +34 -34
  343. data/spec/unit/provider_spec.rb +3 -3
  344. data/spec/unit/recipe_spec.rb +79 -4
  345. data/spec/unit/registry_helper_spec.rb +2 -2
  346. data/spec/unit/resource/cron_spec.rb +2 -2
  347. data/spec/unit/resource/directory_spec.rb +5 -5
  348. data/spec/unit/resource/env_spec.rb +2 -2
  349. data/spec/unit/resource/erl_call_spec.rb +1 -1
  350. data/spec/unit/resource/file_spec.rb +8 -8
  351. data/spec/unit/resource/group_spec.rb +3 -3
  352. data/spec/unit/resource/link_spec.rb +8 -8
  353. data/spec/unit/resource/mdadm_spec.rb +3 -3
  354. data/spec/unit/resource/mount_spec.rb +3 -3
  355. data/spec/unit/resource/route_spec.rb +2 -2
  356. data/spec/unit/resource/user_spec.rb +2 -2
  357. data/spec/unit/resource/yum_package_spec.rb +2 -2
  358. data/spec/unit/resource_collection_spec.rb +1 -1
  359. data/spec/unit/resource_definition_spec.rb +2 -2
  360. data/spec/unit/resource_reporter_spec.rb +71 -16
  361. data/spec/unit/resource_spec.rb +3 -3
  362. data/spec/unit/rest/auth_credentials_spec.rb +2 -2
  363. data/spec/unit/rest_spec.rb +3 -40
  364. data/spec/unit/run_list/run_list_expansion_spec.rb +3 -3
  365. data/spec/unit/run_list_spec.rb +9 -9
  366. data/spec/unit/run_status_spec.rb +1 -1
  367. data/spec/unit/runner_spec.rb +8 -8
  368. data/spec/unit/scan_access_control_spec.rb +3 -3
  369. data/spec/unit/search/query_spec.rb +7 -7
  370. data/spec/unit/shell/model_wrapper_spec.rb +2 -2
  371. data/spec/unit/shell/shell_ext_spec.rb +15 -15
  372. data/spec/unit/shell/shell_session_spec.rb +9 -9
  373. data/spec/unit/shell_spec.rb +1 -2
  374. data/spec/unit/user_spec.rb +4 -4
  375. data/spec/unit/util/backup_spec.rb +1 -1
  376. data/spec/unit/util/selinux_spec.rb +7 -7
  377. metadata +106 -51
  378. data/distro/common/html/chef-client.8.html +0 -145
  379. data/distro/common/html/chef-expander.8.html +0 -164
  380. data/distro/common/html/chef-expanderctl.8.html +0 -146
  381. data/distro/common/html/chef-server-webui.8.html +0 -185
  382. data/distro/common/html/chef-server.8.html +0 -182
  383. data/distro/common/html/chef-shell.1.html +0 -286
  384. data/distro/common/html/chef-solo.8.html +0 -185
  385. data/distro/common/html/chef-solr.8.html +0 -165
  386. data/distro/common/html/knife-bootstrap.1.html +0 -241
  387. data/distro/common/html/knife-client.1.html +0 -219
  388. data/distro/common/html/knife-configure.1.html +0 -170
  389. data/distro/common/html/knife-cookbook-site.1.html +0 -241
  390. data/distro/common/html/knife-cookbook.1.html +0 -381
  391. data/distro/common/html/knife-data-bag.1.html +0 -235
  392. data/distro/common/html/knife-environment.1.html +0 -265
  393. data/distro/common/html/knife-exec.1.html +0 -134
  394. data/distro/common/html/knife-index.1.html +0 -125
  395. data/distro/common/html/knife-node.1.html +0 -250
  396. data/distro/common/html/knife-role.1.html +0 -200
  397. data/distro/common/html/knife-search.1.html +0 -288
  398. data/distro/common/html/knife-ssh.1.html +0 -156
  399. data/distro/common/html/knife-status.1.html +0 -128
  400. data/distro/common/html/knife-tag.1.html +0 -137
  401. data/distro/common/html/knife.1.html +0 -315
@@ -32,7 +32,7 @@ describe Chef::Mixin::ShellOut do
32
32
 
33
33
  let(:output) { StringIO.new }
34
34
  let!(:capture_log_output) { Chef::Log.logger = Logger.new(output) }
35
- let(:assume_deprecation_log_level) { Chef::Log.stub!(:level).and_return(:warn) }
35
+ let(:assume_deprecation_log_level) { Chef::Log.stub(:level).and_return(:warn) }
36
36
 
37
37
  context 'without options' do
38
38
  let(:command_args) { [ cmd ] }
@@ -39,7 +39,7 @@ describe Chef::Mixin::Template, "render_template" do
39
39
 
40
40
  describe "when running on windows" do
41
41
  before do
42
- Chef::Platform.stub!(:windows?).and_return(true)
42
+ Chef::Platform.stub(:windows?).and_return(true)
43
43
  end
44
44
 
45
45
  it "should render the templates with windows line endings" do
@@ -54,7 +54,7 @@ describe Chef::Mixin::Template, "render_template" do
54
54
 
55
55
  describe "when running on unix" do
56
56
  before do
57
- Chef::Platform.stub!(:windows?).and_return(false)
57
+ Chef::Platform.stub(:windows?).and_return(false)
58
58
  end
59
59
 
60
60
  it "should render the templates with unix line endings" do
@@ -437,7 +437,7 @@ describe Chef::Node::Attribute do
437
437
 
438
438
  it "should let you set an attribute value when another hash has an intermediate value" do
439
439
  @attributes.normal["the_ghost"] = { "exterminate" => "the future" }
440
- lambda { @attributes.normal["the_ghost"]["exterminate"]["tomorrow"] = false }.should_not raise_error(NoMethodError)
440
+ lambda { @attributes.normal["the_ghost"]["eviscerate"]["tomorrow"] = false }.should_not raise_error
441
441
  end
442
442
 
443
443
  it "should set the attribute value" do
@@ -597,7 +597,7 @@ describe Chef::Node::Attribute do
597
597
  end
598
598
 
599
599
  it "should not raise an exception if one of the hashes has a nil value on a deep lookup" do
600
- lambda { @attributes.place.keys { |k| } }.should_not raise_error(NoMethodError)
600
+ lambda { @attributes.place.keys { |k| } }.should_not raise_error
601
601
  end
602
602
  end
603
603
 
@@ -981,7 +981,7 @@ describe Chef::Node::Attribute do
981
981
 
982
982
  if RUBY_VERSION >= "1.8.7"
983
983
  it "should not raise a LocalJumpError if no block is given" do
984
- lambda { @attributes.select }.should_not raise_error(LocalJumpError)
984
+ lambda { @attributes.select }.should_not raise_error
985
985
  end
986
986
  else
987
987
  it "should raise a LocalJumpError if no block is given" do
@@ -46,12 +46,12 @@ describe Chef::Node do
46
46
  before do
47
47
  response = OpenStruct.new(:code => '404')
48
48
  exception = Net::HTTPServerException.new("404 not found", response)
49
- Chef::Node.stub!(:load).and_raise(exception)
49
+ Chef::Node.stub(:load).and_raise(exception)
50
50
  node.name("created-node")
51
51
  end
52
52
 
53
53
  it "creates a new node for find_or_create" do
54
- Chef::Node.stub!(:new).and_return(node)
54
+ Chef::Node.stub(:new).and_return(node)
55
55
  node.should_receive(:create).and_return(node)
56
56
  node = Chef::Node.find_or_create("created-node")
57
57
  node.name.should == 'created-node'
@@ -62,7 +62,7 @@ describe Chef::Node do
62
62
  describe "when the node exists on the server" do
63
63
  before do
64
64
  node.name('existing-node')
65
- Chef::Node.stub!(:load).and_return(node)
65
+ Chef::Node.stub(:load).and_return(node)
66
66
  end
67
67
 
68
68
  it "loads the node via the REST API for find_or_create" do
@@ -405,7 +405,7 @@ describe Chef::Node do
405
405
 
406
406
  it "saves non-runlist json attrs for later" do
407
407
  expansion = Chef::RunList::RunListExpansion.new('_default', [])
408
- node.run_list.stub!(:expand).and_return(expansion)
408
+ node.run_list.stub(:expand).and_return(expansion)
409
409
  node.consume_external_attrs(@ohai_data, {"foo" => "bar"})
410
410
  node.expand!
411
411
  node.normal_attrs.should == {"foo" => "bar", "tags" => []}
@@ -423,7 +423,7 @@ describe Chef::Node do
423
423
  Chef::Environment.should_receive(:load).with("rspec_env").and_return(@environment)
424
424
  @expansion = Chef::RunList::RunListExpansion.new("rspec_env", [])
425
425
  node.chef_environment("rspec_env")
426
- node.run_list.stub!(:expand).and_return(@expansion)
426
+ node.run_list.stub(:expand).and_return(@expansion)
427
427
  end
428
428
 
429
429
  it "sets the 'recipes' automatic attribute to the recipes in the expanded run_list" do
@@ -540,7 +540,7 @@ describe Chef::Node do
540
540
  @environment = Chef::Environment.new
541
541
  @environment.default_attributes = {:default => "from env", :d_env => "env only" }
542
542
  @environment.override_attributes = {:override => "from env", :o_env => "env only"}
543
- Chef::Environment.stub!(:load).and_return(@environment)
543
+ Chef::Environment.stub(:load).and_return(@environment)
544
544
  node.apply_expansion_attributes(@expansion)
545
545
  end
546
546
 
@@ -764,16 +764,16 @@ describe Chef::Node do
764
764
 
765
765
  describe "api model" do
766
766
  before(:each) do
767
- @rest = mock("Chef::REST")
768
- Chef::REST.stub!(:new).and_return(@rest)
769
- @query = mock("Chef::Search::Query")
770
- Chef::Search::Query.stub!(:new).and_return(@query)
767
+ @rest = double("Chef::REST")
768
+ Chef::REST.stub(:new).and_return(@rest)
769
+ @query = double("Chef::Search::Query")
770
+ Chef::Search::Query.stub(:new).and_return(@query)
771
771
  end
772
772
 
773
773
  describe "list" do
774
774
  describe "inflated" do
775
775
  it "should return a hash of node names and objects" do
776
- n1 = mock("Chef::Node", :name => "one")
776
+ n1 = double("Chef::Node", :name => "one")
777
777
  @query.should_receive(:search).with(:node).and_yield(n1)
778
778
  r = Chef::Node.list(true)
779
779
  r["one"].should == n1
@@ -818,7 +818,7 @@ describe Chef::Node do
818
818
 
819
819
  it "should create if it cannot update" do
820
820
  node.name("monkey")
821
- exception = mock("404 error", :code => "404")
821
+ exception = double("404 error", :code => "404")
822
822
  @rest.should_receive(:put_rest).and_raise(Net::HTTPServerException.new("foo", exception))
823
823
  @rest.should_receive(:post_rest).with("nodes", node)
824
824
  node.save
@@ -151,7 +151,7 @@ describe Chef::Platform do
151
151
 
152
152
  it "should prefer an explicit provider" do
153
153
  kitty = Chef::Resource::Cat.new("loulou")
154
- kitty.stub!(:provider).and_return(Chef::Provider::File)
154
+ kitty.stub(:provider).and_return(Chef::Provider::File)
155
155
  node = Chef::Node.new
156
156
  node.name("Intel")
157
157
  node.automatic_attrs[:platform] = "mac_os_x"
@@ -55,6 +55,14 @@ describe Chef::PolicyBuilder::ExpandNodeObject do
55
55
  expect(policy_builder).to respond_to(:expand_run_list)
56
56
  end
57
57
 
58
+ it "implements a sync_cookbooks method" do
59
+ expect(policy_builder).to respond_to(:sync_cookbooks)
60
+ end
61
+
62
+ it "implements a temporary_policy? method" do
63
+ expect(policy_builder).to respond_to(:temporary_policy?)
64
+ end
65
+
58
66
  describe "loading the node" do
59
67
 
60
68
  context "on chef-solo" do
@@ -177,6 +185,10 @@ describe Chef::PolicyBuilder::ExpandNodeObject do
177
185
  expect(node["fqdn"]).to eq(ohai_data["fqdn"])
178
186
  end
179
187
 
188
+ it "reports that a temporary_policy is not being used" do
189
+ expect(policy_builder.temporary_policy?).to be_false
190
+ end
191
+
180
192
  describe "when the given run list is not in expanded form" do
181
193
 
182
194
  # NOTE: for chef-client, the behavior is always to expand the run list,
@@ -235,6 +247,10 @@ describe Chef::PolicyBuilder::ExpandNodeObject do
235
247
  expect(policy_builder.original_runlist).to eq(primary_runlist)
236
248
  end
237
249
 
250
+ it "reports that a temporary policy is being used" do
251
+ expect(policy_builder.temporary_policy?).to be_true
252
+ end
253
+
238
254
  end
239
255
 
240
256
  context "when no environment is specified" do
@@ -106,6 +106,10 @@ describe Chef::PolicyBuilder::Policyfile do
106
106
  Chef::PolicyBuilder::Policyfile.new(node_name, ohai_data, json_attribs, override_runlist, events)
107
107
  end
108
108
 
109
+ it "always gives `false` for #temporary_policy?" do
110
+ expect(initialize_pb.temporary_policy?).to be_false
111
+ end
112
+
109
113
  context "chef-solo" do
110
114
  before { Chef::Config[:solo] = true }
111
115
 
@@ -25,8 +25,8 @@ describe Chef::Provider::Breakpoint do
25
25
  @node = Chef::Node.new
26
26
  @events = Chef::EventDispatch::Dispatcher.new
27
27
  @run_context = Chef::RunContext.new(@node, {}, @events)
28
- @collection = mock("resource collection")
29
- @run_context.stub!(:resource_collection).and_return(@collection)
28
+ @collection = double("resource collection")
29
+ @run_context.stub(:resource_collection).and_return(@collection)
30
30
  @provider = Chef::Provider::Breakpoint.new(@resource, @run_context)
31
31
  end
32
32
 
@@ -35,18 +35,18 @@ describe Chef::Provider::Breakpoint do
35
35
  end
36
36
 
37
37
  it "gets the iterator from @collection and pauses it" do
38
- Shell.stub!(:running?).and_return(true)
39
- @iterator = mock("stepable_iterator")
40
- @collection.stub!(:iterator).and_return(@iterator)
38
+ Shell.stub(:running?).and_return(true)
39
+ @iterator = double("stepable_iterator")
40
+ @collection.stub(:iterator).and_return(@iterator)
41
41
  @iterator.should_receive(:pause)
42
42
  @provider.action_break
43
43
  @resource.should be_updated
44
44
  end
45
45
 
46
46
  it "doesn't pause the iterator if chef-shell isn't running" do
47
- Shell.stub!(:running?).and_return(false)
48
- @iterator = mock("stepable_iterator")
49
- @collection.stub!(:iterator).and_return(@iterator)
47
+ Shell.stub(:running?).and_return(false)
48
+ @iterator = double("stepable_iterator")
49
+ @collection.stub(:iterator).and_return(@iterator)
50
50
  @iterator.should_not_receive(:pause)
51
51
  @provider.action_break
52
52
  end
@@ -20,15 +20,15 @@ require 'spec_helper'
20
20
 
21
21
  describe Chef::Provider::CookbookFile::Content do
22
22
 
23
- let(:new_resource) { mock('Chef::Resource::CookbookFile (new)', :cookbook_name => 'apache2', :cookbook => 'apache2') }
23
+ let(:new_resource) { double('Chef::Resource::CookbookFile (new)', :cookbook_name => 'apache2', :cookbook => 'apache2') }
24
24
  let(:content) do
25
- @run_context = mock('Chef::RunContext')
26
- @current_resource = mock('Chef::Resource::CookbookFile (current)')
25
+ @run_context = double('Chef::RunContext')
26
+ @current_resource = double('Chef::Resource::CookbookFile (current)')
27
27
  Chef::Provider::CookbookFile::Content.new(new_resource, @current_resource, @run_context)
28
28
  end
29
29
 
30
30
  it "prefers the explicit cookbook name on the resource to the implicit one" do
31
- new_resource.stub!(:cookbook).and_return('nginx')
31
+ new_resource.stub(:cookbook).and_return('nginx')
32
32
  content.send(:resource_cookbook).should == 'nginx'
33
33
  end
34
34
 
@@ -49,7 +49,7 @@ describe Chef::Provider::CookbookFile do
49
49
  end
50
50
 
51
51
  let(:content) do
52
- content = mock('Chef::Provider::CookbookFile::Content')
52
+ content = double('Chef::Provider::CookbookFile::Content')
53
53
  end
54
54
 
55
55
  it_behaves_like Chef::Provider::File
@@ -39,7 +39,7 @@ describe Chef::Provider::Cron::Unix do
39
39
 
40
40
  describe "read_crontab" do
41
41
  before :each do
42
- @status = mock("Status", :exitstatus => 0)
42
+ @status = double("Status", :exitstatus => 0)
43
43
  @stdout = StringIO.new(<<-CRONTAB)
44
44
  0 2 * * * /some/other/command
45
45
 
@@ -48,7 +48,7 @@ describe Chef::Provider::Cron::Unix do
48
48
 
49
49
  # Another comment
50
50
  CRONTAB
51
- @provider.stub!(:popen4).and_yield(1234, StringIO.new, @stdout, StringIO.new).and_return(@status)
51
+ @provider.stub(:popen4).and_yield(1234, StringIO.new, @stdout, StringIO.new).and_return(@status)
52
52
  end
53
53
 
54
54
  it "should call crontab -l with the user" do
@@ -69,14 +69,14 @@ CRONTAB
69
69
  end
70
70
 
71
71
  it "should return nil if the user has no crontab" do
72
- status = mock("Status", :exitstatus => 1)
73
- @provider.stub!(:popen4).and_return(status)
72
+ status = double("Status", :exitstatus => 1)
73
+ @provider.stub(:popen4).and_return(status)
74
74
  @provider.send(:read_crontab).should == nil
75
75
  end
76
76
 
77
77
  it "should raise an exception if another error occurs" do
78
- status = mock("Status", :exitstatus => 2)
79
- @provider.stub!(:popen4).and_return(status)
78
+ status = double("Status", :exitstatus => 2)
79
+ @provider.stub(:popen4).and_return(status)
80
80
  lambda do
81
81
  @provider.send(:read_crontab)
82
82
  end.should raise_error(Chef::Exceptions::Cron, "Error determining state of #{@new_resource.name}, exit: 2")
@@ -85,10 +85,10 @@ CRONTAB
85
85
 
86
86
  describe "write_crontab" do
87
87
  before :each do
88
- @status = mock("Status", :exitstatus => 0)
89
- @provider.stub!(:run_command_and_return_stdout_stderr).and_return(@status, String.new, String.new)
90
- @tempfile = mock("foo", :path => "/tmp/foo", :close => true)
91
- Tempfile.stub!(:new).and_return(@tempfile)
88
+ @status = double("Status", :exitstatus => 0)
89
+ @provider.stub(:run_command_and_return_stdout_stderr).and_return(@status, String.new, String.new)
90
+ @tempfile = double("foo", :path => "/tmp/foo", :close => true)
91
+ Tempfile.stub(:new).and_return(@tempfile)
92
92
  @tempfile.should_receive(:flush)
93
93
  @tempfile.should_receive(:chmod).with(420)
94
94
  @tempfile.should_receive(:close!)
@@ -112,7 +112,7 @@ CRONTAB
112
112
 
113
113
  it "should raise an exception if the command returns non-zero" do
114
114
  @tempfile.should_receive(:<<).with("Foo")
115
- @status.stub!(:exitstatus).and_return(1)
115
+ @status.stub(:exitstatus).and_return(1)
116
116
  lambda do
117
117
  @provider.send(:write_crontab, "Foo")
118
118
  end.should raise_error(Chef::Exceptions::Cron, /Error updating state of #{@new_resource.name}, exit: 1/)
@@ -34,7 +34,7 @@ describe Chef::Provider::Cron do
34
34
  describe "when examining the current system state" do
35
35
  context "with no crontab for the user" do
36
36
  before :each do
37
- @provider.stub!(:read_crontab).and_return(nil)
37
+ @provider.stub(:read_crontab).and_return(nil)
38
38
  end
39
39
 
40
40
  it "should set cron_empty" do
@@ -51,7 +51,7 @@ describe Chef::Provider::Cron do
51
51
 
52
52
  context "with no matching entry in the user's crontab" do
53
53
  before :each do
54
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
54
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
55
55
  0 2 * * * /some/other/command
56
56
 
57
57
  # Chef Name: something else
@@ -73,7 +73,7 @@ CRONTAB
73
73
  end
74
74
 
75
75
  it "should not fail if there's an existing cron with a numerical argument" do
76
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
76
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
77
77
  # Chef Name: foo[bar] (baz)
78
78
  21 */4 * * * some_prog 1234567
79
79
  CRONTAB
@@ -85,7 +85,7 @@ CRONTAB
85
85
 
86
86
  context "with a matching entry in the user's crontab" do
87
87
  before :each do
88
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
88
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
89
89
  0 2 * * * /some/other/command
90
90
 
91
91
  # Chef Name: cronhole some stuff
@@ -114,7 +114,7 @@ CRONTAB
114
114
  end
115
115
 
116
116
  it "should pull env vars out" do
117
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
117
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
118
118
  0 2 * * * /some/other/command
119
119
 
120
120
  # Chef Name: cronhole some stuff
@@ -142,7 +142,7 @@ CRONTAB
142
142
  end
143
143
 
144
144
  it "should parse and load generic and standard environment variables from cron entry" do
145
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
145
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
146
146
  # Chef Name: cronhole some stuff
147
147
  MAILTO=warn@example.com
148
148
  TEST=lol
@@ -156,7 +156,7 @@ CRONTAB
156
156
  end
157
157
 
158
158
  it "should not break with variabels that match the cron resource internals" do
159
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
159
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
160
160
  # Chef Name: cronhole some stuff
161
161
  MINUTE=40
162
162
  HOUR=midnight
@@ -179,7 +179,7 @@ CRONTAB
179
179
 
180
180
  context "with a matching entry in the user's crontab using month names and weekday names (#CHEF-3178)" do
181
181
  before :each do
182
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
182
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
183
183
  0 2 * * * /some/other/command
184
184
 
185
185
  # Chef Name: cronhole some stuff
@@ -215,7 +215,7 @@ CRONTAB
215
215
 
216
216
  context "with a matching entry without a crontab line" do
217
217
  it "should set cron_exists and leave current_resource values at defaults" do
218
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
218
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
219
219
  0 2 * * * /some/other/command
220
220
 
221
221
  # Chef Name: cronhole some stuff
@@ -231,7 +231,7 @@ CRONTAB
231
231
  end
232
232
 
233
233
  it "should not pick up a commented out crontab line" do
234
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
234
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
235
235
  0 2 * * * /some/other/command
236
236
 
237
237
  # Chef Name: cronhole some stuff
@@ -248,7 +248,7 @@ CRONTAB
248
248
  end
249
249
 
250
250
  it "should not pick up a later crontab entry" do
251
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
251
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
252
252
  0 2 * * * /some/other/command
253
253
 
254
254
  # Chef Name: cronhole some stuff
@@ -304,8 +304,8 @@ CRONTAB
304
304
 
305
305
  describe "action_create" do
306
306
  before :each do
307
- @provider.stub!(:write_crontab)
308
- @provider.stub!(:read_crontab).and_return(nil)
307
+ @provider.stub(:write_crontab)
308
+ @provider.stub(:read_crontab).and_return(nil)
309
309
  end
310
310
 
311
311
  context "when there is no existing crontab" do
@@ -354,7 +354,7 @@ TEST=LOL
354
354
  context "when there is a crontab with no matching section" do
355
355
  before :each do
356
356
  @provider.cron_exists = false
357
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
357
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
358
358
  0 2 * * * /some/other/command
359
359
 
360
360
  # Chef Name: something else
@@ -416,8 +416,8 @@ TEST=LOL
416
416
  context "when there is a crontab with a matching but different section" do
417
417
  before :each do
418
418
  @provider.cron_exists = true
419
- @provider.stub!(:cron_different?).and_return(true)
420
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
419
+ @provider.stub(:cron_different?).and_return(true)
420
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
421
421
  0 2 * * * /some/other/command
422
422
 
423
423
  # Chef Name: cronhole some stuff
@@ -481,11 +481,11 @@ TEST=LOL
481
481
  context "when there is a crontab with a matching section with no crontab line in it" do
482
482
  before :each do
483
483
  @provider.cron_exists = true
484
- @provider.stub!(:cron_different?).and_return(true)
484
+ @provider.stub(:cron_different?).and_return(true)
485
485
  end
486
486
 
487
487
  it "should add the crontab to the entry" do
488
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
488
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
489
489
  0 2 * * * /some/other/command
490
490
 
491
491
  # Chef Name: cronhole some stuff
@@ -500,7 +500,7 @@ TEST=LOL
500
500
  end
501
501
 
502
502
  it "should not blat any following entries" do
503
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
503
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
504
504
  0 2 * * * /some/other/command
505
505
 
506
506
  # Chef Name: cronhole some stuff
@@ -525,7 +525,7 @@ TEST=LOL
525
525
  end
526
526
 
527
527
  it "should handle env vars with no crontab" do
528
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
528
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
529
529
  0 2 * * * /some/other/command
530
530
 
531
531
  # Chef Name: cronhole some stuff
@@ -565,8 +565,8 @@ HOME=/home/foo
565
565
  context "when there is a crontab with a matching and identical section" do
566
566
  before :each do
567
567
  @provider.cron_exists = true
568
- @provider.stub!(:cron_different?).and_return(false)
569
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
568
+ @provider.stub(:cron_different?).and_return(false)
569
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
570
570
  0 2 * * * /some/other/command
571
571
 
572
572
  # Chef Name: cronhole some stuff
@@ -596,8 +596,8 @@ CRONTAB
596
596
 
597
597
  describe "action_delete" do
598
598
  before :each do
599
- @provider.stub!(:write_crontab)
600
- @provider.stub!(:read_crontab).and_return(nil)
599
+ @provider.stub(:write_crontab)
600
+ @provider.stub(:read_crontab).and_return(nil)
601
601
  end
602
602
 
603
603
  context "when the user's crontab has no matching section" do
@@ -620,7 +620,7 @@ CRONTAB
620
620
  context "when the user has a crontab with a matching section" do
621
621
  before :each do
622
622
  @provider.cron_exists = true
623
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
623
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
624
624
  0 2 * * * /some/other/command
625
625
 
626
626
  # Chef Name: cronhole some stuff
@@ -645,7 +645,7 @@ CRONTAB
645
645
  end
646
646
 
647
647
  it "should remove any env vars with the entry" do
648
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
648
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
649
649
  0 2 * * * /some/other/command
650
650
 
651
651
  # Chef Name: cronhole some stuff
@@ -685,7 +685,7 @@ FOO=test
685
685
  end
686
686
 
687
687
  it "should remove the section" do
688
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
688
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
689
689
  0 2 * * * /some/other/command
690
690
 
691
691
  # Chef Name: cronhole some stuff
@@ -698,7 +698,7 @@ FOO=test
698
698
  end
699
699
 
700
700
  it "should not blat following sections" do
701
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
701
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
702
702
  0 2 * * * /some/other/command
703
703
 
704
704
  # Chef Name: cronhole some stuff
@@ -721,7 +721,7 @@ FOO=test
721
721
  end
722
722
 
723
723
  it "should remove any envvars with the section" do
724
- @provider.stub!(:read_crontab).and_return(<<-CRONTAB)
724
+ @provider.stub(:read_crontab).and_return(<<-CRONTAB)
725
725
  0 2 * * * /some/other/command
726
726
 
727
727
  # Chef Name: cronhole some stuff
@@ -748,7 +748,7 @@ MAILTO=foo@example.com
748
748
 
749
749
  describe "read_crontab" do
750
750
  before :each do
751
- @status = mock("Status", :exitstatus => 0)
751
+ @status = double("Status", :exitstatus => 0)
752
752
  @stdout = StringIO.new(<<-CRONTAB)
753
753
  0 2 * * * /some/other/command
754
754
 
@@ -757,7 +757,7 @@ MAILTO=foo@example.com
757
757
 
758
758
  # Another comment
759
759
  CRONTAB
760
- @provider.stub!(:popen4).and_yield(1234, StringIO.new, @stdout, StringIO.new).and_return(@status)
760
+ @provider.stub(:popen4).and_yield(1234, StringIO.new, @stdout, StringIO.new).and_return(@status)
761
761
  end
762
762
 
763
763
  it "should call crontab -l with the user" do
@@ -778,14 +778,14 @@ MAILTO=foo@example.com
778
778
  end
779
779
 
780
780
  it "should return nil if the user has no crontab" do
781
- status = mock("Status", :exitstatus => 1)
782
- @provider.stub!(:popen4).and_return(status)
781
+ status = double("Status", :exitstatus => 1)
782
+ @provider.stub(:popen4).and_return(status)
783
783
  @provider.send(:read_crontab).should == nil
784
784
  end
785
785
 
786
786
  it "should raise an exception if another error occurs" do
787
- status = mock("Status", :exitstatus => 2)
788
- @provider.stub!(:popen4).and_return(status)
787
+ status = double("Status", :exitstatus => 2)
788
+ @provider.stub(:popen4).and_return(status)
789
789
  lambda do
790
790
  @provider.send(:read_crontab)
791
791
  end.should raise_error(Chef::Exceptions::Cron, "Error determining state of #{@new_resource.name}, exit: 2")
@@ -794,9 +794,9 @@ MAILTO=foo@example.com
794
794
 
795
795
  describe "write_crontab" do
796
796
  before :each do
797
- @status = mock("Status", :exitstatus => 0)
797
+ @status = double("Status", :exitstatus => 0)
798
798
  @stdin = StringIO.new
799
- @provider.stub!(:popen4).and_yield(1234, @stdin, StringIO.new, StringIO.new).and_return(@status)
799
+ @provider.stub(:popen4).and_yield(1234, @stdin, StringIO.new, StringIO.new).and_return(@status)
800
800
  end
801
801
 
802
802
  it "should call crontab for the user" do
@@ -810,7 +810,7 @@ MAILTO=foo@example.com
810
810
  end
811
811
 
812
812
  it "should raise an exception if the command returns non-zero" do
813
- @status.stub!(:exitstatus).and_return(1)
813
+ @status.stub(:exitstatus).and_return(1)
814
814
  lambda do
815
815
  @provider.send(:write_crontab, "Foo")
816
816
  end.should raise_error(Chef::Exceptions::Cron, "Error updating state of #{@new_resource.name}, exit: 1")
@@ -822,8 +822,8 @@ MAILTO=foo@example.com
822
822
  raise Errno::EPIPE, "Test"
823
823
  end
824
824
  end
825
- @status.stub!(:exitstatus).and_return(1)
826
- @provider.stub!(:popen4).and_yield(1234, WriteErrPipe.new, StringIO.new, StringIO.new).and_return(@status)
825
+ @status.stub(:exitstatus).and_return(1)
826
+ @provider.stub(:popen4).and_yield(1234, WriteErrPipe.new, StringIO.new, StringIO.new).and_return(@status)
827
827
 
828
828
  Chef::Log.should_receive(:debug).with("Broken pipe - Test")
829
829