puppet 6.4.0-x64-mingw32 → 6.4.1-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of puppet might be problematic. Click here for more details.

Files changed (646) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +0 -1
  3. data/Gemfile.lock +7 -11
  4. data/lib/puppet/application/device.rb +97 -82
  5. data/lib/puppet/application/filebucket.rb +4 -0
  6. data/lib/puppet/application/ssl.rb +2 -2
  7. data/lib/puppet/configurer.rb +5 -4
  8. data/lib/puppet/defaults.rb +33 -11
  9. data/lib/puppet/indirector/request.rb +28 -15
  10. data/lib/puppet/ssl.rb +1 -1
  11. data/lib/puppet/ssl/certificate.rb +1 -1
  12. data/lib/puppet/ssl/error.rb +1 -1
  13. data/lib/puppet/ssl/host.rb +0 -47
  14. data/lib/puppet/ssl/ssl_provider.rb +2 -2
  15. data/lib/puppet/ssl/state_machine.rb +16 -17
  16. data/lib/puppet/ssl/validator/default_validator.rb +4 -4
  17. data/lib/puppet/ssl/verifier.rb +1 -1
  18. data/lib/puppet/transaction/event_manager.rb +1 -5
  19. data/lib/puppet/util/connection.rb +15 -8
  20. data/lib/puppet/util/monkey_patches.rb +20 -1
  21. data/lib/puppet/version.rb +1 -1
  22. data/locales/puppet.pot +135 -68
  23. data/man/man5/puppet.conf.5 +9 -9
  24. data/man/man8/puppet-agent.8 +1 -1
  25. data/man/man8/puppet-apply.8 +1 -1
  26. data/man/man8/puppet-catalog.8 +1 -1
  27. data/man/man8/puppet-config.8 +1 -1
  28. data/man/man8/puppet-describe.8 +1 -1
  29. data/man/man8/puppet-device.8 +1 -1
  30. data/man/man8/puppet-doc.8 +1 -1
  31. data/man/man8/puppet-epp.8 +1 -1
  32. data/man/man8/puppet-facts.8 +1 -1
  33. data/man/man8/puppet-filebucket.8 +1 -1
  34. data/man/man8/puppet-generate.8 +1 -1
  35. data/man/man8/puppet-help.8 +1 -1
  36. data/man/man8/puppet-key.8 +1 -1
  37. data/man/man8/puppet-lookup.8 +1 -1
  38. data/man/man8/puppet-man.8 +1 -1
  39. data/man/man8/puppet-module.8 +1 -1
  40. data/man/man8/puppet-node.8 +1 -1
  41. data/man/man8/puppet-parser.8 +1 -1
  42. data/man/man8/puppet-plugin.8 +1 -1
  43. data/man/man8/puppet-report.8 +1 -1
  44. data/man/man8/puppet-resource.8 +1 -1
  45. data/man/man8/puppet-script.8 +1 -1
  46. data/man/man8/puppet-ssl.8 +1 -1
  47. data/man/man8/puppet-status.8 +1 -1
  48. data/man/man8/puppet.8 +2 -2
  49. data/spec/integration/agent/logging_spec.rb +5 -7
  50. data/spec/integration/application/apply_spec.rb +18 -16
  51. data/spec/integration/application/doc_spec.rb +1 -2
  52. data/spec/integration/application/lookup_spec.rb +5 -5
  53. data/spec/integration/configurer_spec.rb +5 -6
  54. data/spec/integration/defaults_spec.rb +5 -6
  55. data/spec/integration/directory_environments_spec.rb +1 -1
  56. data/spec/integration/faces/config_spec.rb +3 -4
  57. data/spec/integration/faces/documentation_spec.rb +0 -1
  58. data/spec/integration/faces/plugin_spec.rb +1 -1
  59. data/spec/integration/file_bucket/file_spec.rb +2 -4
  60. data/spec/integration/file_serving/content_spec.rb +0 -1
  61. data/spec/integration/file_serving/fileset_spec.rb +0 -1
  62. data/spec/integration/file_serving/metadata_spec.rb +0 -1
  63. data/spec/integration/file_serving/terminus_helper_spec.rb +0 -1
  64. data/spec/integration/indirector/catalog/compiler_spec.rb +10 -11
  65. data/spec/integration/indirector/direct_file_server_spec.rb +1 -1
  66. data/spec/integration/indirector/facts/facter_spec.rb +4 -5
  67. data/spec/integration/indirector/file_content/file_server_spec.rb +7 -8
  68. data/spec/integration/indirector/file_metadata/file_server_spec.rb +7 -8
  69. data/spec/integration/network/authconfig_spec.rb +23 -24
  70. data/spec/integration/network/formats_spec.rb +0 -1
  71. data/spec/integration/network/http_pool_spec.rb +3 -3
  72. data/spec/integration/node/environment_spec.rb +0 -1
  73. data/spec/integration/node/facts_spec.rb +9 -10
  74. data/spec/integration/node_spec.rb +6 -7
  75. data/spec/integration/parser/catalog_spec.rb +1 -5
  76. data/spec/integration/parser/collection_spec.rb +1 -2
  77. data/spec/integration/parser/compiler_spec.rb +6 -6
  78. data/spec/integration/parser/scope_spec.rb +1 -1
  79. data/spec/integration/parser/undef_param_spec.rb +1 -1
  80. data/spec/integration/provider/service/init_spec.rb +4 -5
  81. data/spec/integration/provider/service/systemd_spec.rb +0 -2
  82. data/spec/integration/provider/service/windows_spec.rb +1 -2
  83. data/spec/integration/reference/providers_spec.rb +1 -2
  84. data/spec/integration/reports_spec.rb +1 -2
  85. data/spec/integration/resource/catalog_spec.rb +14 -17
  86. data/spec/integration/resource/type_collection_spec.rb +4 -5
  87. data/spec/integration/rest/client_spec.rb +1 -1
  88. data/spec/integration/ssl/certificate_request_spec.rb +0 -1
  89. data/spec/integration/ssl/host_spec.rb +1 -2
  90. data/spec/integration/ssl/key_spec.rb +0 -1
  91. data/spec/integration/test/test_helper_spec.rb +0 -1
  92. data/spec/integration/transaction/report_spec.rb +6 -11
  93. data/spec/integration/transaction_spec.rb +18 -19
  94. data/spec/integration/type/exec_spec.rb +0 -1
  95. data/spec/integration/type/file_spec.rb +13 -14
  96. data/spec/integration/type/package_spec.rb +19 -23
  97. data/spec/integration/type/tidy_spec.rb +1 -2
  98. data/spec/integration/type_spec.rb +0 -1
  99. data/spec/integration/util/autoload_spec.rb +1 -2
  100. data/spec/integration/util/rdoc/parser_spec.rb +0 -1
  101. data/spec/integration/util/settings_spec.rb +0 -1
  102. data/spec/integration/util/windows/adsi_spec.rb +3 -5
  103. data/spec/integration/util/windows/principal_spec.rb +0 -1
  104. data/spec/integration/util/windows/process_spec.rb +4 -6
  105. data/spec/integration/util/windows/registry_spec.rb +41 -51
  106. data/spec/integration/util/windows/security_spec.rb +2 -4
  107. data/spec/integration/util/windows/user_spec.rb +18 -20
  108. data/spec/integration/util_spec.rb +4 -7
  109. data/spec/lib/puppet_spec/compiler.rb +1 -1
  110. data/spec/lib/puppet_spec/files.rb +0 -1
  111. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +1 -1
  112. data/spec/lib/puppet_spec/scope.rb +1 -2
  113. data/spec/shared_behaviours/all_parsedfile_providers.rb +1 -1
  114. data/spec/shared_behaviours/file_server_terminus.rb +8 -9
  115. data/spec/shared_behaviours/file_serving.rb +6 -8
  116. data/spec/shared_behaviours/file_serving_model.rb +3 -5
  117. data/spec/shared_behaviours/hiera_indirections.rb +3 -4
  118. data/spec/shared_behaviours/iterative_functions.rb +0 -1
  119. data/spec/shared_behaviours/memory_terminus.rb +2 -2
  120. data/spec/shared_examples/rhel_package_provider.rb +112 -70
  121. data/spec/spec_helper.rb +10 -1
  122. data/spec/unit/agent/disabler_spec.rb +4 -5
  123. data/spec/unit/agent/locker_spec.rb +12 -13
  124. data/spec/unit/agent_spec.rb +80 -85
  125. data/spec/unit/application/agent_spec.rb +88 -94
  126. data/spec/unit/application/apply_spec.rb +82 -83
  127. data/spec/unit/application/config_spec.rb +0 -1
  128. data/spec/unit/application/describe_spec.rb +6 -7
  129. data/spec/unit/application/device_spec.rb +379 -384
  130. data/spec/unit/application/doc_spec.rb +44 -46
  131. data/spec/unit/application/face_base_spec.rb +61 -62
  132. data/spec/unit/application/facts_spec.rb +3 -4
  133. data/spec/unit/application/filebucket_spec.rb +66 -74
  134. data/spec/unit/application/indirection_base_spec.rb +8 -6
  135. data/spec/unit/application/lookup_spec.rb +26 -26
  136. data/spec/unit/application/resource_spec.rb +42 -48
  137. data/spec/unit/application/ssl_spec.rb +9 -9
  138. data/spec/unit/application_spec.rb +82 -92
  139. data/spec/unit/capability_spec.rb +6 -6
  140. data/spec/unit/certificate_factory_spec.rb +3 -5
  141. data/spec/unit/configurer/downloader_spec.rb +20 -21
  142. data/spec/unit/configurer/fact_handler_spec.rb +2 -3
  143. data/spec/unit/configurer/plugin_handler_spec.rb +41 -8
  144. data/spec/unit/configurer_spec.rb +189 -192
  145. data/spec/unit/confine/exists_spec.rb +17 -15
  146. data/spec/unit/confine/false_spec.rb +5 -6
  147. data/spec/unit/confine/feature_spec.rb +7 -5
  148. data/spec/unit/confine/true_spec.rb +5 -6
  149. data/spec/unit/confine/variable_spec.rb +14 -15
  150. data/spec/unit/confine_collection_spec.rb +28 -29
  151. data/spec/unit/confine_spec.rb +13 -14
  152. data/spec/unit/confiner_spec.rb +10 -11
  153. data/spec/unit/context/trusted_information_spec.rb +1 -1
  154. data/spec/unit/daemon_spec.rb +35 -36
  155. data/spec/unit/data_providers/function_data_provider_spec.rb +0 -1
  156. data/spec/unit/data_providers/hiera_data_provider_spec.rb +0 -1
  157. data/spec/unit/datatypes_spec.rb +3 -4
  158. data/spec/unit/defaults_spec.rb +18 -13
  159. data/spec/unit/environments_spec.rb +7 -7
  160. data/spec/unit/etc_spec.rb +30 -32
  161. data/spec/unit/external/pson_spec.rb +0 -1
  162. data/spec/unit/face/catalog_spec.rb +0 -1
  163. data/spec/unit/face/config_spec.rb +31 -35
  164. data/spec/unit/face/epp_face_spec.rb +3 -4
  165. data/spec/unit/face/facts_spec.rb +5 -6
  166. data/spec/unit/face/generate_spec.rb +4 -5
  167. data/spec/unit/face/help_spec.rb +7 -8
  168. data/spec/unit/face/key_spec.rb +0 -1
  169. data/spec/unit/face/man_spec.rb +1 -2
  170. data/spec/unit/face/module/install_spec.rb +3 -5
  171. data/spec/unit/face/module/list_spec.rb +2 -12
  172. data/spec/unit/face/module/search_spec.rb +11 -9
  173. data/spec/unit/face/module/uninstall_spec.rb +4 -8
  174. data/spec/unit/face/node_spec.rb +23 -24
  175. data/spec/unit/face/parser_spec.rb +3 -3
  176. data/spec/unit/face/plugin_spec.rb +36 -9
  177. data/spec/unit/face/status_spec.rb +0 -1
  178. data/spec/unit/file_bucket/dipper_spec.rb +24 -20
  179. data/spec/unit/file_bucket/file_spec.rb +0 -2
  180. data/spec/unit/file_serving/base_spec.rb +14 -15
  181. data/spec/unit/file_serving/configuration/parser_spec.rb +27 -28
  182. data/spec/unit/file_serving/configuration_spec.rb +63 -66
  183. data/spec/unit/file_serving/content_spec.rb +10 -11
  184. data/spec/unit/file_serving/fileset_spec.rb +63 -58
  185. data/spec/unit/file_serving/http_metadata_spec.rb +8 -7
  186. data/spec/unit/file_serving/metadata_spec.rb +36 -36
  187. data/spec/unit/file_serving/mount/file_spec.rb +31 -32
  188. data/spec/unit/file_serving/mount/locales_spec.rb +23 -24
  189. data/spec/unit/file_serving/mount/modules_spec.rb +14 -15
  190. data/spec/unit/file_serving/mount/pluginfacts_spec.rb +23 -24
  191. data/spec/unit/file_serving/mount/plugins_spec.rb +23 -24
  192. data/spec/unit/file_serving/mount/tasks_spec.rb +14 -15
  193. data/spec/unit/file_serving/mount_spec.rb +0 -1
  194. data/spec/unit/file_serving/terminus_helper_spec.rb +37 -42
  195. data/spec/unit/file_serving/terminus_selector_spec.rb +12 -13
  196. data/spec/unit/file_system/uniquefile_spec.rb +4 -4
  197. data/spec/unit/file_system_spec.rb +4 -4
  198. data/spec/unit/forge/errors_spec.rb +1 -1
  199. data/spec/unit/forge/forge_spec.rb +13 -14
  200. data/spec/unit/forge/module_release_spec.rb +18 -18
  201. data/spec/unit/forge/repository_spec.rb +29 -30
  202. data/spec/unit/forge_spec.rb +15 -11
  203. data/spec/unit/functions/binary_file_spec.rb +3 -3
  204. data/spec/unit/functions/contain_spec.rb +0 -2
  205. data/spec/unit/functions/defined_spec.rb +0 -1
  206. data/spec/unit/functions/epp_spec.rb +2 -2
  207. data/spec/unit/functions/find_file_spec.rb +7 -7
  208. data/spec/unit/functions/include_spec.rb +0 -4
  209. data/spec/unit/functions/lookup_fixture_spec.rb +0 -1
  210. data/spec/unit/functions/lookup_spec.rb +1 -2
  211. data/spec/unit/functions/module_directory_spec.rb +12 -12
  212. data/spec/unit/functions/require_spec.rb +0 -3
  213. data/spec/unit/functions/shared.rb +5 -8
  214. data/spec/unit/functions/versioncmp_spec.rb +1 -2
  215. data/spec/unit/functions4_spec.rb +9 -10
  216. data/spec/unit/gettext/config_spec.rb +4 -4
  217. data/spec/unit/gettext/module_loading_spec.rb +7 -7
  218. data/spec/unit/graph/rb_tree_map_spec.rb +0 -2
  219. data/spec/unit/graph/relationship_graph_spec.rb +1 -2
  220. data/spec/unit/graph/simple_graph_spec.rb +9 -10
  221. data/spec/unit/hiera_puppet_spec.rb +20 -20
  222. data/spec/unit/indirector/catalog/compiler_spec.rb +147 -149
  223. data/spec/unit/indirector/catalog/json_spec.rb +1 -2
  224. data/spec/unit/indirector/catalog/msgpack_spec.rb +0 -1
  225. data/spec/unit/indirector/catalog/rest_spec.rb +0 -1
  226. data/spec/unit/indirector/catalog/store_configs_spec.rb +0 -1
  227. data/spec/unit/indirector/catalog/yaml_spec.rb +0 -1
  228. data/spec/unit/indirector/certificate/file_spec.rb +0 -1
  229. data/spec/unit/indirector/certificate/rest_spec.rb +8 -10
  230. data/spec/unit/indirector/certificate_request/file_spec.rb +0 -1
  231. data/spec/unit/indirector/certificate_request/rest_spec.rb +0 -1
  232. data/spec/unit/indirector/direct_file_server_spec.rb +17 -18
  233. data/spec/unit/indirector/envelope_spec.rb +1 -2
  234. data/spec/unit/indirector/exec_spec.rb +4 -5
  235. data/spec/unit/indirector/face_spec.rb +9 -9
  236. data/spec/unit/indirector/facts/facter_spec.rb +37 -43
  237. data/spec/unit/indirector/facts/network_device_spec.rb +8 -9
  238. data/spec/unit/indirector/facts/rest_spec.rb +7 -8
  239. data/spec/unit/indirector/facts/store_configs_spec.rb +0 -1
  240. data/spec/unit/indirector/facts/yaml_spec.rb +0 -1
  241. data/spec/unit/indirector/file_bucket_file/file_spec.rb +3 -4
  242. data/spec/unit/indirector/file_bucket_file/rest_spec.rb +0 -1
  243. data/spec/unit/indirector/file_bucket_file/selector_spec.rb +4 -5
  244. data/spec/unit/indirector/file_content/file_server_spec.rb +0 -1
  245. data/spec/unit/indirector/file_content/file_spec.rb +0 -1
  246. data/spec/unit/indirector/file_content/rest_spec.rb +0 -1
  247. data/spec/unit/indirector/file_content/selector_spec.rb +0 -1
  248. data/spec/unit/indirector/file_metadata/file_server_spec.rb +0 -1
  249. data/spec/unit/indirector/file_metadata/file_spec.rb +12 -13
  250. data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -1
  251. data/spec/unit/indirector/file_metadata/selector_spec.rb +0 -1
  252. data/spec/unit/indirector/file_server_spec.rb +87 -87
  253. data/spec/unit/indirector/indirection_spec.rb +242 -226
  254. data/spec/unit/indirector/json_spec.rb +7 -9
  255. data/spec/unit/indirector/key/file_spec.rb +21 -22
  256. data/spec/unit/indirector/memory_spec.rb +6 -7
  257. data/spec/unit/indirector/msgpack_spec.rb +7 -9
  258. data/spec/unit/indirector/node/exec_spec.rb +2 -3
  259. data/spec/unit/indirector/node/memory_spec.rb +2 -4
  260. data/spec/unit/indirector/node/msgpack_spec.rb +0 -1
  261. data/spec/unit/indirector/node/plain_spec.rb +2 -4
  262. data/spec/unit/indirector/node/rest_spec.rb +0 -1
  263. data/spec/unit/indirector/node/store_configs_spec.rb +0 -1
  264. data/spec/unit/indirector/node/yaml_spec.rb +0 -1
  265. data/spec/unit/indirector/none_spec.rb +5 -5
  266. data/spec/unit/indirector/plain_spec.rb +7 -8
  267. data/spec/unit/indirector/report/msgpack_spec.rb +0 -1
  268. data/spec/unit/indirector/report/processor_spec.rb +21 -22
  269. data/spec/unit/indirector/report/rest_spec.rb +11 -12
  270. data/spec/unit/indirector/report/yaml_spec.rb +0 -1
  271. data/spec/unit/indirector/request_spec.rb +11 -12
  272. data/spec/unit/indirector/resource/ral_spec.rb +47 -54
  273. data/spec/unit/indirector/resource/store_configs_spec.rb +0 -1
  274. data/spec/unit/indirector/rest_spec.rb +113 -110
  275. data/spec/unit/indirector/ssl_file_spec.rb +64 -65
  276. data/spec/unit/indirector/status/local_spec.rb +0 -1
  277. data/spec/unit/indirector/status/rest_spec.rb +0 -1
  278. data/spec/unit/indirector/store_configs_spec.rb +0 -1
  279. data/spec/unit/indirector/terminus_spec.rb +27 -27
  280. data/spec/unit/indirector/yaml_spec.rb +5 -6
  281. data/spec/unit/indirector_spec.rb +1 -2
  282. data/spec/unit/info_service_spec.rb +1 -1
  283. data/spec/unit/interface/action_builder_spec.rb +0 -1
  284. data/spec/unit/interface/action_manager_spec.rb +0 -1
  285. data/spec/unit/interface/action_spec.rb +2 -3
  286. data/spec/unit/interface/documentation_spec.rb +0 -1
  287. data/spec/unit/interface/face_collection_spec.rb +19 -12
  288. data/spec/unit/interface_spec.rb +3 -3
  289. data/spec/unit/man_spec.rb +3 -4
  290. data/spec/unit/module_spec.rb +46 -51
  291. data/spec/unit/module_tool/applications/installer_spec.rb +10 -11
  292. data/spec/unit/module_tool/applications/searcher_spec.rb +3 -3
  293. data/spec/unit/module_tool/applications/uninstaller_spec.rb +1 -2
  294. data/spec/unit/module_tool/applications/unpacker_spec.rb +13 -13
  295. data/spec/unit/module_tool/applications/upgrader_spec.rb +5 -5
  296. data/spec/unit/module_tool/install_directory_spec.rb +8 -8
  297. data/spec/unit/module_tool/installed_modules_spec.rb +3 -3
  298. data/spec/unit/module_tool/tar/gnu_spec.rb +6 -6
  299. data/spec/unit/module_tool/tar/mini_spec.rb +12 -12
  300. data/spec/unit/module_tool/tar_spec.rb +12 -13
  301. data/spec/unit/module_tool_spec.rb +7 -12
  302. data/spec/unit/network/auth_config_parser_spec.rb +11 -13
  303. data/spec/unit/network/authconfig_spec.rb +17 -18
  304. data/spec/unit/network/authorization_spec.rb +4 -5
  305. data/spec/unit/network/authstore_spec.rb +0 -1
  306. data/spec/unit/network/format_handler_spec.rb +0 -1
  307. data/spec/unit/network/format_spec.rb +9 -10
  308. data/spec/unit/network/format_support_spec.rb +28 -29
  309. data/spec/unit/network/formats_spec.rb +4 -5
  310. data/spec/unit/network/http/api/indirected_routes_spec.rb +24 -29
  311. data/spec/unit/network/http/api/master/v3/authorization_spec.rb +2 -2
  312. data/spec/unit/network/http/api/master/v3/environment_spec.rb +1 -1
  313. data/spec/unit/network/http/api/master/v3/environments_spec.rb +6 -7
  314. data/spec/unit/network/http/api_spec.rb +0 -2
  315. data/spec/unit/network/http/compression_spec.rb +21 -22
  316. data/spec/unit/network/http/connection_spec.rb +35 -35
  317. data/spec/unit/network/http/factory_spec.rb +5 -6
  318. data/spec/unit/network/http/handler_spec.rb +9 -18
  319. data/spec/unit/network/http/nocache_pool_spec.rb +6 -7
  320. data/spec/unit/network/http/pool_spec.rb +33 -34
  321. data/spec/unit/network/http/request_spec.rb +0 -2
  322. data/spec/unit/network/http/response_spec.rb +11 -13
  323. data/spec/unit/network/http/route_spec.rb +0 -1
  324. data/spec/unit/network/http/session_spec.rb +2 -3
  325. data/spec/unit/network/http/site_spec.rb +0 -1
  326. data/spec/unit/network/http_pool_spec.rb +19 -10
  327. data/spec/unit/network/http_spec.rb +0 -1
  328. data/spec/unit/network/resolver_spec.rb +25 -26
  329. data/spec/unit/network/rights_spec.rb +52 -53
  330. data/spec/unit/node/environment_spec.rb +14 -15
  331. data/spec/unit/node/facts_spec.rb +5 -7
  332. data/spec/unit/node_spec.rb +4 -10
  333. data/spec/unit/other/selinux_spec.rb +0 -1
  334. data/spec/unit/parameter/boolean_spec.rb +1 -2
  335. data/spec/unit/parameter/package_options_spec.rb +1 -2
  336. data/spec/unit/parameter/path_spec.rb +0 -1
  337. data/spec/unit/parameter/value_collection_spec.rb +0 -1
  338. data/spec/unit/parameter/value_spec.rb +0 -1
  339. data/spec/unit/parameter_spec.rb +9 -9
  340. data/spec/unit/parser/ast/block_expression_spec.rb +6 -8
  341. data/spec/unit/parser/ast/leaf_spec.rb +20 -21
  342. data/spec/unit/parser/compiler_spec.rb +84 -96
  343. data/spec/unit/parser/environment_compiler_spec.rb +7 -8
  344. data/spec/unit/parser/files_spec.rb +0 -1
  345. data/spec/unit/parser/functions/create_resources_spec.rb +1 -1
  346. data/spec/unit/parser/functions/digest_spec.rb +0 -1
  347. data/spec/unit/parser/functions/fail_spec.rb +1 -2
  348. data/spec/unit/parser/functions/file_spec.rb +13 -14
  349. data/spec/unit/parser/functions/fqdn_rand_spec.rb +5 -6
  350. data/spec/unit/parser/functions/generate_spec.rb +7 -8
  351. data/spec/unit/parser/functions/inline_template_spec.rb +0 -1
  352. data/spec/unit/parser/functions/regsubst_spec.rb +0 -1
  353. data/spec/unit/parser/functions/scanf_spec.rb +0 -1
  354. data/spec/unit/parser/functions/shellquote_spec.rb +0 -1
  355. data/spec/unit/parser/functions/split_spec.rb +0 -1
  356. data/spec/unit/parser/functions/sprintf_spec.rb +0 -1
  357. data/spec/unit/parser/functions/tag_spec.rb +1 -2
  358. data/spec/unit/parser/functions/tagged_spec.rb +2 -3
  359. data/spec/unit/parser/functions/template_spec.rb +13 -13
  360. data/spec/unit/parser/functions/versioncmp_spec.rb +1 -2
  361. data/spec/unit/parser/functions_spec.rb +6 -7
  362. data/spec/unit/parser/relationship_spec.rb +0 -1
  363. data/spec/unit/parser/resource_spec.rb +42 -42
  364. data/spec/unit/parser/scope_spec.rb +39 -35
  365. data/spec/unit/parser/templatewrapper_spec.rb +11 -12
  366. data/spec/unit/parser/type_loader_spec.rb +17 -19
  367. data/spec/unit/pops/adaptable_spec.rb +0 -1
  368. data/spec/unit/pops/benchmark_spec.rb +0 -1
  369. data/spec/unit/pops/evaluator/access_ops_spec.rb +0 -1
  370. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +0 -1
  371. data/spec/unit/pops/evaluator/basic_expressions_spec.rb +0 -1
  372. data/spec/unit/pops/evaluator/collections_ops_spec.rb +0 -1
  373. data/spec/unit/pops/evaluator/comparison_ops_spec.rb +0 -1
  374. data/spec/unit/pops/evaluator/conditionals_spec.rb +0 -1
  375. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +10 -11
  376. data/spec/unit/pops/evaluator/logical_ops_spec.rb +0 -1
  377. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +0 -1
  378. data/spec/unit/pops/evaluator/string_interpolation_spec.rb +0 -1
  379. data/spec/unit/pops/evaluator/variables_spec.rb +0 -1
  380. data/spec/unit/pops/factory_spec.rb +3 -4
  381. data/spec/unit/pops/issues_spec.rb +19 -20
  382. data/spec/unit/pops/loaders/loader_spec.rb +9 -5
  383. data/spec/unit/pops/loaders/loaders_spec.rb +31 -28
  384. data/spec/unit/pops/lookup/context_spec.rb +0 -1
  385. data/spec/unit/pops/lookup/interpolation_spec.rb +2 -3
  386. data/spec/unit/pops/merge_strategy_spec.rb +0 -1
  387. data/spec/unit/pops/migration_spec.rb +3 -5
  388. data/spec/unit/pops/model/model_spec.rb +0 -1
  389. data/spec/unit/pops/model/pn_transformer_spec.rb +0 -1
  390. data/spec/unit/pops/parser/locator_spec.rb +3 -6
  391. data/spec/unit/pops/parser/parse_application_spec.rb +0 -1
  392. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -1
  393. data/spec/unit/pops/parser/parse_calls_spec.rb +0 -1
  394. data/spec/unit/pops/parser/parse_capabilities_spec.rb +0 -1
  395. data/spec/unit/pops/parser/parse_conditionals_spec.rb +0 -1
  396. data/spec/unit/pops/parser/parse_containers_spec.rb +0 -1
  397. data/spec/unit/pops/parser/parse_plan_spec.rb +0 -1
  398. data/spec/unit/pops/parser/parse_resource_spec.rb +0 -1
  399. data/spec/unit/pops/parser/parse_site_spec.rb +0 -1
  400. data/spec/unit/pops/parser/pn_parser_spec.rb +0 -1
  401. data/spec/unit/pops/pn_spec.rb +0 -1
  402. data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -1
  403. data/spec/unit/pops/serialization/serialization_spec.rb +1 -1
  404. data/spec/unit/pops/serialization/to_from_hr_spec.rb +1 -1
  405. data/spec/unit/pops/types/recursion_guard_spec.rb +10 -10
  406. data/spec/unit/pops/types/ruby_generator_spec.rb +2 -2
  407. data/spec/unit/pops/types/type_asserter_spec.rb +2 -2
  408. data/spec/unit/pops/types/type_calculator_spec.rb +30 -30
  409. data/spec/unit/pops/types/type_parser_spec.rb +13 -13
  410. data/spec/unit/pops/validator/validator_spec.rb +1 -2
  411. data/spec/unit/pops/visitor_spec.rb +0 -1
  412. data/spec/unit/property/boolean_spec.rb +1 -1
  413. data/spec/unit/property/ensure_spec.rb +0 -1
  414. data/spec/unit/property/keyvalue_spec.rb +32 -34
  415. data/spec/unit/property/list_spec.rb +26 -27
  416. data/spec/unit/property/ordered_list_spec.rb +10 -14
  417. data/spec/unit/property_spec.rb +42 -43
  418. data/spec/unit/provider/aix_object_spec.rb +47 -45
  419. data/spec/unit/provider/command_spec.rb +9 -9
  420. data/spec/unit/provider/exec/posix_spec.rb +8 -9
  421. data/spec/unit/provider/exec/shell_spec.rb +0 -1
  422. data/spec/unit/provider/exec/windows_spec.rb +2 -4
  423. data/spec/unit/provider/exec_spec.rb +0 -1
  424. data/spec/unit/provider/file/posix_spec.rb +22 -24
  425. data/spec/unit/provider/file/windows_spec.rb +15 -17
  426. data/spec/unit/provider/group/aix_spec.rb +3 -2
  427. data/spec/unit/provider/group/groupadd_spec.rb +30 -26
  428. data/spec/unit/provider/group/ldap_spec.rb +18 -18
  429. data/spec/unit/provider/group/pw_spec.rb +11 -11
  430. data/spec/unit/provider/group/windows_adsi_spec.rb +54 -54
  431. data/spec/unit/provider/ldap_spec.rb +61 -62
  432. data/spec/unit/provider/nameservice/directoryservice_spec.rb +35 -36
  433. data/spec/unit/provider/nameservice_spec.rb +38 -40
  434. data/spec/unit/provider/package/aix_spec.rb +15 -15
  435. data/spec/unit/provider/package/appdmg_spec.rb +13 -13
  436. data/spec/unit/provider/package/apt_spec.rb +44 -27
  437. data/spec/unit/provider/package/aptitude_spec.rb +6 -7
  438. data/spec/unit/provider/package/aptrpm_spec.rb +7 -12
  439. data/spec/unit/provider/package/base_spec.rb +4 -4
  440. data/spec/unit/provider/package/dnf_spec.rb +18 -20
  441. data/spec/unit/provider/package/dpkg_spec.rb +52 -52
  442. data/spec/unit/provider/package/freebsd_spec.rb +11 -11
  443. data/spec/unit/provider/package/gem_spec.rb +51 -43
  444. data/spec/unit/provider/package/hpux_spec.rb +8 -8
  445. data/spec/unit/provider/package/macports_spec.rb +46 -42
  446. data/spec/unit/provider/package/nim_spec.rb +30 -39
  447. data/spec/unit/provider/package/openbsd_spec.rb +36 -39
  448. data/spec/unit/provider/package/opkg_spec.rb +23 -26
  449. data/spec/unit/provider/package/pacman_spec.rb +97 -118
  450. data/spec/unit/provider/package/pip_spec.rb +71 -72
  451. data/spec/unit/provider/package/pkg_spec.rb +113 -114
  452. data/spec/unit/provider/package/pkgdmg_spec.rb +65 -63
  453. data/spec/unit/provider/package/pkgin_spec.rb +10 -8
  454. data/spec/unit/provider/package/pkgng_spec.rb +21 -22
  455. data/spec/unit/provider/package/pkgutil_spec.rb +45 -49
  456. data/spec/unit/provider/package/portage_spec.rb +71 -75
  457. data/spec/unit/provider/package/puppet_gem_spec.rb +28 -8
  458. data/spec/unit/provider/package/rpm_spec.rb +53 -64
  459. data/spec/unit/provider/package/sun_spec.rb +16 -18
  460. data/spec/unit/provider/package/tdnf_spec.rb +2 -2
  461. data/spec/unit/provider/package/up2date_spec.rb +2 -4
  462. data/spec/unit/provider/package/urpmi_spec.rb +15 -17
  463. data/spec/unit/provider/package/windows/exe_package_spec.rb +12 -15
  464. data/spec/unit/provider/package/windows/msi_package_spec.rb +19 -22
  465. data/spec/unit/provider/package/windows/package_spec.rb +37 -42
  466. data/spec/unit/provider/package/windows_spec.rb +36 -32
  467. data/spec/unit/provider/package/yum_spec.rb +7 -7
  468. data/spec/unit/provider/package/zypper_spec.rb +87 -87
  469. data/spec/unit/provider/parsedfile_spec.rb +44 -45
  470. data/spec/unit/provider/service/base_spec.rb +4 -5
  471. data/spec/unit/provider/service/bsd_spec.rb +27 -29
  472. data/spec/unit/provider/service/daemontools_spec.rb +35 -35
  473. data/spec/unit/provider/service/debian_spec.rb +38 -38
  474. data/spec/unit/provider/service/freebsd_spec.rb +18 -18
  475. data/spec/unit/provider/service/gentoo_spec.rb +50 -55
  476. data/spec/unit/provider/service/init_spec.rb +53 -52
  477. data/spec/unit/provider/service/launchd_spec.rb +138 -116
  478. data/spec/unit/provider/service/openbsd_spec.rb +50 -50
  479. data/spec/unit/provider/service/openrc_spec.rb +43 -45
  480. data/spec/unit/provider/service/openwrt_spec.rb +26 -31
  481. data/spec/unit/provider/service/rcng_spec.rb +14 -14
  482. data/spec/unit/provider/service/redhat_spec.rb +45 -43
  483. data/spec/unit/provider/service/runit_spec.rb +29 -27
  484. data/spec/unit/provider/service/smf_spec.rb +74 -66
  485. data/spec/unit/provider/service/src_spec.rb +46 -47
  486. data/spec/unit/provider/service/systemd_spec.rb +113 -122
  487. data/spec/unit/provider/service/upstart_spec.rb +74 -71
  488. data/spec/unit/provider/service/windows_spec.rb +33 -41
  489. data/spec/unit/provider/user/aix_spec.rb +31 -31
  490. data/spec/unit/provider/user/directoryservice_spec.rb +109 -114
  491. data/spec/unit/provider/user/hpux_spec.rb +16 -16
  492. data/spec/unit/provider/user/ldap_spec.rb +57 -57
  493. data/spec/unit/provider/user/openbsd_spec.rb +10 -12
  494. data/spec/unit/provider/user/pw_spec.rb +37 -35
  495. data/spec/unit/provider/user/user_role_add_spec.rb +93 -93
  496. data/spec/unit/provider/user/useradd_spec.rb +93 -92
  497. data/spec/unit/provider/user/windows_adsi_spec.rb +59 -60
  498. data/spec/unit/provider_spec.rb +35 -35
  499. data/spec/unit/puppet_pal_2pec.rb +4 -5
  500. data/spec/unit/puppet_pal_spec.rb +0 -1
  501. data/spec/unit/puppet_spec.rb +6 -7
  502. data/spec/unit/relationship_spec.rb +0 -1
  503. data/spec/unit/reports/http_spec.rb +22 -24
  504. data/spec/unit/reports/store_spec.rb +3 -4
  505. data/spec/unit/reports_spec.rb +12 -14
  506. data/spec/unit/resource/capability_finder_spec.rb +15 -17
  507. data/spec/unit/resource/catalog_spec.rb +72 -68
  508. data/spec/unit/resource/status_spec.rb +6 -8
  509. data/spec/unit/resource/type_collection_spec.rb +17 -18
  510. data/spec/unit/resource/type_spec.rb +34 -35
  511. data/spec/unit/resource_spec.rb +36 -32
  512. data/spec/unit/rest/client_spec.rb +56 -25
  513. data/spec/unit/rest/route_spec.rb +5 -5
  514. data/spec/unit/scheduler/job_spec.rb +0 -1
  515. data/spec/unit/scheduler/scheduler_spec.rb +0 -1
  516. data/spec/unit/scheduler/splay_job_spec.rb +1 -2
  517. data/spec/unit/settings/array_setting_spec.rb +1 -1
  518. data/spec/unit/settings/autosign_setting_spec.rb +9 -9
  519. data/spec/unit/settings/certificate_revocation_setting_spec.rb +1 -1
  520. data/spec/unit/settings/config_file_spec.rb +0 -1
  521. data/spec/unit/settings/directory_setting_spec.rb +2 -7
  522. data/spec/unit/settings/duration_setting_spec.rb +1 -2
  523. data/spec/unit/settings/enum_setting_spec.rb +1 -1
  524. data/spec/unit/settings/environment_conf_spec.rb +4 -6
  525. data/spec/unit/settings/file_setting_spec.rb +44 -46
  526. data/spec/unit/settings/path_setting_spec.rb +1 -2
  527. data/spec/unit/settings/priority_setting_spec.rb +1 -2
  528. data/spec/unit/settings/string_setting_spec.rb +14 -15
  529. data/spec/unit/settings/terminus_setting_spec.rb +1 -2
  530. data/spec/unit/settings/value_translator_spec.rb +0 -1
  531. data/spec/unit/settings_spec.rb +228 -235
  532. data/spec/unit/ssl/base_spec.rb +14 -15
  533. data/spec/unit/ssl/certificate_request_spec.rb +62 -58
  534. data/spec/unit/ssl/certificate_spec.rb +23 -25
  535. data/spec/unit/ssl/digest_spec.rb +0 -1
  536. data/spec/unit/ssl/host_spec.rb +147 -130
  537. data/spec/unit/ssl/key_spec.rb +30 -31
  538. data/spec/unit/ssl/ssl_provider_spec.rb +24 -24
  539. data/spec/unit/ssl/state_machine_spec.rb +50 -58
  540. data/spec/unit/ssl/validator_spec.rb +43 -54
  541. data/spec/unit/ssl/verifier_spec.rb +10 -10
  542. data/spec/unit/task_spec.rb +44 -45
  543. data/spec/unit/transaction/additional_resource_generator_spec.rb +3 -5
  544. data/spec/unit/transaction/event_manager_spec.rb +87 -88
  545. data/spec/unit/transaction/event_spec.rb +16 -15
  546. data/spec/unit/transaction/persistence_spec.rb +16 -17
  547. data/spec/unit/transaction/report_spec.rb +11 -12
  548. data/spec/unit/transaction/resource_harness_spec.rb +28 -33
  549. data/spec/unit/transaction_spec.rb +100 -101
  550. data/spec/unit/type/component_spec.rb +0 -1
  551. data/spec/unit/type/exec_spec.rb +60 -56
  552. data/spec/unit/type/file/checksum_spec.rb +9 -10
  553. data/spec/unit/type/file/checksum_value_spec.rb +31 -32
  554. data/spec/unit/type/file/content_spec.rb +58 -61
  555. data/spec/unit/type/file/ctime_spec.rb +0 -1
  556. data/spec/unit/type/file/ensure_spec.rb +12 -13
  557. data/spec/unit/type/file/group_spec.rb +5 -7
  558. data/spec/unit/type/file/mode_spec.rb +4 -6
  559. data/spec/unit/type/file/mtime_spec.rb +0 -1
  560. data/spec/unit/type/file/owner_spec.rb +6 -8
  561. data/spec/unit/type/file/selinux_spec.rb +17 -19
  562. data/spec/unit/type/file/source_spec.rb +104 -101
  563. data/spec/unit/type/file/type_spec.rb +0 -1
  564. data/spec/unit/type/file_spec.rb +195 -185
  565. data/spec/unit/type/filebucket_spec.rb +4 -5
  566. data/spec/unit/type/group_spec.rb +6 -8
  567. data/spec/unit/type/noop_metaparam_spec.rb +1 -2
  568. data/spec/unit/type/package/package_settings_spec.rb +44 -23
  569. data/spec/unit/type/package_spec.rb +56 -57
  570. data/spec/unit/type/resources_spec.rb +72 -74
  571. data/spec/unit/type/schedule_spec.rb +24 -26
  572. data/spec/unit/type/service_spec.rb +49 -49
  573. data/spec/unit/type/stage_spec.rb +0 -1
  574. data/spec/unit/type/tidy_spec.rb +61 -62
  575. data/spec/unit/type/user_spec.rb +24 -25
  576. data/spec/unit/type/whit_spec.rb +0 -1
  577. data/spec/unit/type_spec.rb +55 -54
  578. data/spec/unit/util/at_fork_spec.rb +18 -19
  579. data/spec/unit/util/autoload_spec.rb +55 -56
  580. data/spec/unit/util/backups_spec.rb +34 -35
  581. data/spec/unit/util/character_encoding_spec.rb +5 -5
  582. data/spec/unit/util/checksums_spec.rb +38 -39
  583. data/spec/unit/util/colors_spec.rb +1 -2
  584. data/spec/unit/util/command_line_spec.rb +24 -25
  585. data/spec/unit/util/constant_inflector_spec.rb +0 -1
  586. data/spec/unit/util/diff_spec.rb +7 -8
  587. data/spec/unit/util/errors_spec.rb +0 -1
  588. data/spec/unit/util/execution_spec.rb +185 -161
  589. data/spec/unit/util/execution_stub_spec.rb +0 -1
  590. data/spec/unit/util/feature_spec.rb +23 -14
  591. data/spec/unit/util/filetype_spec.rb +49 -49
  592. data/spec/unit/util/http_proxy_spec.rb +12 -12
  593. data/spec/unit/util/inifile_spec.rb +26 -31
  594. data/spec/unit/util/json_lockfile_spec.rb +3 -5
  595. data/spec/unit/util/ldap/connection_spec.rb +26 -25
  596. data/spec/unit/util/ldap/generator_spec.rb +0 -1
  597. data/spec/unit/util/ldap/manager_spec.rb +102 -101
  598. data/spec/unit/util/lockfile_spec.rb +0 -1
  599. data/spec/unit/util/log/destinations_spec.rb +30 -33
  600. data/spec/unit/util/log_spec.rb +35 -36
  601. data/spec/unit/util/logging_spec.rb +58 -72
  602. data/spec/unit/util/metric_spec.rb +0 -1
  603. data/spec/unit/util/monkey_patches_spec.rb +7 -9
  604. data/spec/unit/util/multi_match_spec.rb +0 -1
  605. data/spec/unit/util/network_device/config_spec.rb +0 -1
  606. data/spec/unit/util/network_device/transport/base_spec.rb +5 -6
  607. data/spec/unit/util/network_device_spec.rb +7 -9
  608. data/spec/unit/util/package_spec.rb +0 -1
  609. data/spec/unit/util/pidlock_spec.rb +21 -22
  610. data/spec/unit/util/plist_spec.rb +40 -33
  611. data/spec/unit/util/posix_spec.rb +54 -51
  612. data/spec/unit/util/rdoc_spec.rb +9 -10
  613. data/spec/unit/util/reference_spec.rb +0 -1
  614. data/spec/unit/util/resource_template_spec.rb +20 -20
  615. data/spec/unit/util/retry_action_spec.rb +7 -8
  616. data/spec/unit/util/rubygems_spec.rb +7 -8
  617. data/spec/unit/util/run_mode_spec.rb +3 -4
  618. data/spec/unit/util/selinux_spec.rb +79 -72
  619. data/spec/unit/util/splayer_spec.rb +8 -9
  620. data/spec/unit/util/ssl_spec.rb +0 -1
  621. data/spec/unit/util/storage_spec.rb +3 -4
  622. data/spec/unit/util/suidmanager_spec.rb +45 -54
  623. data/spec/unit/util/symbolic_file_mode_spec.rb +0 -1
  624. data/spec/unit/util/tag_set_spec.rb +0 -1
  625. data/spec/unit/util/tagging_spec.rb +0 -1
  626. data/spec/unit/util/terminal_spec.rb +9 -10
  627. data/spec/unit/util/user_attr_spec.rb +1 -2
  628. data/spec/unit/util/warnings_spec.rb +3 -4
  629. data/spec/unit/util/watcher/periodic_watcher_spec.rb +2 -2
  630. data/spec/unit/util/watcher_spec.rb +51 -21
  631. data/spec/unit/util/windows/access_control_entry_spec.rb +0 -1
  632. data/spec/unit/util/windows/access_control_list_spec.rb +0 -1
  633. data/spec/unit/util/windows/adsi_spec.rb +136 -138
  634. data/spec/unit/util/windows/api_types_spec.rb +0 -1
  635. data/spec/unit/util/windows/eventlog_spec.rb +9 -12
  636. data/spec/unit/util/windows/file_spec.rb +0 -1
  637. data/spec/unit/util/windows/root_certs_spec.rb +1 -2
  638. data/spec/unit/util/windows/security_descriptor_spec.rb +0 -2
  639. data/spec/unit/util/windows/service_spec.rb +66 -68
  640. data/spec/unit/util/windows/sid_spec.rb +11 -13
  641. data/spec/unit/util/windows/string_spec.rb +0 -1
  642. data/spec/unit/util_spec.rb +55 -57
  643. data/spec/unit/version_spec.rb +6 -6
  644. data/spec/unit/x509/cert_provider_spec.rb +14 -14
  645. data/spec/unit/x509/pem_store_spec.rb +5 -5
  646. metadata +2 -2
