chef 14.2.0-universal-mingw32 → 14.3.37-universal-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (845) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +13 -12
  3. data/Gemfile +15 -0
  4. data/README.md +36 -40
  5. data/Rakefile +1 -1
  6. data/VERSION +1 -1
  7. data/bin/chef-apply +0 -1
  8. data/bin/chef-client +1 -2
  9. data/bin/chef-service-manager +7 -8
  10. data/bin/chef-shell +1 -6
  11. data/bin/chef-solo +1 -2
  12. data/bin/chef-windows-service +1 -2
  13. data/bin/knife +1 -2
  14. data/chef-universal-mingw32.gemspec +2 -2
  15. data/chef.gemspec +1 -1
  16. data/distro/ruby_bin_folder/Chef.PowerShell.Wrapper.dll +0 -0
  17. data/distro/ruby_bin_folder/Chef.PowerShell.dll +0 -0
  18. data/distro/{powershell/chef → ruby_bin_folder}/Newtonsoft.Json.dll +0 -0
  19. data/ext/win32-eventlog/Rakefile +14 -14
  20. data/lib/chef/api_client.rb +10 -10
  21. data/lib/chef/api_client/registration.rb +5 -5
  22. data/lib/chef/api_client_v1.rb +15 -15
  23. data/lib/chef/application.rb +1 -1
  24. data/lib/chef/application/apply.rb +56 -56
  25. data/lib/chef/application/client.rb +169 -170
  26. data/lib/chef/application/exit_code.rb +2 -2
  27. data/lib/chef/application/knife.rb +79 -78
  28. data/lib/chef/application/solo.rb +120 -120
  29. data/lib/chef/application/windows_service.rb +21 -21
  30. data/lib/chef/application/windows_service_manager.rb +39 -39
  31. data/lib/chef/audit/audit_event_proxy.rb +6 -6
  32. data/lib/chef/audit/audit_reporter.rb +2 -2
  33. data/lib/chef/audit/control_group_data.rb +15 -15
  34. data/lib/chef/audit/runner.rb +1 -1
  35. data/lib/chef/chef_class.rb +16 -8
  36. data/lib/chef/chef_fs/chef_fs_data_store.rb +8 -8
  37. data/lib/chef/chef_fs/config.rb +2 -2
  38. data/lib/chef/chef_fs/file_system/chef_server/acl_entry.rb +1 -1
  39. data/lib/chef/chef_fs/file_system/chef_server/acls_dir.rb +1 -1
  40. data/lib/chef/chef_fs/file_system/chef_server/chef_server_root_dir.rb +2 -2
  41. data/lib/chef/chef_fs/file_system/chef_server/cookbooks_dir.rb +1 -1
  42. data/lib/chef/chef_fs/file_system/chef_server/organization_invites_entry.rb +1 -1
  43. data/lib/chef/chef_fs/file_system/chef_server/organization_members_entry.rb +1 -1
  44. data/lib/chef/chef_fs/file_system/chef_server/rest_list_entry.rb +1 -1
  45. data/lib/chef/chef_fs/file_system/chef_server/versioned_cookbooks_dir.rb +1 -1
  46. data/lib/chef/chef_fs/file_system/repository/acls_dir.rb +1 -1
  47. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_dir.rb +1 -1
  48. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_cookbook_entry.rb +3 -3
  49. data/lib/chef/chef_fs/file_system/repository/chef_repository_file_system_root_dir.rb +2 -2
  50. data/lib/chef/chef_fs/file_system/repository/directory.rb +3 -3
  51. data/lib/chef/chef_fs/file_system/repository/file_system_entry.rb +3 -3
  52. data/lib/chef/chef_fs/knife.rb +6 -6
  53. data/lib/chef/chef_fs/parallelizer.rb +1 -1
  54. data/lib/chef/client.rb +3 -0
  55. data/lib/chef/cookbook/cookbook_version_loader.rb +1 -1
  56. data/lib/chef/cookbook/file_system_file_vendor.rb +1 -1
  57. data/lib/chef/cookbook/manifest_v0.rb +1 -1
  58. data/lib/chef/cookbook/metadata.rb +61 -61
  59. data/lib/chef/cookbook/remote_file_vendor.rb +1 -1
  60. data/lib/chef/cookbook/synchronizer.rb +2 -2
  61. data/lib/chef/cookbook_loader.rb +3 -3
  62. data/lib/chef/cookbook_manifest.rb +5 -5
  63. data/lib/chef/cookbook_site_streaming_uploader.rb +5 -5
  64. data/lib/chef/cookbook_uploader.rb +2 -2
  65. data/lib/chef/cookbook_version.rb +2 -2
  66. data/lib/chef/data_bag.rb +3 -3
  67. data/lib/chef/data_bag_item.rb +2 -2
  68. data/lib/chef/deprecated.rb +110 -176
  69. data/lib/chef/dsl/audit.rb +1 -1
  70. data/lib/chef/dsl/definitions.rb +1 -1
  71. data/lib/chef/dsl/platform_introspection.rb +5 -0
  72. data/lib/chef/dsl/reboot_pending.rb +1 -1
  73. data/lib/chef/encrypted_data_bag_item.rb +2 -2
  74. data/lib/chef/encrypted_data_bag_item/check_encrypted.rb +1 -1
  75. data/lib/chef/encrypted_data_bag_item/encryptor.rb +1 -1
  76. data/lib/chef/environment.rb +10 -10
  77. data/lib/chef/event_loggers/windows_eventlog.rb +21 -21
  78. data/lib/chef/exceptions.rb +3 -3
  79. data/lib/chef/file_cache.rb +18 -16
  80. data/lib/chef/formatters/base.rb +9 -10
  81. data/lib/chef/formatters/doc.rb +12 -16
  82. data/lib/chef/formatters/error_inspectors/api_error_formatting.rb +51 -51
  83. data/lib/chef/formatters/error_inspectors/cookbook_resolve_error_inspector.rb +10 -10
  84. data/lib/chef/formatters/error_inspectors/node_load_error_inspector.rb +13 -13
  85. data/lib/chef/formatters/error_inspectors/registration_error_inspector.rb +39 -39
  86. data/lib/chef/formatters/error_inspectors/resource_failure_inspector.rb +1 -1
  87. data/lib/chef/formatters/error_inspectors/run_list_expansion_error_inspector.rb +16 -16
  88. data/lib/chef/formatters/indentable_output_stream.rb +4 -4
  89. data/lib/chef/guard_interpreter/resource_guard_interpreter.rb +3 -3
  90. data/lib/chef/handler/json_file.rb +1 -1
  91. data/lib/chef/http/auth_credentials.rb +2 -2
  92. data/lib/chef/http/authenticator.rb +6 -6
  93. data/lib/chef/http/cookie_manager.rb +1 -1
  94. data/lib/chef/http/http_request.rb +3 -3
  95. data/lib/chef/http/json_input.rb +1 -1
  96. data/lib/chef/http/json_to_model_output.rb +1 -1
  97. data/lib/chef/http/socketless_chef_zero_client.rb +1 -1
  98. data/lib/chef/json_compat.rb +1 -1
  99. data/lib/chef/key.rb +9 -9
  100. data/lib/chef/knife.rb +5 -5
  101. data/lib/chef/knife/bootstrap.rb +116 -116
  102. data/lib/chef/knife/bootstrap/client_builder.rb +1 -1
  103. data/lib/chef/knife/client_bulk_delete.rb +3 -3
  104. data/lib/chef/knife/client_create.rb +17 -17
  105. data/lib/chef/knife/client_delete.rb +3 -3
  106. data/lib/chef/knife/client_list.rb +3 -3
  107. data/lib/chef/knife/client_reregister.rb +3 -3
  108. data/lib/chef/knife/config_get.rb +126 -0
  109. data/lib/chef/knife/configure.rb +25 -25
  110. data/lib/chef/knife/cookbook_bulk_delete.rb +1 -1
  111. data/lib/chef/knife/cookbook_delete.rb +2 -2
  112. data/lib/chef/knife/cookbook_download.rb +11 -11
  113. data/lib/chef/knife/cookbook_list.rb +6 -6
  114. data/lib/chef/knife/cookbook_metadata.rb +7 -8
  115. data/lib/chef/knife/cookbook_metadata_from_file.rb +0 -1
  116. data/lib/chef/knife/cookbook_show.rb +16 -16
  117. data/lib/chef/knife/cookbook_site_download.rb +11 -10
  118. data/lib/chef/knife/cookbook_site_install.rb +24 -24
  119. data/lib/chef/knife/cookbook_site_list.rb +8 -8
  120. data/lib/chef/knife/cookbook_site_search.rb +6 -5
  121. data/lib/chef/knife/cookbook_site_share.rb +20 -19
  122. data/lib/chef/knife/cookbook_site_show.rb +6 -5
  123. data/lib/chef/knife/cookbook_site_unshare.rb +5 -5
  124. data/lib/chef/knife/cookbook_test.rb +8 -8
  125. data/lib/chef/knife/cookbook_upload.rb +32 -32
  126. data/lib/chef/knife/core/bootstrap_context.rb +7 -7
  127. data/lib/chef/knife/core/cookbook_scm_repo.rb +1 -1
  128. data/lib/chef/knife/core/generic_presenter.rb +7 -7
  129. data/lib/chef/knife/core/hashed_command_loader.rb +1 -1
  130. data/lib/chef/knife/core/node_presenter.rb +37 -37
  131. data/lib/chef/knife/core/status_presenter.rb +11 -11
  132. data/lib/chef/knife/data_bag_from_file.rb +4 -4
  133. data/lib/chef/knife/data_bag_list.rb +3 -3
  134. data/lib/chef/knife/data_bag_secret_options.rb +13 -13
  135. data/lib/chef/knife/delete.rb +29 -13
  136. data/lib/chef/knife/deps.rb +25 -9
  137. data/lib/chef/knife/diff.rb +30 -14
  138. data/lib/chef/knife/download.rb +39 -23
  139. data/lib/chef/knife/edit.rb +19 -3
  140. data/lib/chef/knife/environment_compare.rb +8 -8
  141. data/lib/chef/knife/environment_create.rb +3 -3
  142. data/lib/chef/knife/environment_from_file.rb +5 -3
  143. data/lib/chef/knife/environment_list.rb +3 -3
  144. data/lib/chef/knife/exec.rb +7 -7
  145. data/lib/chef/knife/key_create.rb +4 -4
  146. data/lib/chef/knife/key_create_base.rb +12 -12
  147. data/lib/chef/knife/key_edit.rb +5 -5
  148. data/lib/chef/knife/key_edit_base.rb +15 -15
  149. data/lib/chef/knife/key_list.rb +3 -3
  150. data/lib/chef/knife/key_list_base.rb +9 -9
  151. data/lib/chef/knife/list.rb +35 -19
  152. data/lib/chef/knife/node_edit.rb +4 -4
  153. data/lib/chef/knife/node_list.rb +3 -3
  154. data/lib/chef/knife/node_run_list_add.rb +6 -6
  155. data/lib/chef/knife/node_show.rb +6 -6
  156. data/lib/chef/knife/osc_user_create.rb +13 -13
  157. data/lib/chef/knife/osc_user_list.rb +3 -3
  158. data/lib/chef/knife/osc_user_reregister.rb +3 -3
  159. data/lib/chef/knife/raw.rb +32 -16
  160. data/lib/chef/knife/role_create.rb +3 -3
  161. data/lib/chef/knife/role_env_run_list_add.rb +4 -3
  162. data/lib/chef/knife/role_env_run_list_remove.rb +2 -2
  163. data/lib/chef/knife/role_env_run_list_replace.rb +1 -0
  164. data/lib/chef/knife/role_list.rb +3 -3
  165. data/lib/chef/knife/role_run_list_add.rb +4 -3
  166. data/lib/chef/knife/role_run_list_remove.rb +2 -2
  167. data/lib/chef/knife/role_run_list_replace.rb +1 -0
  168. data/lib/chef/knife/search.rb +23 -23
  169. data/lib/chef/knife/serve.rb +22 -6
  170. data/lib/chef/knife/show.rb +19 -3
  171. data/lib/chef/knife/ssh.rb +68 -68
  172. data/lib/chef/knife/ssl_check.rb +31 -31
  173. data/lib/chef/knife/ssl_fetch.rb +5 -5
  174. data/lib/chef/knife/status.rb +11 -11
  175. data/lib/chef/knife/upload.rb +41 -25
  176. data/lib/chef/knife/user_create.rb +28 -28
  177. data/lib/chef/knife/user_delete.rb +9 -9
  178. data/lib/chef/knife/user_edit.rb +9 -9
  179. data/lib/chef/knife/user_list.rb +3 -3
  180. data/lib/chef/knife/user_reregister.rb +12 -12
  181. data/lib/chef/knife/user_show.rb +9 -9
  182. data/lib/chef/knife/xargs.rb +52 -36
  183. data/lib/chef/log.rb +10 -8
  184. data/lib/chef/log/winevt.rb +21 -21
  185. data/lib/chef/mixin/api_version_request_handling.rb +6 -6
  186. data/lib/chef/mixin/deep_merge.rb +1 -1
  187. data/lib/chef/mixin/deprecation.rb +2 -2
  188. data/lib/chef/mixin/params_validate.rb +9 -9
  189. data/lib/chef/mixin/properties.rb +2 -2
  190. data/lib/chef/mixin/securable.rb +11 -11
  191. data/lib/chef/mixin/shell_out.rb +138 -82
  192. data/lib/chef/mixin/wide_string.rb +5 -23
  193. data/lib/chef/mixin/windows_env_helper.rb +1 -1
  194. data/lib/chef/mixin/xml_escape.rb +3 -3
  195. data/lib/chef/node.rb +15 -15
  196. data/lib/chef/node/attribute.rb +6 -6
  197. data/lib/chef/node/attribute_collections.rb +2 -2
  198. data/lib/chef/node/mixin/deep_merge_cache.rb +1 -1
  199. data/lib/chef/node/mixin/immutablize_array.rb +2 -2
  200. data/lib/chef/node/mixin/immutablize_hash.rb +2 -2
  201. data/lib/chef/node_map.rb +77 -3
  202. data/lib/chef/org.rb +8 -8
  203. data/lib/chef/policy_builder/expand_node_object.rb +1 -1
  204. data/lib/chef/powershell.rb +9 -7
  205. data/lib/chef/property.rb +14 -14
  206. data/lib/chef/provider/apt_update.rb +2 -2
  207. data/lib/chef/provider/cron.rb +3 -3
  208. data/lib/chef/provider/cron/unix.rb +2 -2
  209. data/lib/chef/provider/dsc_resource.rb +1 -1
  210. data/lib/chef/provider/dsc_script.rb +8 -8
  211. data/lib/chef/provider/execute.rb +1 -1
  212. data/lib/chef/provider/group/aix.rb +6 -6
  213. data/lib/chef/provider/group/dscl.rb +1 -1
  214. data/lib/chef/provider/group/gpasswd.rb +4 -4
  215. data/lib/chef/provider/group/groupadd.rb +3 -3
  216. data/lib/chef/provider/group/groupmod.rb +6 -6
  217. data/lib/chef/provider/group/pw.rb +4 -4
  218. data/lib/chef/provider/group/suse.rb +2 -2
  219. data/lib/chef/provider/group/usermod.rb +1 -1
  220. data/lib/chef/provider/http_request.rb +6 -6
  221. data/lib/chef/provider/ifconfig.rb +4 -4
  222. data/lib/chef/provider/ifconfig/aix.rb +1 -1
  223. data/lib/chef/provider/mdadm.rb +1 -1
  224. data/lib/chef/provider/mount/mount.rb +1 -1
  225. data/lib/chef/provider/mount/windows.rb +7 -7
  226. data/lib/chef/provider/package.rb +3 -18
  227. data/lib/chef/provider/package/apt.rb +4 -4
  228. data/lib/chef/provider/package/bff.rb +9 -9
  229. data/lib/chef/provider/package/chocolatey.rb +7 -7
  230. data/lib/chef/provider/package/dnf.rb +2 -2
  231. data/lib/chef/provider/package/dpkg.rb +6 -6
  232. data/lib/chef/provider/package/freebsd/base.rb +2 -2
  233. data/lib/chef/provider/package/freebsd/pkg.rb +6 -6
  234. data/lib/chef/provider/package/freebsd/pkgng.rb +5 -5
  235. data/lib/chef/provider/package/freebsd/port.rb +4 -4
  236. data/lib/chef/provider/package/homebrew.rb +1 -1
  237. data/lib/chef/provider/package/ips.rb +6 -6
  238. data/lib/chef/provider/package/macports.rb +6 -6
  239. data/lib/chef/provider/package/msu.rb +1 -1
  240. data/lib/chef/provider/package/openbsd.rb +5 -5
  241. data/lib/chef/provider/package/pacman.rb +4 -4
  242. data/lib/chef/provider/package/paludis.rb +3 -3
  243. data/lib/chef/provider/package/portage.rb +5 -5
  244. data/lib/chef/provider/package/powershell.rb +6 -2
  245. data/lib/chef/provider/package/rpm.rb +10 -10
  246. data/lib/chef/provider/package/rubygems.rb +4 -4
  247. data/lib/chef/provider/package/smartos.rb +4 -4
  248. data/lib/chef/provider/package/solaris.rb +9 -9
  249. data/lib/chef/provider/package/windows.rb +4 -3
  250. data/lib/chef/provider/package/yum.rb +2 -2
  251. data/lib/chef/provider/package/zypper.rb +4 -4
  252. data/lib/chef/provider/powershell_script.rb +73 -73
  253. data/lib/chef/provider/reboot.rb +4 -4
  254. data/lib/chef/provider/registry_key.rb +4 -4
  255. data/lib/chef/provider/remote_file/cache_control_data.rb +2 -2
  256. data/lib/chef/provider/remote_file/sftp.rb +1 -1
  257. data/lib/chef/provider/resource_update.rb +1 -1
  258. data/lib/chef/provider/route.rb +2 -2
  259. data/lib/chef/provider/service/openbsd.rb +3 -3
  260. data/lib/chef/provider/service/redhat.rb +1 -1
  261. data/lib/chef/provider/service/simple.rb +1 -0
  262. data/lib/chef/provider/service/solaris.rb +1 -1
  263. data/lib/chef/provider/service/systemd.rb +2 -2
  264. data/lib/chef/provider/service/windows.rb +17 -17
  265. data/lib/chef/provider/subversion.rb +3 -3
  266. data/lib/chef/provider/systemd_unit.rb +2 -2
  267. data/lib/chef/provider/template/content.rb +1 -1
  268. data/lib/chef/provider/user/aix.rb +6 -6
  269. data/lib/chef/provider/user/dscl.rb +6 -6
  270. data/lib/chef/provider/user/linux.rb +6 -6
  271. data/lib/chef/provider/user/pw.rb +5 -5
  272. data/lib/chef/provider/user/solaris.rb +6 -6
  273. data/lib/chef/provider/user/useradd.rb +7 -7
  274. data/lib/chef/provider/windows_env.rb +6 -6
  275. data/lib/chef/provider/windows_task.rb +22 -24
  276. data/lib/chef/resource.rb +26 -4
  277. data/lib/chef/resource/chef_handler.rb +2 -0
  278. data/lib/chef/resource/chocolatey_config.rb +83 -0
  279. data/lib/chef/resource/chocolatey_source.rb +95 -0
  280. data/lib/chef/resource/cron.rb +5 -5
  281. data/lib/chef/resource/dsc_script.rb +12 -11
  282. data/lib/chef/resource/execute.rb +1 -1
  283. data/lib/chef/resource/file/verification.rb +1 -1
  284. data/lib/chef/resource/freebsd_package.rb +3 -1
  285. data/lib/chef/resource/group.rb +2 -2
  286. data/lib/chef/resource/homebrew_package.rb +2 -1
  287. data/lib/chef/resource/homebrew_tap.rb +1 -1
  288. data/lib/chef/resource/hostname.rb +23 -7
  289. data/lib/chef/resource/http_request.rb +6 -3
  290. data/lib/chef/resource/ifconfig.rb +57 -17
  291. data/lib/chef/resource/ips_package.rb +3 -1
  292. data/lib/chef/resource/kernel_module.rb +129 -0
  293. data/lib/chef/resource/launchd.rb +205 -98
  294. data/lib/chef/resource/log.rb +7 -2
  295. data/lib/chef/resource/mdadm.rb +29 -8
  296. data/lib/chef/resource/ohai.rb +2 -0
  297. data/lib/chef/resource/ohai_hint.rb +5 -3
  298. data/lib/chef/resource/openssl_dhparam.rb +1 -1
  299. data/lib/chef/resource/openssl_rsa_private_key.rb +2 -0
  300. data/lib/chef/resource/paludis_package.rb +1 -1
  301. data/lib/chef/resource/portage_package.rb +2 -0
  302. data/lib/chef/resource/powershell_package.rb +2 -0
  303. data/lib/chef/resource/powershell_package_source.rb +165 -0
  304. data/lib/chef/resource/powershell_script.rb +2 -2
  305. data/lib/chef/resource/registry_key.rb +1 -1
  306. data/lib/chef/resource/remote_directory.rb +3 -3
  307. data/lib/chef/resource/remote_file.rb +2 -2
  308. data/lib/chef/resource/resource_notification.rb +16 -16
  309. data/lib/chef/resource/rhsm_errata.rb +1 -1
  310. data/lib/chef/resource/rhsm_errata_level.rb +1 -1
  311. data/lib/chef/resource/rhsm_register.rb +4 -4
  312. data/lib/chef/resource/rhsm_repo.rb +2 -2
  313. data/lib/chef/resource/rhsm_subscription.rb +2 -2
  314. data/lib/chef/resource/script.rb +1 -1
  315. data/lib/chef/resource/service.rb +18 -18
  316. data/lib/chef/resource/ssh_known_hosts_entry.rb +146 -0
  317. data/lib/chef/resource/sudo.rb +4 -4
  318. data/lib/chef/resource/support/ssh_known_hosts.erb +3 -0
  319. data/lib/chef/resource/sysctl.rb +9 -5
  320. data/lib/chef/resource/template.rb +1 -1
  321. data/lib/chef/resource/user.rb +15 -15
  322. data/lib/chef/resource/windows_feature_dism.rb +10 -9
  323. data/lib/chef/resource/windows_feature_powershell.rb +24 -13
  324. data/lib/chef/resource/windows_script.rb +1 -1
  325. data/lib/chef/resource/windows_service.rb +2 -2
  326. data/lib/chef/resource/windows_task.rb +3 -3
  327. data/lib/chef/resource_definition.rb +1 -1
  328. data/lib/chef/resource_inspector.rb +1 -0
  329. data/lib/chef/resource_reporter.rb +4 -4
  330. data/lib/chef/resources.rb +5 -0
  331. data/lib/chef/role.rb +8 -8
  332. data/lib/chef/run_context.rb +8 -8
  333. data/lib/chef/run_list/run_list_expansion.rb +6 -6
  334. data/lib/chef/run_list/run_list_item.rb +1 -1
  335. data/lib/chef/run_list/versioned_recipe_list.rb +3 -3
  336. data/lib/chef/run_status.rb +10 -10
  337. data/lib/chef/shell.rb +60 -60
  338. data/lib/chef/shell/ext.rb +151 -151
  339. data/lib/chef/shell/shell_session.rb +2 -2
  340. data/lib/chef/user.rb +11 -11
  341. data/lib/chef/user_v1.rb +26 -26
  342. data/lib/chef/util/backup.rb +2 -2
  343. data/lib/chef/util/diff.rb +1 -1
  344. data/lib/chef/util/dsc/configuration_generator.rb +11 -11
  345. data/lib/chef/util/dsc/lcm_output_parser.rb +1 -1
  346. data/lib/chef/util/file_edit.rb +14 -14
  347. data/lib/chef/util/powershell/cmdlet.rb +4 -4
  348. data/lib/chef/util/selinux.rb +2 -2
  349. data/lib/chef/util/windows/net_group.rb +1 -1
  350. data/lib/chef/util/windows/net_use.rb +3 -3
  351. data/lib/chef/util/windows/net_user.rb +12 -12
  352. data/lib/chef/util/windows/volume.rb +2 -2
  353. data/lib/chef/version.rb +3 -3
  354. data/lib/chef/version_constraint.rb +3 -3
  355. data/lib/chef/win32/api.rb +6 -6
  356. data/lib/chef/win32/api/error.rb +2 -2
  357. data/lib/chef/win32/api/file.rb +12 -12
  358. data/lib/chef/win32/api/net.rb +58 -58
  359. data/lib/chef/win32/registry.rb +8 -8
  360. data/lib/chef/win32/security.rb +6 -6
  361. data/lib/chef/win32/security/securable_object.rb +10 -10
  362. data/lib/chef/win32/unicode.rb +6 -0
  363. data/lib/chef/win32/version.rb +16 -16
  364. data/spec/functional/audit/rspec_formatter_spec.rb +1 -1
  365. data/spec/functional/audit/runner_spec.rb +1 -1
  366. data/spec/functional/dsl/reboot_pending_spec.rb +3 -3
  367. data/spec/functional/dsl/registry_helper_spec.rb +3 -3
  368. data/spec/functional/http/simple_spec.rb +1 -1
  369. data/spec/functional/knife/exec_spec.rb +1 -1
  370. data/spec/functional/knife/ssh_spec.rb +2 -2
  371. data/spec/functional/mixin/shell_out_spec.rb +8 -4
  372. data/spec/functional/rebooter_spec.rb +6 -6
  373. data/spec/functional/resource/aixinit_service_spec.rb +2 -2
  374. data/spec/functional/resource/apt_package_spec.rb +17 -17
  375. data/spec/functional/resource/bash_spec.rb +1 -1
  376. data/spec/functional/resource/bff_spec.rb +1 -1
  377. data/spec/functional/resource/cron_spec.rb +1 -1
  378. data/spec/functional/resource/dnf_package_spec.rb +7 -7
  379. data/spec/functional/resource/dsc_script_spec.rb +94 -94
  380. data/spec/functional/resource/execute_spec.rb +4 -4
  381. data/spec/functional/resource/file_spec.rb +1 -1
  382. data/spec/functional/resource/git_spec.rb +19 -19
  383. data/spec/functional/resource/ifconfig_spec.rb +5 -5
  384. data/spec/functional/resource/link_spec.rb +1 -1
  385. data/spec/functional/resource/mount_spec.rb +2 -2
  386. data/spec/functional/resource/powershell_script_spec.rb +13 -13
  387. data/spec/functional/resource/reboot_spec.rb +3 -3
  388. data/spec/functional/resource/registry_spec.rb +82 -82
  389. data/spec/functional/resource/remote_file_spec.rb +2 -2
  390. data/spec/functional/resource/rpm_spec.rb +1 -1
  391. data/spec/functional/resource/template_spec.rb +5 -5
  392. data/spec/functional/resource/user/dscl_spec.rb +3 -3
  393. data/spec/functional/resource/windows_env_spec.rb +1 -1
  394. data/spec/functional/resource/windows_service_spec.rb +1 -1
  395. data/spec/functional/resource/windows_task_spec.rb +92 -38
  396. data/spec/functional/resource/yum_package_spec.rb +8 -8
  397. data/spec/functional/run_lock_spec.rb +4 -4
  398. data/spec/functional/shell_spec.rb +1 -1
  399. data/spec/functional/util/powershell/cmdlet_spec.rb +7 -7
  400. data/spec/functional/version_spec.rb +1 -1
  401. data/spec/functional/win32/crypto_spec.rb +9 -9
  402. data/spec/functional/win32/registry_spec.rb +66 -66
  403. data/spec/integration/client/client_spec.rb +219 -219
  404. data/spec/integration/client/exit_code_spec.rb +19 -19
  405. data/spec/integration/client/ipv6_spec.rb +36 -36
  406. data/spec/integration/knife/chef_fs_data_store_spec.rb +130 -130
  407. data/spec/integration/knife/chef_repo_path_spec.rb +418 -418
  408. data/spec/integration/knife/chef_repository_file_system_spec.rb +35 -35
  409. data/spec/integration/knife/chefignore_spec.rb +88 -88
  410. data/spec/integration/knife/client_bulk_delete_spec.rb +49 -49
  411. data/spec/integration/knife/client_create_spec.rb +5 -5
  412. data/spec/integration/knife/client_delete_spec.rb +13 -13
  413. data/spec/integration/knife/client_key_delete_spec.rb +2 -2
  414. data/spec/integration/knife/client_key_list_spec.rb +4 -4
  415. data/spec/integration/knife/client_list_spec.rb +8 -8
  416. data/spec/integration/knife/common_options_spec.rb +31 -31
  417. data/spec/integration/knife/config_get_spec.rb +183 -0
  418. data/spec/integration/knife/cookbook_api_ipv6_spec.rb +38 -38
  419. data/spec/integration/knife/cookbook_bulk_delete_spec.rb +14 -14
  420. data/spec/integration/knife/cookbook_download_spec.rb +12 -12
  421. data/spec/integration/knife/cookbook_list_spec.rb +8 -8
  422. data/spec/integration/knife/cookbook_show_spec.rb +81 -81
  423. data/spec/integration/knife/cookbook_upload_spec.rb +24 -24
  424. data/spec/integration/knife/data_bag_delete_spec.rb +8 -8
  425. data/spec/integration/knife/data_bag_from_file_spec.rb +47 -47
  426. data/spec/integration/knife/data_bag_list_spec.rb +4 -4
  427. data/spec/integration/knife/data_bag_show_spec.rb +7 -7
  428. data/spec/integration/knife/delete_spec.rb +593 -593
  429. data/spec/integration/knife/deps_spec.rb +185 -185
  430. data/spec/integration/knife/diff_spec.rb +116 -116
  431. data/spec/integration/knife/download_spec.rb +510 -510
  432. data/spec/integration/knife/environment_compare_spec.rb +15 -15
  433. data/spec/integration/knife/environment_from_file_spec.rb +59 -59
  434. data/spec/integration/knife/environment_list_spec.rb +4 -4
  435. data/spec/integration/knife/environment_show_spec.rb +25 -25
  436. data/spec/integration/knife/list_spec.rb +731 -731
  437. data/spec/integration/knife/node_bulk_delete_spec.rb +8 -8
  438. data/spec/integration/knife/node_delete_spec.rb +6 -6
  439. data/spec/integration/knife/node_environment_set_spec.rb +3 -3
  440. data/spec/integration/knife/node_from_file_spec.rb +16 -16
  441. data/spec/integration/knife/node_list_spec.rb +5 -5
  442. data/spec/integration/knife/raw_spec.rb +117 -117
  443. data/spec/integration/knife/role_bulk_delete_spec.rb +8 -8
  444. data/spec/integration/knife/role_delete_spec.rb +6 -6
  445. data/spec/integration/knife/role_from_file_spec.rb +42 -42
  446. data/spec/integration/knife/role_list_spec.rb +5 -5
  447. data/spec/integration/knife/role_show_spec.rb +9 -9
  448. data/spec/integration/knife/show_spec.rb +57 -57
  449. data/spec/integration/knife/upload_spec.rb +396 -396
  450. data/spec/integration/recipes/accumulator_spec.rb +2 -2
  451. data/spec/integration/recipes/lwrp_inline_resources_spec.rb +8 -8
  452. data/spec/integration/recipes/lwrp_spec.rb +12 -12
  453. data/spec/integration/recipes/notifies_spec.rb +167 -167
  454. data/spec/integration/recipes/notifying_block_spec.rb +2 -2
  455. data/spec/integration/recipes/remote_directory.rb +1 -1
  456. data/spec/integration/recipes/resource_converge_if_changed_spec.rb +99 -99
  457. data/spec/integration/recipes/resource_load_spec.rb +8 -8
  458. data/spec/integration/solo/solo_spec.rb +40 -40
  459. data/spec/scripts/ssl-serve.rb +12 -12
  460. data/spec/spec_helper.rb +73 -73
  461. data/spec/stress/win32/file_spec.rb +2 -2
  462. data/spec/stress/win32/security_spec.rb +2 -2
  463. data/spec/support/platform_helpers.rb +1 -1
  464. data/spec/support/shared/context/client.rb +25 -25
  465. data/spec/support/shared/functional/securable_resource.rb +13 -13
  466. data/spec/support/shared/functional/securable_resource_with_reporting.rb +6 -6
  467. data/spec/support/shared/functional/win32_service.rb +5 -5
  468. data/spec/support/shared/functional/windows_script.rb +3 -3
  469. data/spec/support/shared/integration/app_server_support.rb +3 -3
  470. data/spec/support/shared/integration/integration_helper.rb +2 -2
  471. data/spec/support/shared/integration/knife_support.rb +9 -3
  472. data/spec/support/shared/unit/api_error_inspector.rb +6 -6
  473. data/spec/support/shared/unit/api_versioning.rb +2 -2
  474. data/spec/support/shared/unit/execute_resource.rb +2 -2
  475. data/spec/support/shared/unit/provider/file.rb +12 -12
  476. data/spec/support/shared/unit/provider/useradd_based_user_provider.rb +34 -34
  477. data/spec/support/shared/unit/user_and_client_shared.rb +3 -3
  478. data/spec/tiny_server.rb +8 -8
  479. data/spec/unit/api_client/registration_spec.rb +30 -30
  480. data/spec/unit/api_client_spec.rb +6 -6
  481. data/spec/unit/api_client_v1_spec.rb +6 -6
  482. data/spec/unit/application/apply_spec.rb +4 -4
  483. data/spec/unit/application/client_spec.rb +11 -11
  484. data/spec/unit/application/knife_spec.rb +3 -3
  485. data/spec/unit/application/solo_spec.rb +5 -5
  486. data/spec/unit/application_spec.rb +11 -11
  487. data/spec/unit/audit/audit_event_proxy_spec.rb +48 -48
  488. data/spec/unit/audit/audit_reporter_spec.rb +51 -55
  489. data/spec/unit/audit/control_group_data_spec.rb +20 -20
  490. data/spec/unit/audit/runner_spec.rb +2 -2
  491. data/spec/unit/chef_class_spec.rb +120 -0
  492. data/spec/unit/chef_fs/data_handler/data_bag_item_data_handler.rb +1 -1
  493. data/spec/unit/chef_fs/data_handler/data_handler_base_spec.rb +3 -3
  494. data/spec/unit/chef_fs/diff_spec.rb +45 -45
  495. data/spec/unit/chef_fs/file_pattern_spec.rb +2 -2
  496. data/spec/unit/chef_fs/file_system/repository/directory_spec.rb +2 -2
  497. data/spec/unit/chef_fs/file_system_spec.rb +8 -8
  498. data/spec/unit/chef_fs/parallelizer.rb +12 -12
  499. data/spec/unit/client_spec.rb +15 -15
  500. data/spec/unit/config_fetcher_spec.rb +23 -23
  501. data/spec/unit/config_spec.rb +2 -2
  502. data/spec/unit/cookbook/metadata_spec.rb +81 -81
  503. data/spec/unit/cookbook/synchronizer_spec.rb +171 -171
  504. data/spec/unit/cookbook_loader_spec.rb +10 -5
  505. data/spec/unit/cookbook_site_streaming_uploader_spec.rb +6 -6
  506. data/spec/unit/cookbook_uploader_spec.rb +8 -8
  507. data/spec/unit/cookbook_version_file_specificity_spec.rb +135 -135
  508. data/spec/unit/daemon_spec.rb +4 -4
  509. data/spec/unit/data_bag_item_spec.rb +3 -3
  510. data/spec/unit/data_bag_spec.rb +1 -1
  511. data/spec/unit/data_collector/resource_report_spec.rb +1 -1
  512. data/spec/unit/data_collector_spec.rb +4 -3
  513. data/spec/unit/deprecated_spec.rb +18 -12
  514. data/spec/unit/dsl/audit_spec.rb +1 -1
  515. data/spec/unit/dsl/platform_introspection_spec.rb +16 -16
  516. data/spec/unit/dsl/reboot_pending_spec.rb +1 -1
  517. data/spec/unit/environment_spec.rb +16 -16
  518. data/spec/unit/file_access_control_spec.rb +8 -8
  519. data/spec/unit/file_content_management/deploy/mv_unix_spec.rb +3 -3
  520. data/spec/unit/file_content_management/deploy/mv_windows_spec.rb +26 -26
  521. data/spec/unit/formatters/error_description_spec.rb +39 -39
  522. data/spec/unit/formatters/error_inspectors/compile_error_inspector_spec.rb +16 -16
  523. data/spec/unit/formatters/error_inspectors/cookbook_sync_error_inspector_spec.rb +1 -1
  524. data/spec/unit/formatters/error_inspectors/node_load_error_inspector_spec.rb +1 -1
  525. data/spec/unit/formatters/error_inspectors/registration_error_inspector_spec.rb +1 -1
  526. data/spec/unit/formatters/error_inspectors/resource_failure_inspector_spec.rb +1 -1
  527. data/spec/unit/formatters/error_inspectors/run_list_expansion_error_inspector_spec.rb +5 -5
  528. data/spec/unit/guard_interpreter/resource_guard_interpreter_spec.rb +4 -4
  529. data/spec/unit/handler/json_file_spec.rb +1 -1
  530. data/spec/unit/http/api_versions_spec.rb +1 -1
  531. data/spec/unit/http/authenticator_spec.rb +17 -17
  532. data/spec/unit/http/ssl_policies_spec.rb +1 -1
  533. data/spec/unit/http/validate_content_length_spec.rb +2 -2
  534. data/spec/unit/key_spec.rb +12 -12
  535. data/spec/unit/knife/bootstrap/client_builder_spec.rb +3 -3
  536. data/spec/unit/knife/client_bulk_delete_spec.rb +1 -1
  537. data/spec/unit/knife/client_delete_spec.rb +1 -1
  538. data/spec/unit/knife/client_reregister_spec.rb +1 -1
  539. data/spec/unit/knife/configure_client_spec.rb +4 -4
  540. data/spec/unit/knife/configure_spec.rb +1 -1
  541. data/spec/unit/knife/cookbook_bulk_delete_spec.rb +1 -1
  542. data/spec/unit/knife/cookbook_delete_spec.rb +4 -4
  543. data/spec/unit/knife/cookbook_download_spec.rb +21 -21
  544. data/spec/unit/knife/cookbook_list_spec.rb +7 -7
  545. data/spec/unit/knife/cookbook_show_spec.rb +24 -24
  546. data/spec/unit/knife/cookbook_site_download_spec.rb +23 -23
  547. data/spec/unit/knife/cookbook_site_install_spec.rb +4 -4
  548. data/spec/unit/knife/cookbook_site_share_spec.rb +10 -10
  549. data/spec/unit/knife/cookbook_site_unshare_spec.rb +2 -2
  550. data/spec/unit/knife/cookbook_upload_spec.rb +19 -19
  551. data/spec/unit/knife/core/bootstrap_context_spec.rb +37 -37
  552. data/spec/unit/knife/core/cookbook_scm_repo_spec.rb +20 -20
  553. data/spec/unit/knife/core/object_loader_spec.rb +1 -1
  554. data/spec/unit/knife/core/ui_spec.rb +55 -55
  555. data/spec/unit/knife/data_bag_create_spec.rb +2 -2
  556. data/spec/unit/knife/data_bag_edit_spec.rb +1 -1
  557. data/spec/unit/knife/data_bag_secret_options_spec.rb +5 -5
  558. data/spec/unit/knife/environment_from_file_spec.rb +1 -1
  559. data/spec/unit/knife/key_create_spec.rb +4 -4
  560. data/spec/unit/knife/key_delete_spec.rb +3 -3
  561. data/spec/unit/knife/key_edit_spec.rb +3 -3
  562. data/spec/unit/knife/key_list_spec.rb +3 -3
  563. data/spec/unit/knife/key_show_spec.rb +3 -3
  564. data/spec/unit/knife/node_delete_spec.rb +1 -1
  565. data/spec/unit/knife/node_edit_spec.rb +7 -7
  566. data/spec/unit/knife/node_from_file_spec.rb +1 -1
  567. data/spec/unit/knife/node_run_list_add_spec.rb +1 -1
  568. data/spec/unit/knife/osc_user_edit_spec.rb +1 -1
  569. data/spec/unit/knife/osc_user_reregister_spec.rb +1 -1
  570. data/spec/unit/knife/role_bulk_delete_spec.rb +1 -1
  571. data/spec/unit/knife/role_create_spec.rb +1 -1
  572. data/spec/unit/knife/role_delete_spec.rb +1 -1
  573. data/spec/unit/knife/role_env_run_list_add_spec.rb +4 -4
  574. data/spec/unit/knife/role_env_run_list_clear_spec.rb +1 -1
  575. data/spec/unit/knife/role_env_run_list_remove_spec.rb +1 -1
  576. data/spec/unit/knife/role_env_run_list_replace_spec.rb +1 -1
  577. data/spec/unit/knife/role_env_run_list_set_spec.rb +1 -1
  578. data/spec/unit/knife/role_from_file_spec.rb +1 -1
  579. data/spec/unit/knife/role_run_list_add_spec.rb +4 -4
  580. data/spec/unit/knife/role_run_list_clear_spec.rb +1 -1
  581. data/spec/unit/knife/role_run_list_remove_spec.rb +1 -1
  582. data/spec/unit/knife/role_run_list_replace_spec.rb +1 -1
  583. data/spec/unit/knife/role_run_list_set_spec.rb +1 -1
  584. data/spec/unit/knife/ssh_spec.rb +25 -25
  585. data/spec/unit/knife/ssl_check_spec.rb +23 -23
  586. data/spec/unit/knife/ssl_fetch_spec.rb +11 -11
  587. data/spec/unit/knife/user_delete_spec.rb +1 -1
  588. data/spec/unit/knife/user_reregister_spec.rb +1 -1
  589. data/spec/unit/knife_spec.rb +26 -26
  590. data/spec/unit/log/syslog_spec.rb +1 -1
  591. data/spec/unit/lwrp_spec.rb +4 -4
  592. data/spec/unit/mash_spec.rb +3 -3
  593. data/spec/unit/mixin/api_version_request_handling_spec.rb +16 -16
  594. data/spec/unit/mixin/checksum_spec.rb +1 -1
  595. data/spec/unit/mixin/enforce_ownership_and_permissions_spec.rb +8 -8
  596. data/spec/unit/mixin/homebrew_user_spec.rb +1 -1
  597. data/spec/unit/mixin/params_validate_spec.rb +96 -96
  598. data/spec/unit/mixin/powershell_exec_spec.rb +1 -1
  599. data/spec/unit/mixin/powershell_type_coercions_spec.rb +1 -1
  600. data/spec/unit/mixin/securable_spec.rb +27 -27
  601. data/spec/unit/mixin/shell_out_spec.rb +286 -132
  602. data/spec/unit/mixin/user_context_spec.rb +1 -1
  603. data/spec/unit/mixin/xml_escape_spec.rb +1 -1
  604. data/spec/unit/node/attribute_spec.rb +10 -10
  605. data/spec/unit/node/vivid_mash_spec.rb +3 -3
  606. data/spec/unit/node_map_spec.rb +71 -3
  607. data/spec/unit/node_spec.rb +15 -15
  608. data/spec/unit/org_spec.rb +2 -2
  609. data/spec/unit/platform/query_helpers_spec.rb +26 -26
  610. data/spec/unit/policy_builder/expand_node_object_spec.rb +4 -4
  611. data/spec/unit/policy_builder/policyfile_spec.rb +29 -29
  612. data/spec/unit/property_spec.rb +5 -5
  613. data/spec/unit/provider/apt_repository_spec.rb +19 -19
  614. data/spec/unit/provider/cookbook_file/content_spec.rb +1 -1
  615. data/spec/unit/provider/cookbook_file_spec.rb +1 -1
  616. data/spec/unit/provider/cron/unix_spec.rb +12 -12
  617. data/spec/unit/provider/cron_spec.rb +279 -279
  618. data/spec/unit/provider/dsc_resource_spec.rb +6 -6
  619. data/spec/unit/provider/execute_spec.rb +2 -2
  620. data/spec/unit/provider/file/content_spec.rb +1 -1
  621. data/spec/unit/provider/file_spec.rb +1 -1
  622. data/spec/unit/provider/git_spec.rb +123 -123
  623. data/spec/unit/provider/group/dscl_spec.rb +18 -18
  624. data/spec/unit/provider/group/gpasswd_spec.rb +7 -7
  625. data/spec/unit/provider/group/groupadd_spec.rb +7 -7
  626. data/spec/unit/provider/group/groupmod_spec.rb +13 -13
  627. data/spec/unit/provider/group/pw_spec.rb +4 -4
  628. data/spec/unit/provider/group/suse_spec.rb +2 -2
  629. data/spec/unit/provider/group/usermod_spec.rb +4 -4
  630. data/spec/unit/provider/group_spec.rb +3 -3
  631. data/spec/unit/provider/ifconfig/aix_spec.rb +17 -17
  632. data/spec/unit/provider/ifconfig/debian_spec.rb +16 -16
  633. data/spec/unit/provider/ifconfig_spec.rb +16 -16
  634. data/spec/unit/provider/launchd_spec.rb +52 -52
  635. data/spec/unit/provider/link_spec.rb +7 -7
  636. data/spec/unit/provider/mdadm_spec.rb +3 -3
  637. data/spec/unit/provider/mount/aix_spec.rb +39 -39
  638. data/spec/unit/provider/mount/mount_spec.rb +26 -26
  639. data/spec/unit/provider/mount/solaris_spec.rb +2 -2
  640. data/spec/unit/provider/mount/windows_spec.rb +6 -6
  641. data/spec/unit/provider/ohai_spec.rb +9 -9
  642. data/spec/unit/provider/osx_profile_spec.rb +1 -1
  643. data/spec/unit/provider/package/apt_spec.rb +186 -186
  644. data/spec/unit/provider/package/bff_spec.rb +36 -36
  645. data/spec/unit/provider/package/cab_spec.rb +58 -58
  646. data/spec/unit/provider/package/chocolatey_spec.rb +34 -34
  647. data/spec/unit/provider/package/dpkg_spec.rb +33 -33
  648. data/spec/unit/provider/package/freebsd/pkg_spec.rb +35 -35
  649. data/spec/unit/provider/package/freebsd/pkgng_spec.rb +22 -22
  650. data/spec/unit/provider/package/freebsd/port_spec.rb +21 -21
  651. data/spec/unit/provider/package/homebrew_spec.rb +4 -4
  652. data/spec/unit/provider/package/ips_spec.rb +94 -94
  653. data/spec/unit/provider/package/macports_spec.rb +23 -23
  654. data/spec/unit/provider/package/msu_spec.rb +44 -44
  655. data/spec/unit/provider/package/openbsd_spec.rb +19 -19
  656. data/spec/unit/provider/package/pacman_spec.rb +50 -50
  657. data/spec/unit/provider/package/paludis_spec.rb +33 -33
  658. data/spec/unit/provider/package/portage_spec.rb +25 -25
  659. data/spec/unit/provider/package/powershell_spec.rb +98 -85
  660. data/spec/unit/provider/package/rpm_spec.rb +21 -21
  661. data/spec/unit/provider/package/rubygems_spec.rb +71 -71
  662. data/spec/unit/provider/package/smartos_spec.rb +21 -21
  663. data/spec/unit/provider/package/solaris_spec.rb +38 -38
  664. data/spec/unit/provider/package/windows/exe_spec.rb +1 -1
  665. data/spec/unit/provider/package/windows/msi_spec.rb +1 -1
  666. data/spec/unit/provider/package/windows_spec.rb +11 -4
  667. data/spec/unit/provider/package/zypper_spec.rb +42 -46
  668. data/spec/unit/provider/package_spec.rb +2 -2
  669. data/spec/unit/provider/powershell_script_spec.rb +1 -1
  670. data/spec/unit/provider/registry_key_spec.rb +22 -22
  671. data/spec/unit/provider/remote_file/cache_control_data_spec.rb +7 -7
  672. data/spec/unit/provider/remote_file/content_spec.rb +4 -4
  673. data/spec/unit/provider/remote_file/fetcher_spec.rb +5 -5
  674. data/spec/unit/provider/remote_file/ftp_spec.rb +1 -1
  675. data/spec/unit/provider/remote_file/http_spec.rb +1 -1
  676. data/spec/unit/provider/remote_file/local_file_spec.rb +2 -2
  677. data/spec/unit/provider/remote_file/network_file_spec.rb +3 -3
  678. data/spec/unit/provider/remote_file/sftp_spec.rb +2 -2
  679. data/spec/unit/provider/remote_file_spec.rb +1 -1
  680. data/spec/unit/provider/script_spec.rb +1 -1
  681. data/spec/unit/provider/service/aix_service_spec.rb +8 -8
  682. data/spec/unit/provider/service/aixinit_service_spec.rb +3 -3
  683. data/spec/unit/provider/service/arch_service_spec.rb +21 -21
  684. data/spec/unit/provider/service/debian_service_spec.rb +2 -2
  685. data/spec/unit/provider/service/freebsd_service_spec.rb +30 -30
  686. data/spec/unit/provider/service/gentoo_service_spec.rb +1 -1
  687. data/spec/unit/provider/service/init_service_spec.rb +14 -14
  688. data/spec/unit/provider/service/insserv_service_spec.rb +2 -2
  689. data/spec/unit/provider/service/invokercd_service_spec.rb +17 -17
  690. data/spec/unit/provider/service/macosx_spec.rb +59 -59
  691. data/spec/unit/provider/service/openbsd_service_spec.rb +6 -6
  692. data/spec/unit/provider/service/redhat_spec.rb +27 -27
  693. data/spec/unit/provider/service/simple_service_spec.rb +14 -14
  694. data/spec/unit/provider/service/solaris_smf_service_spec.rb +19 -19
  695. data/spec/unit/provider/service/systemd_service_spec.rb +13 -13
  696. data/spec/unit/provider/service/upstart_service_spec.rb +5 -5
  697. data/spec/unit/provider/service/windows_spec.rb +38 -38
  698. data/spec/unit/provider/service_spec.rb +3 -3
  699. data/spec/unit/provider/subversion_spec.rb +13 -13
  700. data/spec/unit/provider/systemd_unit_spec.rb +10 -10
  701. data/spec/unit/provider/template/content_spec.rb +44 -44
  702. data/spec/unit/provider/template_spec.rb +2 -2
  703. data/spec/unit/provider/user/aix_spec.rb +5 -5
  704. data/spec/unit/provider/user/dscl_spec.rb +12 -12
  705. data/spec/unit/provider/user/pw_spec.rb +12 -12
  706. data/spec/unit/provider/user/solaris_spec.rb +6 -6
  707. data/spec/unit/provider/windows_env_spec.rb +2 -2
  708. data/spec/unit/provider/windows_task_spec.rb +16 -16
  709. data/spec/unit/provider/zypper_repository_spec.rb +7 -7
  710. data/spec/unit/provider_resolver_spec.rb +3 -3
  711. data/spec/unit/recipe_spec.rb +13 -13
  712. data/spec/unit/resource/chocolatey_config_spec.rb +98 -0
  713. data/spec/unit/resource/chocolatey_source_spec.rb +102 -0
  714. data/spec/unit/resource/conditional_spec.rb +1 -1
  715. data/spec/unit/resource/cookbook_file_spec.rb +3 -3
  716. data/spec/unit/resource/dnf_package_spec.rb +3 -3
  717. data/spec/unit/resource/dsc_script_spec.rb +10 -10
  718. data/spec/unit/resource/execute_spec.rb +2 -2
  719. data/spec/unit/resource/file/verification/systemd_unit_spec.rb +1 -1
  720. data/spec/unit/resource/file/verification_spec.rb +1 -1
  721. data/spec/unit/resource/file_spec.rb +3 -3
  722. data/spec/unit/resource/freebsd_package_spec.rb +5 -4
  723. data/spec/unit/resource/group_spec.rb +4 -4
  724. data/spec/unit/resource/kernel_module_spec.rb +48 -0
  725. data/spec/unit/resource/mount_spec.rb +13 -3
  726. data/spec/unit/resource/package_spec.rb +2 -2
  727. data/spec/unit/resource/powershell_package_source_spec.rb +219 -0
  728. data/spec/unit/resource/powershell_package_spec.rb +10 -1
  729. data/spec/unit/resource/powershell_script_spec.rb +8 -8
  730. data/spec/unit/resource/registry_key_spec.rb +19 -19
  731. data/spec/unit/resource/remote_file_spec.rb +2 -2
  732. data/spec/unit/resource/resource_notification_spec.rb +8 -8
  733. data/spec/unit/resource/service_spec.rb +3 -3
  734. data/spec/unit/resource/ssh_known_hosts_entry_spec.rb +55 -0
  735. data/spec/unit/resource/template_spec.rb +2 -2
  736. data/spec/unit/resource/user_spec.rb +2 -2
  737. data/spec/unit/resource/windows_feature_dism.rb +5 -5
  738. data/spec/unit/resource/windows_feature_powershell.rb +27 -6
  739. data/spec/unit/resource/yum_package_spec.rb +3 -3
  740. data/spec/unit/resource_collection/resource_set_spec.rb +6 -6
  741. data/spec/unit/resource_collection_spec.rb +5 -5
  742. data/spec/unit/resource_definition_spec.rb +2 -2
  743. data/spec/unit/resource_inspector_spec.rb +3 -3
  744. data/spec/unit/resource_reporter_spec.rb +24 -24
  745. data/spec/unit/resource_spec.rb +65 -31
  746. data/spec/unit/role_spec.rb +22 -22
  747. data/spec/unit/run_context_spec.rb +1 -1
  748. data/spec/unit/run_list/run_list_item_spec.rb +3 -3
  749. data/spec/unit/run_list/versioned_recipe_list_spec.rb +12 -12
  750. data/spec/unit/run_list_spec.rb +6 -6
  751. data/spec/unit/runner_spec.rb +4 -4
  752. data/spec/unit/scan_access_control_spec.rb +3 -3
  753. data/spec/unit/shell/model_wrapper_spec.rb +4 -4
  754. data/spec/unit/shell/shell_ext_spec.rb +4 -4
  755. data/spec/unit/shell/shell_session_spec.rb +28 -28
  756. data/spec/unit/user_spec.rb +2 -2
  757. data/spec/unit/user_v1_spec.rb +25 -25
  758. data/spec/unit/util/diff_spec.rb +1 -1
  759. data/spec/unit/util/dsc/configuration_generator_spec.rb +4 -4
  760. data/spec/unit/util/dsc/lcm_output_parser_spec.rb +105 -105
  761. data/spec/unit/util/dsc/local_configuration_manager_spec.rb +16 -16
  762. data/spec/unit/util/file_edit_spec.rb +38 -38
  763. data/spec/unit/util/powershell/cmdlet_spec.rb +1 -1
  764. data/spec/unit/util/selinux_spec.rb +10 -10
  765. data/spec/unit/win32/registry_spec.rb +3 -3
  766. data/spec/unit/windows_service_spec.rb +2 -2
  767. data/tasks/cbgb.rb +3 -3
  768. data/tasks/dependencies.rb +6 -8
  769. data/tasks/maintainers.rb +7 -7
  770. data/tasks/rspec.rb +2 -2
  771. metadata +24 -83
  772. data/acceptance/.shared/kitchen_acceptance/.kitchen.digitalocean.yml +0 -33
  773. data/acceptance/.shared/kitchen_acceptance/.kitchen.ec2.yml +0 -272
  774. data/acceptance/.shared/kitchen_acceptance/.kitchen.vagrant.yml +0 -57
  775. data/acceptance/.shared/kitchen_acceptance/libraries/kitchen.rb +0 -68
  776. data/acceptance/.shared/kitchen_acceptance/metadata.rb +0 -1
  777. data/acceptance/Gemfile +0 -19
  778. data/acceptance/Gemfile.lock +0 -266
  779. data/acceptance/README.md +0 -137
  780. data/acceptance/basics/.acceptance/acceptance-cookbook/.gitignore +0 -2
  781. data/acceptance/basics/.acceptance/acceptance-cookbook/metadata.rb +0 -3
  782. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  783. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  784. data/acceptance/basics/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -1
  785. data/acceptance/basics/.kitchen.yml +0 -4
  786. data/acceptance/basics/test/integration/chef-current-install/serverspec/chef_client_spec.rb +0 -19
  787. data/acceptance/basics/test/integration/chef-current-install/serverspec/spec_helper.rb +0 -6
  788. data/acceptance/basics/test/integration/helpers/serverspec/Gemfile +0 -8
  789. data/acceptance/data-collector/.acceptance/acceptance-cookbook/.gitignore +0 -2
  790. data/acceptance/data-collector/.acceptance/acceptance-cookbook/metadata.rb +0 -3
  791. data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -2
  792. data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -2
  793. data/acceptance/data-collector/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -2
  794. data/acceptance/data-collector/.acceptance/data-collector-test/.gitignore +0 -16
  795. data/acceptance/data-collector/.acceptance/data-collector-test/Berksfile +0 -3
  796. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/api.rb +0 -101
  797. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/apigemfile +0 -3
  798. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-both-mode.rb +0 -4
  799. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-client-mode.rb +0 -4
  800. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-no-endpoint.rb +0 -2
  801. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/client-rb-solo-mode.rb +0 -4
  802. data/acceptance/data-collector/.acceptance/data-collector-test/files/default/config.ru +0 -2
  803. data/acceptance/data-collector/.acceptance/data-collector-test/metadata.rb +0 -7
  804. data/acceptance/data-collector/.acceptance/data-collector-test/recipes/default.rb +0 -44
  805. data/acceptance/data-collector/.kitchen.yml +0 -9
  806. data/acceptance/data-collector/Berksfile +0 -3
  807. data/acceptance/data-collector/test/integration/default/serverspec/default_spec.rb +0 -208
  808. data/acceptance/data-collector/test/integration/helpers/serverspec/Gemfile +0 -8
  809. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/.gitignore +0 -2
  810. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/metadata.rb +0 -1
  811. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  812. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  813. data/acceptance/omnitruck/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -61
  814. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/.gitignore +0 -2
  815. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/cookbook_kitchen.rb +0 -43
  816. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/libraries/top_cookbooks.rb +0 -41
  817. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/metadata.rb +0 -3
  818. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  819. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  820. data/acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -1
  821. data/acceptance/top-cookbooks/.gitignore +0 -1
  822. data/acceptance/top-cookbooks/.kitchen.chocolatey.yml +0 -6
  823. data/acceptance/top-cookbooks/.kitchen.iis.yml +0 -4
  824. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-rhel.yml +0 -7
  825. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-ubuntu.yml +0 -7
  826. data/acceptance/top-cookbooks/.kitchen.learn-the-basics-windows.yml +0 -7
  827. data/acceptance/top-cookbooks/.kitchen.powershell.yml +0 -4
  828. data/acceptance/top-cookbooks/.kitchen.sql_server.yml +0 -5
  829. data/acceptance/top-cookbooks/.kitchen.winbox.yml +0 -8
  830. data/acceptance/top-cookbooks/.kitchen.windows.yml +0 -38
  831. data/acceptance/trivial/.acceptance/acceptance-cookbook/.gitignore +0 -2
  832. data/acceptance/trivial/.acceptance/acceptance-cookbook/metadata.rb +0 -2
  833. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  834. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  835. data/acceptance/trivial/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -1
  836. data/acceptance/trivial/.kitchen.yml +0 -7
  837. data/acceptance/trivial/test/integration/chef-current-install/inspec/chef_client_spec.rb +0 -5
  838. data/acceptance/windows-service/.acceptance/acceptance-cookbook/.gitignore +0 -2
  839. data/acceptance/windows-service/.acceptance/acceptance-cookbook/metadata.rb +0 -2
  840. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/destroy.rb +0 -1
  841. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/provision.rb +0 -1
  842. data/acceptance/windows-service/.acceptance/acceptance-cookbook/recipes/verify.rb +0 -1
  843. data/acceptance/windows-service/.kitchen.yml +0 -7
  844. data/acceptance/windows-service/test/integration/chef-windows-service/inspec/chef_windows_service_spec.rb +0 -58
  845. data/distro/powershell/chef/Chef.PowerShell.dll +0 -0
@@ -7,8 +7,8 @@ RSpec.describe Chef::Config do
7
7
 
8
8
  shared_examples_for "deprecated by ohai but not deprecated" do
9
9
  it "does not emit a deprecation warning when set" do
10
- expect(Chef::Log).to_not receive(:warn).
11
- with(/Ohai::Config\[:#{option}\] is deprecated/)
10
+ expect(Chef::Log).to_not receive(:warn)
11
+ .with(/Ohai::Config\[:#{option}\] is deprecated/)
12
12
  Chef::Config[option] = value
13
13
  expect(Chef::Config[option]).to eq(value)
14
14
  end
@@ -175,15 +175,15 @@ describe Chef::Cookbook::Metadata do
175
175
 
176
176
  describe "meta-data attributes" do
177
177
  params = {
178
- :maintainer => "Adam Jacob",
179
- :maintainer_email => "adam@opscode.com",
180
- :license => "Apache v2.0",
181
- :description => "Foobar!",
182
- :long_description => "Much Longer\nSeriously",
183
- :version => "0.6.0",
184
- :source_url => "http://example.com",
185
- :issues_url => "http://example.com/issues",
186
- :privacy => true,
178
+ maintainer: "Adam Jacob",
179
+ maintainer_email: "adam@opscode.com",
180
+ license: "Apache v2.0",
181
+ description: "Foobar!",
182
+ long_description: "Much Longer\nSeriously",
183
+ version: "0.6.0",
184
+ source_url: "http://example.com",
185
+ issues_url: "http://example.com/issues",
186
+ privacy: true,
187
187
  }
188
188
  params.sort_by(&:to_s).each do |field, field_value|
189
189
  describe field do
@@ -212,8 +212,8 @@ describe Chef::Cookbook::Metadata do
212
212
  describe "describing dependencies" do
213
213
 
214
214
  dep_types = {
215
- :depends => [ :dependencies, "foo::bar", "> 0.2" ],
216
- :provides => [ :providing, "foo::bar", "<= 0.2" ],
215
+ depends: [ :dependencies, "foo::bar", "> 0.2" ],
216
+ provides: [ :providing, "foo::bar", "<= 0.2" ],
217
217
  }
218
218
  dep_types.sort_by(&:to_s).each do |dep, dep_args|
219
219
  check_with = dep_args.shift
@@ -229,8 +229,8 @@ describe Chef::Cookbook::Metadata do
229
229
  end
230
230
 
231
231
  dep_types = {
232
- :depends => [ :dependencies, "foo::bar", ">0.2", "> 0.2" ],
233
- :provides => [ :providing, "foo::bar", "<=0.2", "<= 0.2" ],
232
+ depends: [ :dependencies, "foo::bar", ">0.2", "> 0.2" ],
233
+ provides: [ :providing, "foo::bar", "<=0.2", "<= 0.2" ],
234
234
  }
235
235
  dep_types.sort_by(&:to_s).each do |dep, dep_args|
236
236
  check_with = dep_args.shift
@@ -248,8 +248,8 @@ describe Chef::Cookbook::Metadata do
248
248
 
249
249
  describe "in the obsoleted format" do
250
250
  dep_types = {
251
- :depends => [ "foo::bar", "> 0.2", "< 1.0" ],
252
- :provides => [ "foo::bar", "> 0.2", "< 1.0" ],
251
+ depends: [ "foo::bar", "> 0.2", "< 1.0" ],
252
+ provides: [ "foo::bar", "> 0.2", "< 1.0" ],
253
253
  }
254
254
 
255
255
  dep_types.each do |dep, dep_args|
@@ -261,8 +261,8 @@ describe Chef::Cookbook::Metadata do
261
261
 
262
262
  describe "with obsolete operators" do
263
263
  dep_types = {
264
- :depends => [ "foo::bar", ">> 0.2"],
265
- :provides => [ "foo::bar", ">> 0.2"],
264
+ depends: [ "foo::bar", ">> 0.2"],
265
+ provides: [ "foo::bar", ">> 0.2"],
266
266
  }
267
267
 
268
268
  dep_types.each do |dep, dep_args|
@@ -435,61 +435,61 @@ describe Chef::Cookbook::Metadata do
435
435
 
436
436
  it "should not accept anything but a string for display_name" do
437
437
  expect do
438
- metadata.attribute("db/mysql/databases", :display_name => "foo")
438
+ metadata.attribute("db/mysql/databases", display_name: "foo")
439
439
  end.not_to raise_error
440
440
  expect do
441
- metadata.attribute("db/mysql/databases", :display_name => Hash.new)
441
+ metadata.attribute("db/mysql/databases", display_name: Hash.new)
442
442
  end.to raise_error(ArgumentError)
443
443
  end
444
444
 
445
445
  it "should not accept anything but a string for the description" do
446
446
  expect do
447
- metadata.attribute("db/mysql/databases", :description => "foo")
447
+ metadata.attribute("db/mysql/databases", description: "foo")
448
448
  end.not_to raise_error
449
449
  expect do
450
- metadata.attribute("db/mysql/databases", :description => Hash.new)
450
+ metadata.attribute("db/mysql/databases", description: Hash.new)
451
451
  end.to raise_error(ArgumentError)
452
452
  end
453
453
 
454
454
  it "should not accept anything but a string for the source_url" do
455
455
  expect do
456
- metadata.attribute("db/mysql/databases", :source_url => "foo")
456
+ metadata.attribute("db/mysql/databases", source_url: "foo")
457
457
  end.not_to raise_error
458
458
  expect do
459
- metadata.attribute("db/mysql/databases", :source_url => Hash.new)
459
+ metadata.attribute("db/mysql/databases", source_url: Hash.new)
460
460
  end.to raise_error(ArgumentError)
461
461
  end
462
462
 
463
463
  it "should not accept anything but a string for the issues_url" do
464
464
  expect do
465
- metadata.attribute("db/mysql/databases", :issues_url => "foo")
465
+ metadata.attribute("db/mysql/databases", issues_url: "foo")
466
466
  end.not_to raise_error
467
467
  expect do
468
- metadata.attribute("db/mysql/databases", :issues_url => Hash.new)
468
+ metadata.attribute("db/mysql/databases", issues_url: Hash.new)
469
469
  end.to raise_error(ArgumentError)
470
470
  end
471
471
 
472
472
  it "should not accept anything but true or false for the privacy flag" do
473
473
  expect do
474
- metadata.attribute("db/mysql/databases", :privacy => true)
474
+ metadata.attribute("db/mysql/databases", privacy: true)
475
475
  end.not_to raise_error
476
476
  expect do
477
- metadata.attribute("db/mysql/databases", :privacy => false)
477
+ metadata.attribute("db/mysql/databases", privacy: false)
478
478
  end.not_to raise_error
479
479
  expect do
480
- metadata.attribute("db/mysql/databases", :privacy => "true")
480
+ metadata.attribute("db/mysql/databases", privacy: "true")
481
481
  end.to raise_error(ArgumentError)
482
482
  end
483
483
 
484
484
  it "should not accept anything but an array of strings for choice" do
485
485
  expect do
486
- metadata.attribute("db/mysql/databases", :choice => %w{dedicated shared})
486
+ metadata.attribute("db/mysql/databases", choice: %w{dedicated shared})
487
487
  end.not_to raise_error
488
488
  expect do
489
- metadata.attribute("db/mysql/databases", :choice => [10, "shared"])
489
+ metadata.attribute("db/mysql/databases", choice: [10, "shared"])
490
490
  end.to raise_error(ArgumentError)
491
491
  expect do
492
- metadata.attribute("db/mysql/databases", :choice => Hash.new)
492
+ metadata.attribute("db/mysql/databases", choice: Hash.new)
493
493
  end.to raise_error(ArgumentError)
494
494
  end
495
495
 
@@ -500,13 +500,13 @@ describe Chef::Cookbook::Metadata do
500
500
 
501
501
  it "should let calculated be true or false" do
502
502
  expect do
503
- metadata.attribute("db/mysql/databases", :calculated => true)
503
+ metadata.attribute("db/mysql/databases", calculated: true)
504
504
  end.not_to raise_error
505
505
  expect do
506
- metadata.attribute("db/mysql/databases", :calculated => false)
506
+ metadata.attribute("db/mysql/databases", calculated: false)
507
507
  end.not_to raise_error
508
508
  expect do
509
- metadata.attribute("db/mysql/databases", :calculated => Hash.new)
509
+ metadata.attribute("db/mysql/databases", calculated: Hash.new)
510
510
  end.to raise_error(ArgumentError)
511
511
  end
512
512
 
@@ -517,55 +517,55 @@ describe Chef::Cookbook::Metadata do
517
517
 
518
518
  it "accepts String for the attribute type" do
519
519
  expect do
520
- metadata.attribute("db/mysql/databases", :type => "string")
520
+ metadata.attribute("db/mysql/databases", type: "string")
521
521
  end.not_to raise_error
522
522
  end
523
523
 
524
524
  it "accepts Array for the attribute type" do
525
525
  expect do
526
- metadata.attribute("db/mysql/databases", :type => "array")
526
+ metadata.attribute("db/mysql/databases", type: "array")
527
527
  end.not_to raise_error
528
528
  expect do
529
- metadata.attribute("db/mysql/databases", :type => Array.new)
529
+ metadata.attribute("db/mysql/databases", type: Array.new)
530
530
  end.to raise_error(ArgumentError)
531
531
  end
532
532
 
533
533
  it "accepts symbol for the attribute type" do
534
534
  expect do
535
- metadata.attribute("db/mysql/databases", :type => "symbol")
535
+ metadata.attribute("db/mysql/databases", type: "symbol")
536
536
  end.not_to raise_error
537
537
  end
538
538
 
539
539
  it "should let type be hash (backwards compatibility only)" do
540
540
  expect do
541
- metadata.attribute("db/mysql/databases", :type => "hash")
541
+ metadata.attribute("db/mysql/databases", type: "hash")
542
542
  end.not_to raise_error
543
543
  end
544
544
 
545
545
  it "should let required be required, recommended or optional" do
546
546
  expect do
547
- metadata.attribute("db/mysql/databases", :required => "required")
547
+ metadata.attribute("db/mysql/databases", required: "required")
548
548
  end.not_to raise_error
549
549
  expect do
550
- metadata.attribute("db/mysql/databases", :required => "recommended")
550
+ metadata.attribute("db/mysql/databases", required: "recommended")
551
551
  end.not_to raise_error
552
552
  expect do
553
- metadata.attribute("db/mysql/databases", :required => "optional")
553
+ metadata.attribute("db/mysql/databases", required: "optional")
554
554
  end.not_to raise_error
555
555
  end
556
556
 
557
557
  it "should convert required true to required" do
558
558
  expect do
559
- metadata.attribute("db/mysql/databases", :required => true)
559
+ metadata.attribute("db/mysql/databases", required: true)
560
560
  end.not_to raise_error
561
- #attrib = metadata.attributes["db/mysql/databases"][:required].should == "required"
561
+ # attrib = metadata.attributes["db/mysql/databases"][:required].should == "required"
562
562
  end
563
563
 
564
564
  it "should convert required false to optional" do
565
565
  expect do
566
- metadata.attribute("db/mysql/databases", :required => false)
566
+ metadata.attribute("db/mysql/databases", required: false)
567
567
  end.not_to raise_error
568
- #attrib = metadata.attributes["db/mysql/databases"][:required].should == "optional"
568
+ # attrib = metadata.attributes["db/mysql/databases"][:required].should == "optional"
569
569
  end
570
570
 
571
571
  it "should set required to 'optional' by default" do
@@ -575,10 +575,10 @@ describe Chef::Cookbook::Metadata do
575
575
 
576
576
  it "should make sure recipes is an array" do
577
577
  expect do
578
- metadata.attribute("db/mysql/databases", :recipes => [])
578
+ metadata.attribute("db/mysql/databases", recipes: [])
579
579
  end.not_to raise_error
580
580
  expect do
581
- metadata.attribute("db/mysql/databases", :required => Hash.new)
581
+ metadata.attribute("db/mysql/databases", required: Hash.new)
582
582
  end.to raise_error(ArgumentError)
583
583
  end
584
584
 
@@ -589,57 +589,57 @@ describe Chef::Cookbook::Metadata do
589
589
 
590
590
  it "should allow the default value to be a string, array, hash, boolean or numeric" do
591
591
  expect do
592
- metadata.attribute("db/mysql/databases", :default => [])
592
+ metadata.attribute("db/mysql/databases", default: [])
593
593
  end.not_to raise_error
594
594
  expect do
595
- metadata.attribute("db/mysql/databases", :default => {})
595
+ metadata.attribute("db/mysql/databases", default: {})
596
596
  end.not_to raise_error
597
597
  expect do
598
- metadata.attribute("db/mysql/databases", :default => "alice in chains")
598
+ metadata.attribute("db/mysql/databases", default: "alice in chains")
599
599
  end.not_to raise_error
600
600
  expect do
601
- metadata.attribute("db/mysql/databases", :default => 1337)
601
+ metadata.attribute("db/mysql/databases", default: 1337)
602
602
  end.not_to raise_error
603
603
  expect do
604
- metadata.attribute("db/mysql/databases", :default => true)
604
+ metadata.attribute("db/mysql/databases", default: true)
605
605
  end.not_to raise_error
606
606
  expect do
607
- metadata.attribute("db/mysql/databases", :required => :not_gonna_do_it)
607
+ metadata.attribute("db/mysql/databases", required: :not_gonna_do_it)
608
608
  end.to raise_error(ArgumentError)
609
609
  end
610
610
 
611
611
  it "should limit the types allowed in the choice array" do
612
612
  options = {
613
- :type => "string",
614
- :choice => %w{test1 test2},
615
- :default => "test1",
613
+ type: "string",
614
+ choice: %w{test1 test2},
615
+ default: "test1",
616
616
  }
617
617
  expect do
618
618
  metadata.attribute("test_cookbook/test", options)
619
619
  end.not_to raise_error
620
620
 
621
621
  options = {
622
- :type => "boolean",
623
- :choice => [ true, false ],
624
- :default => true,
622
+ type: "boolean",
623
+ choice: [ true, false ],
624
+ default: true,
625
625
  }
626
626
  expect do
627
627
  metadata.attribute("test_cookbook/test", options)
628
628
  end.not_to raise_error
629
629
 
630
630
  options = {
631
- :type => "numeric",
632
- :choice => [ 1337, 420 ],
633
- :default => 1337,
631
+ type: "numeric",
632
+ choice: [ 1337, 420 ],
633
+ default: 1337,
634
634
  }
635
635
  expect do
636
636
  metadata.attribute("test_cookbook/test", options)
637
637
  end.not_to raise_error
638
638
 
639
639
  options = {
640
- :type => "numeric",
641
- :choice => [ true, "false" ],
642
- :default => false,
640
+ type: "numeric",
641
+ choice: [ true, "false" ],
642
+ default: false,
643
643
  }
644
644
  expect do
645
645
  metadata.attribute("test_cookbook/test", options)
@@ -649,15 +649,15 @@ describe Chef::Cookbook::Metadata do
649
649
  it "should error if default used with calculated" do
650
650
  expect do
651
651
  attrs = {
652
- :calculated => true,
653
- :default => [ "I thought you said calculated" ],
652
+ calculated: true,
653
+ default: [ "I thought you said calculated" ],
654
654
  }
655
655
  metadata.attribute("db/mysql/databases", attrs)
656
656
  end.to raise_error(ArgumentError)
657
657
  expect do
658
658
  attrs = {
659
- :calculated => true,
660
- :default => "I thought you said calculated",
659
+ calculated: true,
660
+ default: "I thought you said calculated",
661
661
  }
662
662
  metadata.attribute("db/mysql/databases", attrs)
663
663
  end.to raise_error(ArgumentError)
@@ -666,15 +666,15 @@ describe Chef::Cookbook::Metadata do
666
666
  it "should allow a default that is a choice" do
667
667
  expect do
668
668
  attrs = {
669
- :choice => %w{a b c},
670
- :default => "b",
669
+ choice: %w{a b c},
670
+ default: "b",
671
671
  }
672
672
  metadata.attribute("db/mysql/databases", attrs)
673
673
  end.not_to raise_error
674
674
  expect do
675
675
  attrs = {
676
- :choice => %w{a b c d e},
677
- :default => %w{b d},
676
+ choice: %w{a b c d e},
677
+ default: %w{b d},
678
678
  }
679
679
  metadata.attribute("db/mysql/databases", attrs)
680
680
  end.not_to raise_error
@@ -683,15 +683,15 @@ describe Chef::Cookbook::Metadata do
683
683
  it "should error if default is not a choice" do
684
684
  expect do
685
685
  attrs = {
686
- :choice => %w{a b c},
687
- :default => "d",
686
+ choice: %w{a b c},
687
+ default: "d",
688
688
  }
689
689
  metadata.attribute("db/mysql/databases", attrs)
690
690
  end.to raise_error(ArgumentError)
691
691
  expect do
692
692
  attrs = {
693
- :choice => %w{a b c d e},
694
- :default => %w{b z},
693
+ choice: %w{a b c d e},
694
+ default: %w{b z},
695
695
  }
696
696
  metadata.attribute("db/mysql/databases", attrs)
697
697
  end.to raise_error(ArgumentError)
@@ -724,8 +724,8 @@ describe Chef::Cookbook::Metadata do
724
724
  end
725
725
 
726
726
  it "should automatically provide each recipe" do
727
- expect(metadata.providing.has_key?("test_cookbook")).to eq(true)
728
- expect(metadata.providing.has_key?("test_cookbook::enlighten")).to eq(true)
727
+ expect(metadata.providing.key?("test_cookbook")).to eq(true)
728
+ expect(metadata.providing.key?("test_cookbook::enlighten")).to eq(true)
729
729
  end
730
730
 
731
731
  end
@@ -743,7 +743,7 @@ describe Chef::Cookbook::Metadata do
743
743
  metadata.provides "foo(:bar, :baz)"
744
744
  metadata.recipe "test_cookbook::enlighten", "is your buddy"
745
745
  metadata.attribute "bizspark/has_login",
746
- :display_name => "You have nothing"
746
+ display_name: "You have nothing"
747
747
  metadata.version "1.2.3"
748
748
  metadata.gem "foo", "~> 1.2"
749
749
  metadata.gem "bar", ">= 2.2", "< 4.0"
@@ -198,223 +198,223 @@ describe Chef::CookbookSynchronizer do
198
198
 
199
199
  let(:cookbook_a_default_recipe_tempfile) do
200
200
  double("Tempfile for cookbook_a default.rb recipe",
201
- :path => "/tmp/cookbook_a_recipes_default_rb")
201
+ path: "/tmp/cookbook_a_recipes_default_rb")
202
202
  end
203
203
 
204
204
  let(:cookbook_a_default_attribute_tempfile) do
205
205
  double("Tempfile for cookbook_a default.rb attr file",
206
- :path => "/tmp/cookbook_a_attributes_default_rb")
206
+ path: "/tmp/cookbook_a_attributes_default_rb")
207
207
  end
208
208
 
209
209
  let(:cookbook_a_file_default_tempfile) do
210
210
  double("Tempfile for cookbook_a megaman.conf file",
211
- :path => "/tmp/cookbook_a_file_default_tempfile")
211
+ path: "/tmp/cookbook_a_file_default_tempfile")
212
212
  end
213
213
 
214
214
  let(:cookbook_a_template_default_tempfile) do
215
215
  double("Tempfile for cookbook_a apache.conf.erb template",
216
- :path => "/tmp/cookbook_a_template_default_tempfile")
216
+ path: "/tmp/cookbook_a_template_default_tempfile")
217
217
  end