@@ -1,4 +1,3 @@
1
- #! /usr/bin/env ruby
2
1
  require 'spec_helper'
3
2
 
4
3
  require 'puppet/file_serving/content'
@@ -25,7 +24,7 @@ describe Puppet::FileServing::Content do
25
24
  it "should not retrieve and store its contents when its attributes are collected" do
26
25
  content = Puppet::FileServing::Content.new(path)
27
26
 
28
- File.expects(:read).with(path).never
27
+ expect(File).not_to receive(:read).with(path)
29
28
  content.collect
30
29
 
31
30
  expect(content.instance_variable_get("@content")).to be_nil
@@ -47,10 +46,10 @@ describe Puppet::FileServing::Content do
47
46
  end
48
47
 
49
48
  it "should create an instance with a fake file name and correct content when converting from binary" do
50
- instance = mock 'instance'
51
- Puppet::FileServing::Content.expects(:new).with("/this/is/a/fake/path").returns instance
49
+ instance = double('instance')
50
+ expect(Puppet::FileServing::Content).to receive(:new).with("/this/is/a/fake/path").and_return(instance)
52
51
 
53
- instance.expects(:content=).with "foo/bar"
52
+ expect(instance).to receive(:content=).with("foo/bar")
54
53
 
55
54
  expect(Puppet::FileServing::Content.from_binary("foo/bar")).to equal(instance)