218
218
 
219
219
  def setup_common_files_missing_expectations
220
220
  # Files are not in the cache:
221
- expect(file_cache).to receive(:has_key?).
222
- with("cookbooks/cookbook_a/recipes/default.rb").
223
- and_return(false)
224
- expect(file_cache).to receive(:has_key?).
225
- with("cookbooks/cookbook_a/attributes/default.rb").
226
- and_return(false)
221
+ expect(file_cache).to receive(:key?)
222
+ .with("cookbooks/cookbook_a/recipes/default.rb")
223
+ .and_return(false)
224
+ expect(file_cache).to receive(:key?)
225
+ .with("cookbooks/cookbook_a/attributes/default.rb")
226
+ .and_return(false)
227
227
 
228
228
  # Fetch and copy default.rb recipe
229
- expect(server_api).to receive(:streaming_request).
230
- with("http://chef.example.com/abc123").
231
- and_return(cookbook_a_default_recipe_tempfile)
232
- expect(file_cache).to receive(:move_to).
233
- with("/tmp/cookbook_a_recipes_default_rb", "cookbooks/cookbook_a/recipes/default.rb")
234
- expect(file_cache).to receive(:load).
235
- with("cookbooks/cookbook_a/recipes/default.rb", false).
236
- and_return("/file-cache/cookbooks/cookbook_a/recipes/default.rb")
229
+ expect(server_api).to receive(:streaming_request)
230
+ .with("http://chef.example.com/abc123")
231
+ .and_return(cookbook_a_default_recipe_tempfile)
232
+ expect(file_cache).to receive(:move_to)
233
+ .with("/tmp/cookbook_a_recipes_default_rb", "cookbooks/cookbook_a/recipes/default.rb")
234
+ expect(file_cache).to receive(:load)
235
+ .with("cookbooks/cookbook_a/recipes/default.rb", false)
236
+ .and_return("/file-cache/cookbooks/cookbook_a/recipes/default.rb")
237
237
 
238
238
  # Fetch and copy default.rb attribute file
239
- expect(server_api).to receive(:streaming_request).
240
- with("http://chef.example.com/abc456").
241
- and_return(cookbook_a_default_attribute_tempfile)
242
- expect(file_cache).to receive(:move_to).
243
- with("/tmp/cookbook_a_attributes_default_rb", "cookbooks/cookbook_a/attributes/default.rb")
244
- expect(file_cache).to receive(:load).
245
- with("cookbooks/cookbook_a/attributes/default.rb", false).
246
- and_return("/file-cache/cookbooks/cookbook_a/attributes/default.rb")
239
+ expect(server_api).to receive(:streaming_request)
240
+ .with("http://chef.example.com/abc456")
241
+ .and_return(cookbook_a_default_attribute_tempfile)
242
+ expect(file_cache).to receive(:move_to)
243
+ .with("/tmp/cookbook_a_attributes_default_rb", "cookbooks/cookbook_a/attributes/default.rb")
244
+ expect(file_cache).to receive(:load)
245
+ .with("cookbooks/cookbook_a/attributes/default.rb", false)
246
+ .and_return("/file-cache/cookbooks/cookbook_a/attributes/default.rb")
247
247
  end
248
248
 
249
249
  def setup_no_lazy_files_and_templates_missing_expectations