56
55
  end
@@ -58,7 +57,7 @@ describe Puppet::FileServing::Content do
58
57
  it "should return an opened File when converted to binary" do
59
58
  content = Puppet::FileServing::Content.new(path)
60
59
 
61
- File.expects(:new).with(path, "rb").returns :file
60
+ expect(File).to receive(:new).with(path, "rb").and_return(:file)
62
61
 
63
62
  expect(content.to_binary).to eq(:file)
64
63
  end
@@ -70,7 +69,7 @@ describe Puppet::FileServing::Content, "when returning the contents" do
70
69
 
71
70
  it "should fail if the file is a symlink and links are set to :manage" do
72
71
  content.links = :manage
73
- Puppet::FileSystem.expects(:lstat).with(path).returns stub("stat", :ftype => "symlink")
72
+ expect(Puppet::FileSystem).to receive(:lstat).with(path).and_return(double("stat", :ftype => "symlink"))
74
73
  expect { content.content }.to raise_error(ArgumentError)
75
74
  end
76
75
 
@@ -84,14 +83,14 @@ describe Puppet::FileServing::Content, "when returning the contents" do
84
83
  end
85
84
 
86
85
  it "should return the contents of the path if the file exists" do
87
- Puppet::FileSystem.expects(:stat).with(path).returns(stub('stat', :ftype => 'file'))
88
- Puppet::FileSystem.expects(:binread).with(path).returns(:mycontent)
86
+ expect(Puppet::FileSystem).to receive(:stat).with(path).and_return(double('stat', :ftype => 'file'))
87
+ expect(Puppet::FileSystem).to receive(:binread).with(path).and_return(:mycontent)
89
88
  expect(content.content).to eq(:mycontent)
90
89
  end
91
90
 
92
91
  it "should cache the returned contents" do
93
- Puppet::FileSystem.expects(:stat).with(path).returns(stub('stat', :ftype => 'file'))
94
- Puppet::FileSystem.expects(:binread).with(path).returns(:mycontent)
92
+ expect(Puppet::FileSystem).to receive(:stat).with(path).and_return(double('stat', :ftype => 'file'))
93
+ expect(Puppet::FileSystem).to receive(:binread).with(path).and_return(:mycontent)
95
94
  content.content
96
95
  # The second run would throw a failure if the content weren't being cached.
97
96
  content.content
@@ -1,4 +1,3 @@
1
- #! /usr/bin/env ruby
2
1
  require 'spec_helper'
3
2
 
4
3
  require 'puppet/file_serving/fileset'
@@ -18,49 +17,49 @@ describe Puppet::FileServing::Fileset do
18
17
 
19
18
  it "removes a trailing file path separator" do
20
19
  path_with_separator = "#{somefile}#{File::SEPARATOR}"
21
- Puppet::FileSystem.expects(:lstat).with(somefile).returns stub('stat')
20
+ expect(Puppet::FileSystem).to receive(:lstat).with(somefile).and_return(double('stat'))
22
21
  fileset = Puppet::FileServing::Fileset.new(path_with_separator)