250
- expect(file_cache).to receive(:has_key?).
251
- with("cookbooks/cookbook_a/files/default/megaman.conf").
252
- and_return(false)
253
- expect(file_cache).to receive(:has_key?).
254
- with("cookbooks/cookbook_a/templates/default/apache2.conf.erb").
255
- and_return(false)
256
-
257
- expect(server_api).to receive(:streaming_request).
258
- with("http://chef.example.com/megaman.conf").
259
- and_return(cookbook_a_file_default_tempfile)
260
- expect(file_cache).to receive(:move_to).
261
- with("/tmp/cookbook_a_file_default_tempfile", "cookbooks/cookbook_a/files/default/megaman.conf")
262
- expect(file_cache).to receive(:load).
263
- with("cookbooks/cookbook_a/files/default/megaman.conf", false).
264
- and_return("/file-cache/cookbooks/cookbook_a/default/megaman.conf")
265
-
266
- expect(server_api).to receive(:streaming_request).
267
- with("http://chef.example.com/ffffff").
268
- and_return(cookbook_a_template_default_tempfile)
269
- expect(file_cache).to receive(:move_to).
270
- with("/tmp/cookbook_a_template_default_tempfile", "cookbooks/cookbook_a/templates/default/apache2.conf.erb")
271
- expect(file_cache).to receive(:load).
272
- with("cookbooks/cookbook_a/templates/default/apache2.conf.erb", false).
273
- and_return("/file-cache/cookbooks/cookbook_a/templates/default/apache2.conf.erb")
250
+ expect(file_cache).to receive(:key?)
251
+ .with("cookbooks/cookbook_a/files/default/megaman.conf")
252
+ .and_return(false)
253
+ expect(file_cache).to receive(:key?)
254
+ .with("cookbooks/cookbook_a/templates/default/apache2.conf.erb")
255
+ .and_return(false)
256
+
257
+ expect(server_api).to receive(:streaming_request)
258
+ .with("http://chef.example.com/megaman.conf")
259
+ .and_return(cookbook_a_file_default_tempfile)
260
+ expect(file_cache).to receive(:move_to)
261
+ .with("/tmp/cookbook_a_file_default_tempfile", "cookbooks/cookbook_a/files/default/megaman.conf")
262
+ expect(file_cache).to receive(:load)
263
+ .with("cookbooks/cookbook_a/files/default/megaman.conf", false)
264
+ .and_return("/file-cache/cookbooks/cookbook_a/default/megaman.conf")
265
+
266
+ expect(server_api).to receive(:streaming_request)
267
+ .with("http://chef.example.com/ffffff")
268
+ .and_return(cookbook_a_template_default_tempfile)
269
+ expect(file_cache).to receive(:move_to)
270
+ .with("/tmp/cookbook_a_template_default_tempfile", "cookbooks/cookbook_a/templates/default/apache2.conf.erb")
271
+ expect(file_cache).to receive(:load)
272
+ .with("cookbooks/cookbook_a/templates/default/apache2.conf.erb", false)
273
+ .and_return("/file-cache/cookbooks/cookbook_a/templates/default/apache2.conf.erb")
274
274
  end