23
22
  expect(fileset.path).to eq(somefile)
24
23
  end
25
24
 
26
25
  it "can be created from the root directory" do
27
26
  path = File.expand_path(File::SEPARATOR)
28
- Puppet::FileSystem.expects(:lstat).with(path).returns stub('stat')
27
+ expect(Puppet::FileSystem).to receive(:lstat).with(path).and_return(double('stat'))
29
28
  fileset = Puppet::FileServing::Fileset.new(path)
30
29
  expect(fileset.path).to eq(path)
31
30
  end
32
31
 
33
32
  it "fails if its path does not exist" do
34
- Puppet::FileSystem.expects(:lstat).with(somefile).raises(Errno::ENOENT)
33
+ expect(Puppet::FileSystem).to receive(:lstat).with(somefile).and_raise(Errno::ENOENT)
35
34
  expect { Puppet::FileServing::Fileset.new(somefile) }.to raise_error(ArgumentError, "Fileset paths must exist")
36
35
  end
37
36
 
38
37
  it "accepts a 'recurse' option" do
39
- Puppet::FileSystem.expects(:lstat).with(somefile).returns stub('stat')
38
+ expect(Puppet::FileSystem).to receive(:lstat).with(somefile).and_return(double('stat'))
40
39
  set = Puppet::FileServing::Fileset.new(somefile, :recurse => true)
41
40
  expect(set.recurse).to be_truthy
42
41
  end
43
42
 
44
43
  it "accepts a 'recurselimit' option" do
45
- Puppet::FileSystem.expects(:lstat).with(somefile).returns stub('stat')
44
+ expect(Puppet::FileSystem).to receive(:lstat).with(somefile).and_return(double('stat'))
46
45
  set = Puppet::FileServing::Fileset.new(somefile, :recurselimit => 3)
47
46
  expect(set.recurselimit).to eq(3)
48
47
  end
49
48
 
50
49
  it "accepts an 'ignore' option" do
51
- Puppet::FileSystem.expects(:lstat).with(somefile).returns stub('stat')
50
+ expect(Puppet::FileSystem).to receive(:lstat).with(somefile).and_return(double('stat'))
52
51
  set = Puppet::FileServing::Fileset.new(somefile, :ignore => ".svn")
53
52
  expect(set.ignore).to eq([".svn"])
54
53
  end
55
54
 
56
55
  it "accepts a 'links' option" do
57
- Puppet::FileSystem.expects(:lstat).with(somefile).returns stub('stat')
56
+ expect(Puppet::FileSystem).to receive(:lstat).with(somefile).and_return(double('stat'))
58
57
  set = Puppet::FileServing::Fileset.new(somefile, :links => :manage)
59
58
  expect(set.links).to eq(:manage)
60
59
  end
61
60
 
62
61
  it "accepts a 'checksum_type' option" do
63
- Puppet::FileSystem.expects(:lstat).with(somefile).returns stub('stat')
62
+ expect(Puppet::FileSystem).to receive(:lstat).with(somefile).and_return(double('stat'))
64
63
  set = Puppet::FileServing::Fileset.new(somefile, :checksum_type => :test)
65
64
  expect(set.checksum_type).to eq(:test)
66
65
  end
@@ -70,22 +69,22 @@ describe Puppet::FileServing::Fileset do
70
69
  end
71
70
 
72
71
  it "defaults to 'false' for recurse" do
73
- Puppet::FileSystem.expects(:lstat).with(somefile).returns stub('stat')
72
+ expect(Puppet::FileSystem).to receive(:lstat).with(somefile).and_return(double('stat'))
74
73
  expect(Puppet::FileServing::Fileset.new(somefile).recurse).to eq(false)
75
74
  end
76
75
 
77
76
  it "defaults to :infinite for recurselimit" do
78
- Puppet::FileSystem.expects(:lstat).with(somefile).returns stub('stat')
77
+ expect(Puppet::FileSystem).to receive(:lstat).with(somefile).and_return(double('stat'))
79
78
  expect(Puppet::FileServing::Fileset.new(somefile).recurselimit).to eq(:infinite)
80
79
  end
81
80
 
82
81
  it "defaults to an empty ignore list" do
83
- Puppet::FileSystem.expects(:lstat).with(somefile).returns stub('stat')
82
+ expect(Puppet::FileSystem).to receive(:lstat).with(somefile).and_return(double('stat'))
84
83
  expect(Puppet::FileServing::Fileset.new(somefile).ignore).to eq([])
85
84
  end
86
85
 
87
86
  it "defaults to :manage for links" do
88
- Puppet::FileSystem.expects(:lstat).with(somefile).returns stub('stat')
87
+ expect(Puppet::FileSystem).to receive(:lstat).with(somefile).and_return(double('stat'))
89
88
  expect(Puppet::FileServing::Fileset.new(somefile).links).to eq(:manage)
90
89
  end
91
90
 
@@ -93,7 +92,7 @@ describe Puppet::FileServing::Fileset do
93
92
  let(:values) { { :links => :manage, :ignore => %w{a b}, :recurse => true, :recurselimit => 1234 } }
94
93
 
95
94
  before :each do
96
- Puppet::FileSystem.expects(:lstat).with(somefile).returns stub('stat')
95
+ expect(Puppet::FileSystem).to receive(:lstat).with(somefile).and_return(double('stat'))
97
96
  end
98
97
 
99
98
  [:recurse, :recurselimit, :ignore, :links].each do |option|
@@ -130,16 +129,16 @@ describe Puppet::FileServing::Fileset do
130
129
  context "when recursing" do
131
130
  before do
132
131
  @path = make_absolute("/my/path")
133
- Puppet::FileSystem.stubs(:lstat).with(@path).returns stub('stat', :directory? => true)
132
+ allow(Puppet::FileSystem).to receive(:lstat).with(@path).and_return(double('stat', :directory? => true))
134
133
 
135
134
  @fileset = Puppet::FileServing::Fileset.new(@path)
136
135
 
137
- @dirstat = stub 'dirstat', :directory? => true
138
- @filestat = stub 'filestat', :directory? => false
136
+ @dirstat = double('dirstat', :directory? => true)
137
+ @filestat = double('filestat', :directory? => false)
139
138
  end
140
139
 
141
140
  def mock_dir_structure(path, stat_method = :lstat)
142
- Puppet::FileSystem.stubs(stat_method).with(path).returns @dirstat
141
+ allow(Puppet::FileSystem).to receive(stat_method).with(path).and_return(@dirstat)
143
142
 
144
143
  # Keep track of the files we're stubbing.
145
144
  @files = %w{.}
@@ -147,53 +146,59 @@ describe Puppet::FileServing::Fileset do
147
146
  top_names = %w{one two .svn CVS}
148
147
  sub_names = %w{file1 file2 .svn CVS 0 false}
149
148
 
150
- Dir.stubs(:entries).with(path, encoding: Encoding::UTF_8).returns(top_names)
149
+ allow(Dir).to receive(:entries).with(path, encoding: Encoding::UTF_8).and_return(top_names)
151
150
  top_names.each do |subdir|
152
151
  @files << subdir # relative path
153
152
  subpath = File.join(path, subdir)
154
- Puppet::FileSystem.stubs(stat_method).with(subpath).returns @dirstat
155
- Dir.stubs(:entries).with(subpath, encoding: Encoding::UTF_8).returns(sub_names)
153
+ allow(Puppet::FileSystem).to receive(stat_method).with(subpath).and_return(@dirstat)
154
+ allow(Dir).to receive(:entries).with(subpath, encoding: Encoding::UTF_8).and_return(sub_names)
156
155
  sub_names.each do |file|
157
156
  @files << File.join(subdir, file) # relative path
158
157
  subfile_path = File.join(subpath, file)
159
- Puppet::FileSystem.stubs(stat_method).with(subfile_path).returns(@filestat)
158
+ allow(Puppet::FileSystem).to receive(stat_method).with(subfile_path).and_return(@filestat)
160
159
  end
161
160
  end
162
161
  end
163
162
 
164
- MockStat = Struct.new(:path, :directory) do
165
- # struct doesn't support thing ending in ?
166
- def directory?
167
- directory
163
+ def setup_mocks_for_dir(mock_dir, base_path)
164
+ path = File.join(base_path, mock_dir.name)
165
+ allow(Puppet::FileSystem).to receive(:lstat).with(path).and_return(MockStat.new(path, true))
166
+ allow(Dir).to receive(:entries).with(path, encoding: Encoding::UTF_8).and_return(['.', '..'] + mock_dir.entries.map(&:name))
167
+ mock_dir.entries.each do |entry|
168
+ setup_mocks_for_entry(entry, path)
168
169
  end
169
170
  end
170
171
 
171
- MockDirectory = Struct.new(:name, :entries) do
172
- def mock(base_path)
173
- extend Mocha::API
174
- path = File.join(base_path, name)
175
- Puppet::FileSystem.stubs(:lstat).with(path).returns MockStat.new(path, true)
176
- Dir.stubs(:entries).with(path, encoding: Encoding::UTF_8).returns(['.', '..'] + entries.map(&:name))
177
- entries.each do |entry|
178
- entry.mock(path)
179
- end
172
+ def setup_mocks_for_file(mock_file, base_path)
173
+ path = File.join(base_path, mock_file.name)
174
+ allow(Puppet::FileSystem).to receive(:lstat).with(path).and_return(MockStat.new(path, false))
175
+ end
176
+
177
+ def setup_mocks_for_entry(entry, base_path)
178
+ case entry
179
+ when MockDirectory
180
+ setup_mocks_for_dir(entry, base_path)
181
+ when MockFile
182
+ setup_mocks_for_file(entry, base_path)
180
183
  end
181
184
  end
182
185
 
183
- MockFile = Struct.new(:name) do
184
- def mock(base_path)
185
- extend Mocha::API
186
- path = File.join(base_path, name)
187
- Puppet::FileSystem.stubs(:lstat).with(path).returns MockStat.new(path, false)
186
+ MockStat = Struct.new(:path, :directory) do
187
+ # struct doesn't support thing ending in ?
188
+ def directory?
189
+ directory
188
190
  end
189
191
  end
190
192
 
193
+ MockDirectory = Struct.new(:name, :entries)
194
+ MockFile = Struct.new(:name)
195
+
191
196
  it "doesn't ignore pending directories when the last entry at the top level is a file" do
192
197
  structure = MockDirectory.new('path',
193
198
  [MockDirectory.new('dir1',
194
199
  [MockDirectory.new('a', [MockFile.new('f')])]),
195
200
  MockFile.new('file')])
196
- structure.mock(make_absolute('/your'))
201
+ setup_mocks_for_dir(structure, make_absolute('/your'))
197
202
  fileset = Puppet::FileServing::Fileset.new(make_absolute('/your/path'))
198
203
  fileset.recurse = true