275
275
 
276
276
  def setup_common_files_chksum_mismatch_expectations
277
277
  # Files are in the cache:
278
- expect(file_cache).to receive(:has_key?).
279
- with("cookbooks/cookbook_a/recipes/default.rb").
280
- and_return(true)
281
- expect(file_cache).to receive(:has_key?).
282
- with("cookbooks/cookbook_a/attributes/default.rb").
283
- and_return(true)
278
+ expect(file_cache).to receive(:key?)
279
+ .with("cookbooks/cookbook_a/recipes/default.rb")
280
+ .and_return(true)
281
+ expect(file_cache).to receive(:key?)
282
+ .with("cookbooks/cookbook_a/attributes/default.rb")
283
+ .and_return(true)
284
284
 
285
285
  # Fetch and copy default.rb recipe
286
- expect(server_api).to receive(:streaming_request).
287
- with("http://chef.example.com/abc123").
288
- and_return(cookbook_a_default_recipe_tempfile)
289
- expect(file_cache).to receive(:move_to).
290
- with("/tmp/cookbook_a_recipes_default_rb", "cookbooks/cookbook_a/recipes/default.rb")
291
- expect(file_cache).to receive(:load).
292
- with("cookbooks/cookbook_a/recipes/default.rb", false).
293
- twice.
294
- and_return("/file-cache/cookbooks/cookbook_a/recipes/default.rb")
286
+ expect(server_api).to receive(:streaming_request)
287
+ .with("http://chef.example.com/abc123")
288
+ .and_return(cookbook_a_default_recipe_tempfile)
289
+ expect(file_cache).to receive(:move_to)
290
+ .with("/tmp/cookbook_a_recipes_default_rb", "cookbooks/cookbook_a/recipes/default.rb")
291
+ expect(file_cache).to receive(:load)
292
+ .with("cookbooks/cookbook_a/recipes/default.rb", false)
293
+ .twice
294
+ .and_return("/file-cache/cookbooks/cookbook_a/recipes/default.rb")
295
295
 