199
204
  fileset.links = :manage
@@ -276,8 +281,8 @@ describe Puppet::FileServing::Fileset do
276
281
 
277
282
  it "works when paths have regexp significant characters" do
278
283
  @path = make_absolute("/my/path/rV1x2DafFr0R6tGG+1bbk++++TM")
279
- stat = stub('dir_stat', :directory? => true)
280
- Puppet::FileSystem.expects(:lstat).with(@path).returns stub(@path, :stat => stat, :lstat => stat)
284
+ stat = double('dir_stat', :directory? => true)
285
+ expect(Puppet::FileSystem).to receive(:lstat).with(@path).and_return(double(@path, :stat => stat, :lstat => stat))
281
286
  @fileset = Puppet::FileServing::Fileset.new(@path)
282
287
  mock_dir_structure(@path)
283
288
  @fileset.recurse = true
@@ -287,15 +292,15 @@ describe Puppet::FileServing::Fileset do
287
292
 
288
293
  it "manages the links to missing files" do
289
294
  path = make_absolute("/my/path")
290
- stat = stub 'stat', :directory? => true
295
+ stat = double('stat', :directory? => true)
291
296
 
292
- Puppet::FileSystem.expects(:stat).with(path).returns stat
293
- Puppet::FileSystem.expects(:lstat).with(path).returns stat
297
+ expect(Puppet::FileSystem).to receive(:stat).with(path).and_return(stat)
298
+ expect(Puppet::FileSystem).to receive(:lstat).with(path).and_return(stat)
294
299
 
295
300
  link_path = File.join(path, "mylink")
296
- Puppet::FileSystem.expects(:stat).with(link_path).raises(Errno::ENOENT)
301
+ expect(Puppet::FileSystem).to receive(:stat).with(link_path).and_raise(Errno::ENOENT)
297
302
 
298
- Dir.stubs(:entries).with(path, encoding: Encoding::UTF_8).returns(["mylink"])
303
+ allow(Dir).to receive(:entries).with(path, encoding: Encoding::UTF_8).and_return(["mylink"])
299
304
 
300
305
  fileset = Puppet::FileServing::Fileset.new(path)
301
306
 
@@ -308,20 +313,20 @@ describe Puppet::FileServing::Fileset do
308
313
  context "when merging other filesets" do
309
314
  before do
310
315
  @paths = [make_absolute("/first/path"), make_absolute("/second/path"), make_absolute("/third/path")]
311
- Puppet::FileSystem.stubs(:lstat).returns stub('stat', :directory? => false)
316
+ allow(Puppet::FileSystem).to receive(:lstat).and_return(double('stat', :directory? => false))
312
317
 
313
318
  @filesets = @paths.collect do |path|
314
- Puppet::FileSystem.stubs(:lstat).with(path).returns stub('stat', :directory? => true)
319
+ allow(Puppet::FileSystem).to receive(:lstat).with(path).and_return(double('stat', :directory? => true))
315
320
  Puppet::FileServing::Fileset.new(path, :recurse => true)
316
321
  end
317
322
 
318
- Dir.stubs(:entries).returns []
323
+ allow(Dir).to receive(:entries).and_return([])
319
324
  end
320
325
 
321
326
  it "returns a hash of all files in each fileset with the value being the base path" do
322
- Dir.expects(:entries).with(make_absolute("/first/path"), encoding: Encoding::UTF_8).returns(%w{one uno})
323
- Dir.expects(:entries).with(make_absolute("/second/path"), encoding: Encoding::UTF_8).returns(%w{two dos})
324
- Dir.expects(:entries).with(make_absolute("/third/path"), encoding: Encoding::UTF_8).returns(%w{three tres})
327
+ expect(Dir).to receive(:entries).with(make_absolute("/first/path"), encoding: Encoding::UTF_8).and_return(%w{one uno})
328
+ expect(Dir).to receive(:entries).with(make_absolute("/second/path"), encoding: Encoding::UTF_8).and_return(%w{two dos})
329
+ expect(Dir).to receive(:entries).with(make_absolute("/third/path"), encoding: Encoding::UTF_8).and_return(%w{three tres})
325
330
 