296
296
  # Current file has fff000, want abc123
297
- expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file).
298
- with("/file-cache/cookbooks/cookbook_a/recipes/default.rb").
299
- and_return("fff000").at_least(:once)
297
+ expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file)
298
+ .with("/file-cache/cookbooks/cookbook_a/recipes/default.rb")
299
+ .and_return("fff000").at_least(:once)
300
300
 
301
301
  # Fetch and copy default.rb attribute file
302
- expect(server_api).to receive(:streaming_request).
303
- with("http://chef.example.com/abc456").
304
- and_return(cookbook_a_default_attribute_tempfile)
305
- expect(file_cache).to receive(:move_to).
306
- with("/tmp/cookbook_a_attributes_default_rb", "cookbooks/cookbook_a/attributes/default.rb")
307
- expect(file_cache).to receive(:load).
308
- with("cookbooks/cookbook_a/attributes/default.rb", false).
309
- twice.
310
- and_return("/file-cache/cookbooks/cookbook_a/attributes/default.rb")
302
+ expect(server_api).to receive(:streaming_request)
303
+ .with("http://chef.example.com/abc456")
304
+ .and_return(cookbook_a_default_attribute_tempfile)
305
+ expect(file_cache).to receive(:move_to)
306
+ .with("/tmp/cookbook_a_attributes_default_rb", "cookbooks/cookbook_a/attributes/default.rb")
307
+ expect(file_cache).to receive(:load)
308
+ .with("cookbooks/cookbook_a/attributes/default.rb", false)
309
+ .twice
310
+ .and_return("/file-cache/cookbooks/cookbook_a/attributes/default.rb")
311
311
 