326
331
  expect(Puppet::FileServing::Fileset.merge(*@filesets)).to eq({
327
332
  "." => make_absolute("/first/path"),
@@ -335,15 +340,15 @@ describe Puppet::FileServing::Fileset do
335
340
  end
336
341
 
337
342
  it "includes the base directory from the first fileset" do
338
- Dir.expects(:entries).with(make_absolute("/first/path"), encoding: Encoding::UTF_8).returns(%w{one})
339
- Dir.expects(:entries).with(make_absolute("/second/path"), encoding: Encoding::UTF_8).returns(%w{two})
343
+ expect(Dir).to receive(:entries).with(make_absolute("/first/path"), encoding: Encoding::UTF_8).and_return(%w{one})
344
+ expect(Dir).to receive(:entries).with(make_absolute("/second/path"), encoding: Encoding::UTF_8).and_return(%w{two})
340
345
 
341
346
  expect(Puppet::FileServing::Fileset.merge(*@filesets)["."]).to eq(make_absolute("/first/path"))
342
347
  end
343
348
 
344
349
  it "uses the base path of the first found file when relative file paths conflict" do
345
- Dir.expects(:entries).with(make_absolute("/first/path"), encoding: Encoding::UTF_8).returns(%w{one})
346
- Dir.expects(:entries).with(make_absolute("/second/path"), encoding: Encoding::UTF_8).returns(%w{one})
350
+ expect(Dir).to receive(:entries).with(make_absolute("/first/path"), encoding: Encoding::UTF_8).and_return(%w{one})
351
+ expect(Dir).to receive(:entries).with(make_absolute("/second/path"), encoding: Encoding::UTF_8).and_return(%w{one})
347
352
 
348
353
  expect(Puppet::FileServing::Fileset.merge(*@filesets)["one"]).to eq(make_absolute("/first/path"))
349
354
  end
@@ -1,4 +1,3 @@
1
- #! /usr/bin/env ruby
2
1
  require 'spec_helper'
3
2
  require 'puppet/file_serving/http_metadata'
4
3
  require 'matchers/json'
@@ -32,8 +31,8 @@ describe Puppet::FileServing::HttpMetadata do
32
31
 
33
32
  context "with no Last-Modified or Content-MD5 header from the server" do
34
33
  before do
35
- http_response.stubs(:[]).with('last-modified').returns nil
36
- http_response.stubs(:[]).with('content-md5').returns nil
34
+ allow(http_response).to receive(:[]).with('last-modified').and_return(nil)
35
+ allow(http_response).to receive(:[]).with('content-md5').and_return(nil)
37
36
  end
38
37
 
39
38
  it "should use :mtime as the checksum type, based on current time" do
@@ -51,13 +50,14 @@ describe Puppet::FileServing::HttpMetadata do
51
50
 
52
51
  context "with a Last-Modified header from the server" do
53
52
  let(:time) { Time.now.utc }
53
+
54
54
  before do
55
- http_response.stubs(:[]).with('content-md5').returns nil
55
+ allow(http_response).to receive(:[]).with('content-md5').and_return(nil)
56
56
  end
57
57
 
58
58
  it "should use :mtime as the checksum type, based on Last-Modified" do
59
59
  # HTTP uses "GMT" not "UTC"
60
- http_response.stubs(:[]).with('last-modified').returns(time.strftime("%a, %d %b %Y %T GMT"))
60
+ allow(http_response).to receive(:[]).with('last-modified').and_return(time.strftime("%a, %d %b %Y %T GMT"))
61
61
  metadata = described_class.new(http_response)
62
62
  metadata.collect
63
63
  expect( metadata.checksum_type ).to eq :mtime
@@ -69,9 +69,10 @@ describe Puppet::FileServing::HttpMetadata do
69
69
  let(:input) { Time.now.to_s }
70
70
  let(:base64) { Digest::MD5.new.base64digest input }
71
71
  let(:hex) { Digest::MD5.new.hexdigest input }
72
+
72
73
  before do
73
- http_response.stubs(:[]).with('last-modified').returns nil
74
- http_response.stubs(:[]).with('content-md5').returns base64
74
+ allow(http_response).to receive(:[]).with('last-modified').and_return(nil)
75
+ allow(http_response).to receive(:[]).with('content-md5').and_return(base64)
75
76
  end
76
77
 
77
78
  it "should use the md5 checksum" do
@@ -1,4 +1,3 @@
1
- #! /usr/bin/env ruby
2
1
  require 'spec_helper'
3
2
  require 'puppet/file_serving/metadata'
4
3
  require 'matchers/json'
@@ -184,14 +183,14 @@ describe Puppet::FileServing::Metadata, :uses_checksums => true do
184
183
 
185
184
  it "should give a mtime checksum when checksum_type is set" do
186
185
  metadata.checksum_type = "mtime"
187
- metadata.expects(:mtime_file).returns(time)
186
+ expect(metadata).to receive(:mtime_file).and_return(time)
188
187
  metadata.collect
189
188
  expect(metadata.checksum).to eq("{mtime}#{time}")
190
189
  end
191
190
 
192
191
  it "should give a ctime checksum when checksum_type is set" do
193
192
  metadata.checksum_type = "ctime"
194
- metadata.expects(:ctime_file).returns(time)
193
+ expect(metadata).to receive(:ctime_file).and_return(time)
195
194
  metadata.collect
196
195
  expect(metadata.checksum).to eq("{ctime}#{time}")
197
196
  end
@@ -218,7 +217,7 @@ describe Puppet::FileServing::Metadata, :uses_checksums => true do
218
217
  let(:time) { Time.now }
219
218
 
220
219
  before :each do
221
- metadata.expects(:ctime_file).returns(time)
220
+ expect(metadata).to receive(:ctime_file).and_return(time)
222
221
  end
223
222
 
224
223
  it "should only use checksums of type 'ctime' for directories" do
@@ -228,7 +227,7 @@ describe Puppet::FileServing::Metadata, :uses_checksums => true do
228
227
 
229
228
  it "should only use checksums of type 'ctime' for directories even if checksum_type set" do
230
229
  metadata.checksum_type = "mtime"
231
- metadata.expects(:mtime_file).never
230
+ expect(metadata).not_to receive(:mtime_file)
232
231
  metadata.collect
233
232
  expect(metadata.checksum).to eq("{ctime}#{time}")
234
233
  end
@@ -249,9 +248,9 @@ describe Puppet::FileServing::Metadata, :uses_checksums => true do
249
248
  path = tmpfile('foo')
250
249
  FileUtils.touch(path)
251
250
 
252
- Puppet::Util::Windows::Security.stubs(:get_owner).with(path).raises(invalid_error)
253
- Puppet::Util::Windows::Security.stubs(:get_group).with(path).raises(invalid_error)
254
- Puppet::Util::Windows::Security.stubs(:get_mode).with(path).raises(invalid_error)
251
+ allow(Puppet::Util::Windows::Security).to receive(:get_owner).with(path).and_raise(invalid_error)
252
+ allow(Puppet::Util::Windows::Security).to receive(:get_group).with(path).and_raise(invalid_error)
253
+ allow(Puppet::Util::Windows::Security).to receive(:get_mode).with(path).and_raise(invalid_error)
255
254
 
256
255
  stat = Puppet::FileSystem.stat(path)
257
256
 
@@ -267,9 +266,9 @@ describe Puppet::FileServing::Metadata, :uses_checksums => true do
267
266
  path = tmpfile('bar')
268
267
  FileUtils.touch(path)
269
268
 
270
- Puppet::Util::Windows::Security.stubs(:get_owner).with(path, :use).raises(invalid_error)
271
- Puppet::Util::Windows::Security.stubs(:get_group).with(path, :use).raises(invalid_error)
272
- Puppet::Util::Windows::Security.stubs(:get_mode).with(path, :use).raises(invalid_error)
269
+ allow(Puppet::Util::Windows::Security).to receive(:get_owner).with(path, :use).and_raise(invalid_error)
270
+ allow(Puppet::Util::Windows::Security).to receive(:get_group).with(path, :use).and_raise(invalid_error)
271
+ allow(Puppet::Util::Windows::Security).to receive(:get_mode).with(path, :use).and_raise(invalid_error)
273
272
 
274
273
  stat = Puppet::FileSystem.stat(path)
275
274
 
@@ -348,8 +347,8 @@ describe Puppet::FileServing::Metadata, :uses_checksums => true do
348
347
  let(:group) {20}
349
348
 
350
349
  before :each do
351
- File::Stat.any_instance.stubs(:uid).returns owner
352
- File::Stat.any_instance.stubs(:gid).returns group
350
+ allow_any_instance_of(File::Stat).to receive(:uid).and_return(owner)
351
+ allow_any_instance_of(File::Stat).to receive(:gid).and_return(group)
353
352
  end
354
353
 
355
354
  describe "when collecting attributes when managing files" do
@@ -394,8 +393,8 @@ describe Puppet::FileServing::Metadata, :uses_checksums => true do
394
393
 
395
394
  before :each do
396
395
  require 'puppet/util/windows/security'
397
- Puppet::Util::Windows::Security.stubs(:get_owner).returns owner
398
- Puppet::Util::Windows::Security.stubs(:get_group).returns group
396
+ allow(Puppet::Util::Windows::Security).to receive(:get_owner).and_return(owner)
397
+ allow(Puppet::Util::Windows::Security).to receive(:get_group).and_return(group)
399
398
  end
400
399
 
401
400
  describe "when collecting attributes when managing files" do
@@ -441,19 +440,19 @@ describe Puppet::FileServing::Metadata, :uses_checksums => true do
441
440
  end
442
441
 
443
442
  it "should default owner" do
444
- Puppet::Util::Windows::Security.stubs(:get_owner).returns nil
443
+ allow(Puppet::Util::Windows::Security).to receive(:get_owner).and_return(nil)
445
444
 
446
445
  expect(metadata.owner).to eq('S-1-5-32-544')
447
446
  end
448
447
 
449
448
  it "should default group" do
450
- Puppet::Util::Windows::Security.stubs(:get_group).returns nil
449
+ allow(Puppet::Util::Windows::Security).to receive(:get_group).and_return(nil)
451
450
 
452
451
  expect(metadata.group).to eq('S-1-0-0')
453
452
  end
454
453
 
455
454
  it "should default mode" do
456
- Puppet::Util::Windows::Security.stubs(:get_mode).returns nil
455
+ allow(Puppet::Util::Windows::Security).to receive(:get_mode).and_return(nil)
457
456
 
458
457
  expect(metadata.mode).to eq(0644)
459
458
  end
@@ -461,24 +460,23 @@ describe Puppet::FileServing::Metadata, :uses_checksums => true do
461
460
  describe "when the path raises an Invalid ACL error" do
462
461
  # these simulate the behavior of a symlink file whose target does not support ACLs
463
462
  it "should default owner" do
464
- Puppet::Util::Windows::Security.stubs(:get_owner).raises(invalid_dacl_error)
463
+ allow(Puppet::Util::Windows::Security).to receive(:get_owner).and_raise(invalid_dacl_error)
465
464
 
466
465
  expect(metadata.owner).to eq('S-1-5-32-544')
467
466
  end
468
467
 
469
468
  it "should default group" do
470
- Puppet::Util::Windows::Security.stubs(:get_group).raises(invalid_dacl_error)
469
+ allow(Puppet::Util::Windows::Security).to receive(:get_group).and_raise(invalid_dacl_error)
471
470
 
472
471
  expect(metadata.group).to eq('S-1-0-0')
473
472
  end
474
473
 
475
474
  it "should default mode" do
476
- Puppet::Util::Windows::Security.stubs(:get_mode).raises(invalid_dacl_error)
475
+ allow(Puppet::Util::Windows::Security).to receive(:get_mode).and_raise(invalid_dacl_error)
477
476
 
478
477
  expect(metadata.mode).to eq(0644)
479
478
  end
480
479
  end
481
-
482
480
  end
483
481
 
484
482
  def set_mode(mode, path)
@@ -487,35 +485,35 @@ describe Puppet::FileServing::Metadata, :uses_checksums => true do
487
485
  end
488
486
  end
489
487
 
490
-
491
488
  describe Puppet::FileServing::Metadata, " when pointing to a link", :if => Puppet.features.manages_symlinks?, :uses_checksums => true do
492
489
  with_digest_algorithms do
493
490
  describe "when links are managed" do
494
491
  before do
495
492
  path = "/base/path/my/file"
496
493
  @file = Puppet::FileServing::Metadata.new(path, :links => :manage)
497
- stat = stub("stat", :uid => 1, :gid => 2, :ftype => "link", :mode => 0755)
498
- Puppet::FileSystem.expects(:lstat).with(path).at_least_once.returns stat
499
- Puppet::FileSystem.expects(:readlink).with(path).at_least_once.returns "/some/other/path"
500
- @file.stubs("#{digest_algorithm}_file".intern).returns(checksum) # Remove these when :managed links are no longer checksumed.
494
+ stat = double("stat", :uid => 1, :gid => 2, :ftype => "link", :mode => 0755)
495
+ expect(Puppet::FileSystem).to receive(:lstat).with(path).and_return(stat)
496
+ expect(Puppet::FileSystem).to receive(:readlink).with(path).and_return("/some/other/path")
497
+ allow(@file).to receive("#{digest_algorithm}_file".intern).and_return(checksum) # Remove these when :managed links are no longer checksumed.
501
498
 
502
499
  if Puppet::Util::Platform.windows?
503
- win_stat = stub('win_stat', :owner => 'snarf', :group => 'thundercats',
500
+ win_stat = double('win_stat', :owner => 'snarf', :group => 'thundercats',
504
501
  :ftype => 'link', :mode => 0755)
505
- Puppet::FileServing::Metadata::WindowsStat.stubs(:new).returns win_stat
502
+ allow(Puppet::FileServing::Metadata::WindowsStat).to receive(:new).and_return(win_stat)
506
503
  end
507
-
508
504
  end
509
505
 
510
506
  it "should store the destination of the link in :destination if links are :manage" do
511
507
  @file.collect
512
508
  expect(@file.destination).to eq("/some/other/path")
513
509
  end
510
+
514
511
  pending "should not collect the checksum if links are :manage" do
515
512
  # We'd like this to be true, but we need to always collect the checksum because in the server/client/server round trip we lose the distintion between manage and follow.
516
513
  @file.collect
517
514
  expect(@file.checksum).to be_nil
518
515
  end
516
+
519
517
  it "should collect the checksum if links are :manage" do # see pending note above
520
518
  @file.collect
521
519
  expect(@file.checksum).to eq("{#{digest_algorithm}}#{checksum}")
@@ -526,22 +524,24 @@ describe Puppet::FileServing::Metadata, " when pointing to a link", :if => Puppe
526
524
  before do
527
525
  path = "/base/path/my/file"
528
526
  @file = Puppet::FileServing::Metadata.new(path, :links => :follow)
529
- stat = stub("stat", :uid => 1, :gid => 2, :ftype => "file", :mode => 0755)
530
- Puppet::FileSystem.expects(:stat).with(path).at_least_once.returns stat
531
- Puppet::FileSystem.expects(:readlink).never
527
+ stat = double("stat", :uid => 1, :gid => 2, :ftype => "file", :mode => 0755)
528
+ expect(Puppet::FileSystem).to receive(:stat).with(path).and_return(stat)
529
+ expect(Puppet::FileSystem).not_to receive(:readlink)
532
530
 
533
531
  if Puppet::Util::Platform.windows?
534
- win_stat = stub('win_stat', :owner => 'snarf', :group => 'thundercats',
532
+ win_stat = double('win_stat', :owner => 'snarf', :group => 'thundercats',
535
533
  :ftype => 'file', :mode => 0755)
536
- Puppet::FileServing::Metadata::WindowsStat.stubs(:new).returns win_stat
534
+ allow(Puppet::FileServing::Metadata::WindowsStat).to receive(:new).and_return(win_stat)
537
535
  end
538
536
 
539
- @file.stubs("#{digest_algorithm}_file".intern).returns(checksum)
537
+ allow(@file).to receive("#{digest_algorithm}_file".intern).and_return(checksum)
540
538
  end
539
+
541
540
  it "should not store the destination of the link in :destination if links are :follow" do
542
541
  @file.collect
543
542
  expect(@file.destination).to be_nil
544
543
  end
544
+
545
545
  it "should collect the checksum if links are :follow" do
546
546
  @file.collect
547
547
  expect(@file.checksum).to eq("{#{digest_algorithm}}#{checksum}")