312
312
  # Current file has fff000, want abc456
313
- expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file).
314
- with("/file-cache/cookbooks/cookbook_a/attributes/default.rb").
315
- and_return("fff000").at_least(:once)
313
+ expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file)
314
+ .with("/file-cache/cookbooks/cookbook_a/attributes/default.rb")
315
+ .and_return("fff000").at_least(:once)
316
316
  end
317
317
 
318
318
  def setup_no_lazy_files_and_templates_chksum_mismatch_expectations
319
319
  # Files are in the cache:
320
- expect(file_cache).to receive(:has_key?).
321
- with("cookbooks/cookbook_a/files/default/megaman.conf").
322
- and_return(true)
323
- expect(file_cache).to receive(:has_key?).
324
- with("cookbooks/cookbook_a/templates/default/apache2.conf.erb").
325
- and_return(true)
320
+ expect(file_cache).to receive(:key?)
321
+ .with("cookbooks/cookbook_a/files/default/megaman.conf")
322
+ .and_return(true)
323
+ expect(file_cache).to receive(:key?)
324
+ .with("cookbooks/cookbook_a/templates/default/apache2.conf.erb")
325
+ .and_return(true)
326
326
 
327
327
  # Fetch and copy megaman.conf
328
- expect(server_api).to receive(:streaming_request).
329
- with("http://chef.example.com/megaman.conf").
330
- and_return(cookbook_a_file_default_tempfile)
331
- expect(file_cache).to receive(:move_to).
332
- with("/tmp/cookbook_a_file_default_tempfile", "cookbooks/cookbook_a/files/default/megaman.conf")
333
- expect(file_cache).to receive(:load).
334
- with("cookbooks/cookbook_a/files/default/megaman.conf", false).
335
- twice.
336
- and_return("/file-cache/cookbooks/cookbook_a/default/megaman.conf")
328
+ expect(server_api).to receive(:streaming_request)
329
+ .with("http://chef.example.com/megaman.conf")
330
+ .and_return(cookbook_a_file_default_tempfile)
331
+ expect(file_cache).to receive(:move_to)
332
+ .with("/tmp/cookbook_a_file_default_tempfile", "cookbooks/cookbook_a/files/default/megaman.conf")
333
+ expect(file_cache).to receive(:load)
334
+ .with("cookbooks/cookbook_a/files/default/megaman.conf", false)
335
+ .twice
336
+ .and_return("/file-cache/cookbooks/cookbook_a/default/megaman.conf")
337
337
 
338
338
  # Fetch and copy apache2.conf template
339
- expect(server_api).to receive(:streaming_request).
340
- with("http://chef.example.com/ffffff").
341
- and_return(cookbook_a_template_default_tempfile)
342
- expect(file_cache).to receive(:move_to).
343
- with("/tmp/cookbook_a_template_default_tempfile", "cookbooks/cookbook_a/templates/default/apache2.conf.erb")
344
- expect(file_cache).to receive(:load).
345
- with("cookbooks/cookbook_a/templates/default/apache2.conf.erb", false).
346
- twice.
347
- and_return("/file-cache/cookbooks/cookbook_a/templates/default/apache2.conf.erb")
339
+ expect(server_api).to receive(:streaming_request)
340
+ .with("http://chef.example.com/ffffff")
341
+ .and_return(cookbook_a_template_default_tempfile)
342
+ expect(file_cache).to receive(:move_to)
343
+ .with("/tmp/cookbook_a_template_default_tempfile", "cookbooks/cookbook_a/templates/default/apache2.conf.erb")
344
+ expect(file_cache).to receive(:load)
345
+ .with("cookbooks/cookbook_a/templates/default/apache2.conf.erb", false)
346
+ .twice
347
+ .and_return("/file-cache/cookbooks/cookbook_a/templates/default/apache2.conf.erb")
348
348
 
349
349
  # Current file has fff000
350
- expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file).
351
- with("/file-cache/cookbooks/cookbook_a/default/megaman.conf").
352
- and_return("fff000")
350
+ expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file)
351
+ .with("/file-cache/cookbooks/cookbook_a/default/megaman.conf")
352
+ .and_return("fff000")
353
353
 
354
354
  # Current file has fff000
355
- expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file).
356
- with("/file-cache/cookbooks/cookbook_a/templates/default/apache2.conf.erb").
357
- and_return("fff000")
355
+ expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file)
356
+ .with("/file-cache/cookbooks/cookbook_a/templates/default/apache2.conf.erb")
357
+ .and_return("fff000")
358
358
  end
359
359
 
360
360
  def setup_common_files_present_expectations
361
361
  # Files are in the cache:
362
- expect(file_cache).to receive(:has_key?).
363
- with("cookbooks/cookbook_a/recipes/default.rb").
364
- and_return(true)
365
- expect(file_cache).to receive(:has_key?).
366
- with("cookbooks/cookbook_a/attributes/default.rb").
367
- and_return(true)
362
+ expect(file_cache).to receive(:key?)
363
+ .with("cookbooks/cookbook_a/recipes/default.rb")
364
+ .and_return(true)
365
+ expect(file_cache).to receive(:key?)
366
+ .with("cookbooks/cookbook_a/attributes/default.rb")
367
+ .and_return(true)
368
368
 
369
369
  # Current file has abc123, want abc123
370
- expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file).
371
- with("/file-cache/cookbooks/cookbook_a/recipes/default.rb").
372
- and_return("abc123").at_least(:once)
370
+ expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file)
371
+ .with("/file-cache/cookbooks/cookbook_a/recipes/default.rb")
372
+ .and_return("abc123").at_least(:once)
373
373
 
374
374
  # Current file has abc456, want abc456
375
- expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file).
376
- with("/file-cache/cookbooks/cookbook_a/attributes/default.rb").
377
- and_return("abc456").at_least(:once)
375
+ expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file)
376
+ .with("/file-cache/cookbooks/cookbook_a/attributes/default.rb")
377
+ .and_return("abc456").at_least(:once)
378
378
 
379
379
  # :load called twice
380
- expect(file_cache).to receive(:load).
381
- with("cookbooks/cookbook_a/recipes/default.rb", false).
382
- twice.
383
- and_return("/file-cache/cookbooks/cookbook_a/recipes/default.rb")
384
- expect(file_cache).to receive(:load).
385
- with("cookbooks/cookbook_a/attributes/default.rb", false).
386
- twice.
387
- and_return("/file-cache/cookbooks/cookbook_a/attributes/default.rb")
380
+ expect(file_cache).to receive(:load)
381
+ .with("cookbooks/cookbook_a/recipes/default.rb", false)
382
+ .twice
383
+ .and_return("/file-cache/cookbooks/cookbook_a/recipes/default.rb")
384
+ expect(file_cache).to receive(:load)
385
+ .with("cookbooks/cookbook_a/attributes/default.rb", false)
386
+ .twice
387
+ .and_return("/file-cache/cookbooks/cookbook_a/attributes/default.rb")
388
388
  end
389
389
 
390
390
  def setup_no_lazy_files_and_templates_present_expectations
391
391
  # Files are in the cache:
392
- expect(file_cache).to receive(:has_key?).
393
- with("cookbooks/cookbook_a/files/default/megaman.conf").
394
- and_return(true)
395
- expect(file_cache).to receive(:has_key?).
396
- with("cookbooks/cookbook_a/templates/default/apache2.conf.erb").
397
- and_return(true)
392
+ expect(file_cache).to receive(:key?)
393
+ .with("cookbooks/cookbook_a/files/default/megaman.conf")
394
+ .and_return(true)
395
+ expect(file_cache).to receive(:key?)
396
+ .with("cookbooks/cookbook_a/templates/default/apache2.conf.erb")
397
+ .and_return(true)
398
398
 
399
399
  # Current file has abc124, want abc124
400
- expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file).
401
- with("/file-cache/cookbooks/cookbook_a/default/megaman.conf").
402
- and_return("abc124")
400
+ expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file)
401
+ .with("/file-cache/cookbooks/cookbook_a/default/megaman.conf")
402
+ .and_return("abc124")
403
403
 
404
404
  # Current file has abc125, want abc125
405
- expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file).
406
- with("/file-cache/cookbooks/cookbook_a/templates/default/apache2.conf.erb").
407
- and_return("abc125")
405
+ expect(Chef::CookbookVersion).to receive(:checksum_cookbook_file)
406
+ .with("/file-cache/cookbooks/cookbook_a/templates/default/apache2.conf.erb")
407
+ .and_return("abc125")
408
408
 
409
409
  # :load called twice
410
- expect(file_cache).to receive(:load).
411
- with("cookbooks/cookbook_a/files/default/megaman.conf", false).
412
- twice.
413
- and_return("/file-cache/cookbooks/cookbook_a/default/megaman.conf")
414
- expect(file_cache).to receive(:load).
415
- with("cookbooks/cookbook_a/templates/default/apache2.conf.erb", false).
416
- twice.
417
- and_return("/file-cache/cookbooks/cookbook_a/templates/default/apache2.conf.erb")
410
+ expect(file_cache).to receive(:load)
411
+ .with("cookbooks/cookbook_a/files/default/megaman.conf", false)
412
+ .twice
413
+ .and_return("/file-cache/cookbooks/cookbook_a/default/megaman.conf")
414
+ expect(file_cache).to receive(:load)
415
+ .with("cookbooks/cookbook_a/templates/default/apache2.conf.erb", false)
416
+ .twice
417
+ .and_return("/file-cache/cookbooks/cookbook_a/templates/default/apache2.conf.erb")
418
418
  end
419
419
 
420
420
  describe "#server_api" do
@@ -451,8 +451,8 @@ describe Chef::CookbookSynchronizer do
451
451
 
452
452
  it "does not fetch templates or cookbook files" do
453
453
  # Implicitly tested in previous test; this test is just for behavior specification.
454
- expect(server_api).not_to receive(:streaming_request).
455
- with("http://chef.example.com/ffffff")
454
+ expect(server_api).not_to receive(:streaming_request)
455
+ .with("http://chef.example.com/ffffff")
456
456
 
457
457
  synchronizer.sync_cookbooks
458
458
  end
@@ -531,25 +531,25 @@ describe Chef::CookbookSynchronizer do
531
531
  let(:skip_cookbook_sync) { true }
532
532
 
533
533
  it "loads the cookbook files and warns the user that this isn't supported" do
534
- expect(file_cache).to receive(:load).
535
- with("cookbooks/cookbook_a/recipes/default.rb", false).
536
- once.
537
- and_return("/file-cache/cookbooks/cookbook_a/recipes/default.rb")
538
- expect(file_cache).to receive(:load).
539
- with("cookbooks/cookbook_a/attributes/default.rb", false).
540
- once.
541
- and_return("/file-cache/cookbooks/cookbook_a/attributes/default.rb")
542
- expect(file_cache).to receive(:load).
543
- with("cookbooks/cookbook_a/templates/default/apache2.conf.erb", false).
544
- once.
545
- and_return("/file-cache/cookbooks/cookbook_a/templates/default/apache2.conf.erb")
546
- expect(file_cache).to receive(:load).
547
- with("cookbooks/cookbook_a/files/default/megaman.conf", false).
548
- once.
549
- and_return("/file-cache/cookbooks/cookbook_a/files/default/megaman.conf")
550
- expect(Chef::Log).to receive(:warn).
551
- with("skipping cookbook synchronization! DO NOT LEAVE THIS ENABLED IN PRODUCTION!!!").
552
- once
534
+ expect(file_cache).to receive(:load)
535
+ .with("cookbooks/cookbook_a/recipes/default.rb", false)
536
+ .once
537
+ .and_return("/file-cache/cookbooks/cookbook_a/recipes/default.rb")
538
+ expect(file_cache).to receive(:load)
539
+ .with("cookbooks/cookbook_a/attributes/default.rb", false)
540
+ .once
541
+ .and_return("/file-cache/cookbooks/cookbook_a/attributes/default.rb")
542
+ expect(file_cache).to receive(:load)
543
+ .with("cookbooks/cookbook_a/templates/default/apache2.conf.erb", false)
544
+ .once
545
+ .and_return("/file-cache/cookbooks/cookbook_a/templates/default/apache2.conf.erb")
546
+ expect(file_cache).to receive(:load)
547
+ .with("cookbooks/cookbook_a/files/default/megaman.conf", false)
548
+ .once
549
+ .and_return("/file-cache/cookbooks/cookbook_a/files/default/megaman.conf")
550
+ expect(Chef::Log).to receive(:warn)
551
+ .with("skipping cookbook synchronization! DO NOT LEAVE THIS ENABLED IN PRODUCTION!!!")
552
+ .once
553
553
  synchronizer.sync_cookbooks
554
554
  end
555
555
  end