puppet 5.5.12 → 5.5.13

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 (733) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +0 -5
  3. data/Gemfile.lock +11 -11
  4. data/lib/puppet/application/filebucket.rb +4 -0
  5. data/lib/puppet/configurer.rb +9 -3
  6. data/lib/puppet/indirector/request.rb +26 -15
  7. data/lib/puppet/indirector/rest.rb +16 -7
  8. data/lib/puppet/network/http/connection.rb +15 -7
  9. data/lib/puppet/transaction/event_manager.rb +1 -5
  10. data/lib/puppet/type/file/source.rb +0 -1
  11. data/lib/puppet/util/http_proxy.rb +3 -2
  12. data/lib/puppet/version.rb +1 -1
  13. data/locales/puppet.pot +108 -36
  14. data/man/man5/puppet.conf.5 +2 -2
  15. data/man/man8/puppet-agent.8 +1 -1
  16. data/man/man8/puppet-apply.8 +1 -1
  17. data/man/man8/puppet-ca.8 +1 -1
  18. data/man/man8/puppet-catalog.8 +1 -1
  19. data/man/man8/puppet-cert.8 +1 -1
  20. data/man/man8/puppet-certificate.8 +1 -1
  21. data/man/man8/puppet-certificate_request.8 +1 -1
  22. data/man/man8/puppet-certificate_revocation_list.8 +1 -1
  23. data/man/man8/puppet-config.8 +1 -1
  24. data/man/man8/puppet-describe.8 +1 -1
  25. data/man/man8/puppet-device.8 +1 -1
  26. data/man/man8/puppet-doc.8 +1 -1
  27. data/man/man8/puppet-epp.8 +1 -1
  28. data/man/man8/puppet-facts.8 +1 -1
  29. data/man/man8/puppet-filebucket.8 +1 -1
  30. data/man/man8/puppet-generate.8 +1 -1
  31. data/man/man8/puppet-help.8 +1 -1
  32. data/man/man8/puppet-key.8 +1 -1
  33. data/man/man8/puppet-lookup.8 +1 -1
  34. data/man/man8/puppet-man.8 +1 -1
  35. data/man/man8/puppet-master.8 +1 -1
  36. data/man/man8/puppet-module.8 +1 -1
  37. data/man/man8/puppet-node.8 +1 -1
  38. data/man/man8/puppet-parser.8 +1 -1
  39. data/man/man8/puppet-plugin.8 +1 -1
  40. data/man/man8/puppet-report.8 +1 -1
  41. data/man/man8/puppet-resource.8 +1 -1
  42. data/man/man8/puppet-script.8 +1 -1
  43. data/man/man8/puppet-status.8 +1 -1
  44. data/man/man8/puppet.8 +2 -2
  45. data/spec/integration/agent/logging_spec.rb +5 -7
  46. data/spec/integration/application/apply_spec.rb +28 -26
  47. data/spec/integration/application/doc_spec.rb +1 -2
  48. data/spec/integration/application/lookup_spec.rb +5 -5
  49. data/spec/integration/configurer_spec.rb +5 -6
  50. data/spec/integration/defaults_spec.rb +5 -6
  51. data/spec/integration/directory_environments_spec.rb +1 -1
  52. data/spec/integration/faces/ca_spec.rb +2 -3
  53. data/spec/integration/faces/config_spec.rb +3 -4
  54. data/spec/integration/faces/documentation_spec.rb +0 -1
  55. data/spec/integration/faces/plugin_spec.rb +1 -1
  56. data/spec/integration/file_bucket/file_spec.rb +3 -5
  57. data/spec/integration/file_serving/content_spec.rb +0 -1
  58. data/spec/integration/file_serving/fileset_spec.rb +0 -1
  59. data/spec/integration/file_serving/metadata_spec.rb +0 -1
  60. data/spec/integration/file_serving/terminus_helper_spec.rb +0 -1
  61. data/spec/integration/indirector/catalog/compiler_spec.rb +10 -11
  62. data/spec/integration/indirector/direct_file_server_spec.rb +1 -1
  63. data/spec/integration/indirector/facts/facter_spec.rb +5 -5
  64. data/spec/integration/indirector/file_content/file_server_spec.rb +7 -8
  65. data/spec/integration/indirector/file_metadata/file_server_spec.rb +7 -8
  66. data/spec/integration/indirector/node/ldap_spec.rb +2 -3
  67. data/spec/integration/network/authconfig_spec.rb +23 -24
  68. data/spec/integration/network/formats_spec.rb +0 -1
  69. data/spec/integration/network/http/api/indirected_routes_spec.rb +0 -1
  70. data/spec/integration/node/environment_spec.rb +0 -1
  71. data/spec/integration/node/facts_spec.rb +9 -10
  72. data/spec/integration/node_spec.rb +6 -7
  73. data/spec/integration/parser/catalog_spec.rb +4 -2
  74. data/spec/integration/parser/collection_spec.rb +1 -2
  75. data/spec/integration/parser/compiler_spec.rb +6 -6
  76. data/spec/integration/parser/scope_spec.rb +1 -1
  77. data/spec/integration/parser/undef_param_spec.rb +1 -1
  78. data/spec/integration/provider/cron/crontab_spec.rb +8 -10
  79. data/spec/integration/provider/mailalias/aliases_spec.rb +0 -1
  80. data/spec/integration/provider/mount_spec.rb +9 -9
  81. data/spec/integration/provider/service/init_spec.rb +4 -5
  82. data/spec/integration/provider/service/systemd_spec.rb +0 -2
  83. data/spec/integration/provider/service/windows_spec.rb +1 -2
  84. data/spec/integration/provider/ssh_authorized_key_spec.rb +6 -8
  85. data/spec/integration/provider/sshkey_spec.rb +6 -12
  86. data/spec/integration/provider/yumrepo_spec.rb +8 -12
  87. data/spec/integration/reference/providers_spec.rb +0 -1
  88. data/spec/integration/reports_spec.rb +1 -2
  89. data/spec/integration/resource/catalog_spec.rb +14 -17
  90. data/spec/integration/resource/type_collection_spec.rb +4 -5
  91. data/spec/integration/ssl/certificate_authority_spec.rb +0 -1
  92. data/spec/integration/ssl/certificate_request_spec.rb +0 -1
  93. data/spec/integration/ssl/certificate_revocation_list_spec.rb +0 -1
  94. data/spec/integration/ssl/host_spec.rb +0 -1
  95. data/spec/integration/ssl/key_spec.rb +0 -1
  96. data/spec/integration/test/test_helper_spec.rb +1 -2
  97. data/spec/integration/transaction/report_spec.rb +6 -11
  98. data/spec/integration/transaction_spec.rb +18 -19
  99. data/spec/integration/type/exec_spec.rb +0 -1
  100. data/spec/integration/type/file_spec.rb +13 -14
  101. data/spec/integration/type/nagios_spec.rb +3 -5
  102. data/spec/integration/type/package_spec.rb +19 -23
  103. data/spec/integration/type/tidy_spec.rb +1 -2
  104. data/spec/integration/type/user_spec.rb +0 -1
  105. data/spec/integration/type_spec.rb +0 -1
  106. data/spec/integration/util/autoload_spec.rb +1 -2
  107. data/spec/integration/util/rdoc/parser_spec.rb +0 -1
  108. data/spec/integration/util/settings_spec.rb +0 -1
  109. data/spec/integration/util/windows/adsi_spec.rb +3 -5
  110. data/spec/integration/util/windows/principal_spec.rb +0 -1
  111. data/spec/integration/util/windows/process_spec.rb +4 -6
  112. data/spec/integration/util/windows/registry_spec.rb +41 -51
  113. data/spec/integration/util/windows/security_spec.rb +2 -4
  114. data/spec/integration/util/windows/user_spec.rb +18 -20
  115. data/spec/integration/util_spec.rb +4 -7
  116. data/spec/lib/puppet_spec/compiler.rb +1 -1
  117. data/spec/lib/puppet_spec/files.rb +0 -1
  118. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +1 -1
  119. data/spec/lib/puppet_spec/scope.rb +1 -2
  120. data/spec/shared_behaviours/all_parsedfile_providers.rb +1 -1
  121. data/spec/shared_behaviours/file_server_terminus.rb +8 -9
  122. data/spec/shared_behaviours/file_serving.rb +6 -8
  123. data/spec/shared_behaviours/file_serving_model.rb +4 -6
  124. data/spec/shared_behaviours/hiera_indirections.rb +3 -4
  125. data/spec/shared_behaviours/iterative_functions.rb +0 -1
  126. data/spec/shared_behaviours/memory_terminus.rb +2 -2
  127. data/spec/shared_examples/rhel_package_provider.rb +112 -70
  128. data/spec/spec_helper.rb +11 -2
  129. data/spec/unit/agent/disabler_spec.rb +4 -5
  130. data/spec/unit/agent/locker_spec.rb +12 -13
  131. data/spec/unit/agent_spec.rb +80 -85
  132. data/spec/unit/application/agent_spec.rb +88 -93
  133. data/spec/unit/application/apply_spec.rb +78 -79
  134. data/spec/unit/application/cert_spec.rb +42 -49
  135. data/spec/unit/application/certificate_spec.rb +2 -3
  136. data/spec/unit/application/config_spec.rb +0 -1
  137. data/spec/unit/application/describe_spec.rb +6 -7
  138. data/spec/unit/application/device_spec.rb +175 -184
  139. data/spec/unit/application/doc_spec.rb +44 -46
  140. data/spec/unit/application/face_base_spec.rb +61 -62
  141. data/spec/unit/application/facts_spec.rb +3 -4
  142. data/spec/unit/application/filebucket_spec.rb +66 -74
  143. data/spec/unit/application/indirection_base_spec.rb +8 -6
  144. data/spec/unit/application/lookup_spec.rb +26 -26
  145. data/spec/unit/application/master_spec.rb +95 -95
  146. data/spec/unit/application/resource_spec.rb +42 -48
  147. data/spec/unit/application_spec.rb +74 -84
  148. data/spec/unit/capability_spec.rb +9 -6
  149. data/spec/unit/configurer/downloader_spec.rb +20 -21
  150. data/spec/unit/configurer/fact_handler_spec.rb +2 -3
  151. data/spec/unit/configurer/plugin_handler_spec.rb +41 -8
  152. data/spec/unit/configurer_spec.rb +190 -193
  153. data/spec/unit/confine/exists_spec.rb +17 -15
  154. data/spec/unit/confine/false_spec.rb +5 -6
  155. data/spec/unit/confine/feature_spec.rb +7 -5
  156. data/spec/unit/confine/true_spec.rb +5 -6
  157. data/spec/unit/confine/variable_spec.rb +14 -15
  158. data/spec/unit/confine_collection_spec.rb +28 -29
  159. data/spec/unit/confine_spec.rb +13 -14
  160. data/spec/unit/confiner_spec.rb +10 -11
  161. data/spec/unit/context/trusted_information_spec.rb +1 -1
  162. data/spec/unit/daemon_spec.rb +34 -35
  163. data/spec/unit/data_providers/function_data_provider_spec.rb +0 -1
  164. data/spec/unit/data_providers/hiera_data_provider_spec.rb +0 -1
  165. data/spec/unit/datatypes_spec.rb +3 -4
  166. data/spec/unit/defaults_spec.rb +17 -12
  167. data/spec/unit/environments_spec.rb +7 -7
  168. data/spec/unit/etc_spec.rb +30 -32
  169. data/spec/unit/external/pson_spec.rb +0 -1
  170. data/spec/unit/face/ca_spec.rb +0 -1
  171. data/spec/unit/face/catalog_spec.rb +0 -1
  172. data/spec/unit/face/certificate_request_spec.rb +0 -1
  173. data/spec/unit/face/certificate_revocation_list_spec.rb +0 -1
  174. data/spec/unit/face/certificate_spec.rb +7 -10
  175. data/spec/unit/face/config_spec.rb +31 -35
  176. data/spec/unit/face/epp_face_spec.rb +3 -4
  177. data/spec/unit/face/facts_spec.rb +5 -6
  178. data/spec/unit/face/generate_spec.rb +4 -5
  179. data/spec/unit/face/help_spec.rb +7 -8
  180. data/spec/unit/face/key_spec.rb +0 -1
  181. data/spec/unit/face/man_spec.rb +1 -2
  182. data/spec/unit/face/module/build_spec.rb +17 -17
  183. data/spec/unit/face/module/install_spec.rb +3 -5
  184. data/spec/unit/face/module/list_spec.rb +2 -12
  185. data/spec/unit/face/module/search_spec.rb +11 -9
  186. data/spec/unit/face/module/uninstall_spec.rb +4 -8
  187. data/spec/unit/face/node_spec.rb +33 -34
  188. data/spec/unit/face/parser_spec.rb +3 -3
  189. data/spec/unit/face/plugin_spec.rb +36 -9
  190. data/spec/unit/face/status_spec.rb +0 -1
  191. data/spec/unit/file_bucket/dipper_spec.rb +24 -20
  192. data/spec/unit/file_bucket/file_spec.rb +0 -2
  193. data/spec/unit/file_serving/base_spec.rb +16 -17
  194. data/spec/unit/file_serving/configuration/parser_spec.rb +27 -28
  195. data/spec/unit/file_serving/configuration_spec.rb +63 -66
  196. data/spec/unit/file_serving/content_spec.rb +10 -11
  197. data/spec/unit/file_serving/fileset_spec.rb +63 -58
  198. data/spec/unit/file_serving/http_metadata_spec.rb +8 -7
  199. data/spec/unit/file_serving/metadata_spec.rb +36 -36
  200. data/spec/unit/file_serving/mount/file_spec.rb +31 -32
  201. data/spec/unit/file_serving/mount/locales_spec.rb +23 -24
  202. data/spec/unit/file_serving/mount/modules_spec.rb +14 -15
  203. data/spec/unit/file_serving/mount/pluginfacts_spec.rb +23 -24
  204. data/spec/unit/file_serving/mount/plugins_spec.rb +23 -24
  205. data/spec/unit/file_serving/mount/tasks_spec.rb +14 -15
  206. data/spec/unit/file_serving/mount_spec.rb +0 -1
  207. data/spec/unit/file_serving/terminus_helper_spec.rb +37 -42
  208. data/spec/unit/file_serving/terminus_selector_spec.rb +12 -13
  209. data/spec/unit/file_system/uniquefile_spec.rb +4 -4
  210. data/spec/unit/file_system_spec.rb +2 -2
  211. data/spec/unit/forge/errors_spec.rb +1 -1
  212. data/spec/unit/forge/forge_spec.rb +13 -14
  213. data/spec/unit/forge/module_release_spec.rb +18 -18
  214. data/spec/unit/forge/repository_spec.rb +29 -30
  215. data/spec/unit/forge_spec.rb +15 -11
  216. data/spec/unit/functions/binary_file_spec.rb +3 -3
  217. data/spec/unit/functions/contain_spec.rb +0 -2
  218. data/spec/unit/functions/defined_spec.rb +0 -1
  219. data/spec/unit/functions/epp_spec.rb +2 -2
  220. data/spec/unit/functions/find_file_spec.rb +7 -7
  221. data/spec/unit/functions/include_spec.rb +0 -4
  222. data/spec/unit/functions/lookup_fixture_spec.rb +0 -1
  223. data/spec/unit/functions/lookup_spec.rb +1 -2
  224. data/spec/unit/functions/module_directory_spec.rb +12 -12
  225. data/spec/unit/functions/require_spec.rb +0 -3
  226. data/spec/unit/functions/shared.rb +5 -8
  227. data/spec/unit/functions/versioncmp_spec.rb +1 -2
  228. data/spec/unit/functions4_spec.rb +7 -8
  229. data/spec/unit/gettext/config_spec.rb +4 -4
  230. data/spec/unit/gettext/module_loading_spec.rb +7 -7
  231. data/spec/unit/graph/rb_tree_map_spec.rb +0 -2
  232. data/spec/unit/graph/relationship_graph_spec.rb +1 -2
  233. data/spec/unit/graph/simple_graph_spec.rb +8 -9
  234. data/spec/unit/hiera_puppet_spec.rb +20 -20
  235. data/spec/unit/indirector/catalog/compiler_spec.rb +147 -149
  236. data/spec/unit/indirector/catalog/json_spec.rb +1 -2
  237. data/spec/unit/indirector/catalog/msgpack_spec.rb +0 -1
  238. data/spec/unit/indirector/catalog/rest_spec.rb +0 -1
  239. data/spec/unit/indirector/catalog/store_configs_spec.rb +0 -1
  240. data/spec/unit/indirector/catalog/yaml_spec.rb +0 -1
  241. data/spec/unit/indirector/certificate/ca_spec.rb +2 -4
  242. data/spec/unit/indirector/certificate/disabled_ca_spec.rb +1 -2
  243. data/spec/unit/indirector/certificate/file_spec.rb +2 -3
  244. data/spec/unit/indirector/certificate/rest_spec.rb +8 -10
  245. data/spec/unit/indirector/certificate_request/ca_spec.rb +0 -1
  246. data/spec/unit/indirector/certificate_request/disabled_ca_spec.rb +1 -2
  247. data/spec/unit/indirector/certificate_request/file_spec.rb +0 -1
  248. data/spec/unit/indirector/certificate_request/rest_spec.rb +0 -1
  249. data/spec/unit/indirector/certificate_revocation_list/ca_spec.rb +1 -2
  250. data/spec/unit/indirector/certificate_revocation_list/disabled_ca_spec.rb +1 -2
  251. data/spec/unit/indirector/certificate_revocation_list/file_spec.rb +1 -2
  252. data/spec/unit/indirector/certificate_revocation_list/rest_spec.rb +2 -3
  253. data/spec/unit/indirector/certificate_status/file_spec.rb +2 -3
  254. data/spec/unit/indirector/certificate_status/rest_spec.rb +0 -1
  255. data/spec/unit/indirector/code_spec.rb +5 -6
  256. data/spec/unit/indirector/direct_file_server_spec.rb +33 -27
  257. data/spec/unit/indirector/envelope_spec.rb +1 -2
  258. data/spec/unit/indirector/exec_spec.rb +15 -14
  259. data/spec/unit/indirector/face_spec.rb +9 -9
  260. data/spec/unit/indirector/facts/facter_spec.rb +37 -43
  261. data/spec/unit/indirector/facts/network_device_spec.rb +8 -9
  262. data/spec/unit/indirector/facts/rest_spec.rb +7 -8
  263. data/spec/unit/indirector/facts/store_configs_spec.rb +0 -1
  264. data/spec/unit/indirector/facts/yaml_spec.rb +2 -4
  265. data/spec/unit/indirector/file_bucket_file/file_spec.rb +3 -4
  266. data/spec/unit/indirector/file_bucket_file/rest_spec.rb +0 -1
  267. data/spec/unit/indirector/file_bucket_file/selector_spec.rb +4 -5
  268. data/spec/unit/indirector/file_content/file_server_spec.rb +0 -1
  269. data/spec/unit/indirector/file_content/file_spec.rb +0 -1
  270. data/spec/unit/indirector/file_content/rest_spec.rb +0 -1
  271. data/spec/unit/indirector/file_content/selector_spec.rb +0 -1
  272. data/spec/unit/indirector/file_metadata/file_server_spec.rb +0 -1
  273. data/spec/unit/indirector/file_metadata/file_spec.rb +12 -13
  274. data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -1
  275. data/spec/unit/indirector/file_metadata/selector_spec.rb +0 -1
  276. data/spec/unit/indirector/file_server_spec.rb +99 -93
  277. data/spec/unit/indirector/indirection_spec.rb +242 -226
  278. data/spec/unit/indirector/json_spec.rb +7 -9
  279. data/spec/unit/indirector/key/ca_spec.rb +2 -3
  280. data/spec/unit/indirector/key/disabled_ca_spec.rb +1 -2
  281. data/spec/unit/indirector/key/file_spec.rb +25 -26
  282. data/spec/unit/indirector/ldap_spec.rb +34 -41
  283. data/spec/unit/indirector/memory_spec.rb +6 -7
  284. data/spec/unit/indirector/msgpack_spec.rb +7 -9
  285. data/spec/unit/indirector/node/exec_spec.rb +6 -6
  286. data/spec/unit/indirector/node/ldap_spec.rb +74 -76
  287. data/spec/unit/indirector/node/memory_spec.rb +2 -4
  288. data/spec/unit/indirector/node/msgpack_spec.rb +0 -1
  289. data/spec/unit/indirector/node/plain_spec.rb +2 -4
  290. data/spec/unit/indirector/node/rest_spec.rb +0 -1
  291. data/spec/unit/indirector/node/store_configs_spec.rb +0 -1
  292. data/spec/unit/indirector/node/write_only_yaml_spec.rb +1 -2
  293. data/spec/unit/indirector/node/yaml_spec.rb +0 -1
  294. data/spec/unit/indirector/none_spec.rb +5 -5
  295. data/spec/unit/indirector/plain_spec.rb +7 -8
  296. data/spec/unit/indirector/report/msgpack_spec.rb +0 -1
  297. data/spec/unit/indirector/report/processor_spec.rb +21 -22
  298. data/spec/unit/indirector/report/rest_spec.rb +11 -12
  299. data/spec/unit/indirector/report/yaml_spec.rb +0 -1
  300. data/spec/unit/indirector/request_spec.rb +11 -12
  301. data/spec/unit/indirector/resource/ral_spec.rb +47 -54
  302. data/spec/unit/indirector/resource/store_configs_spec.rb +0 -1
  303. data/spec/unit/indirector/rest_spec.rb +113 -110
  304. data/spec/unit/indirector/ssl_file_spec.rb +74 -77
  305. data/spec/unit/indirector/status/local_spec.rb +0 -1
  306. data/spec/unit/indirector/status/rest_spec.rb +0 -1
  307. data/spec/unit/indirector/store_configs_spec.rb +0 -1
  308. data/spec/unit/indirector/terminus_spec.rb +31 -29
  309. data/spec/unit/indirector/yaml_spec.rb +33 -32
  310. data/spec/unit/indirector_spec.rb +1 -2
  311. data/spec/unit/info_service_spec.rb +3 -1
  312. data/spec/unit/interface/action_builder_spec.rb +0 -1
  313. data/spec/unit/interface/action_manager_spec.rb +0 -1
  314. data/spec/unit/interface/action_spec.rb +2 -3
  315. data/spec/unit/interface/documentation_spec.rb +0 -1
  316. data/spec/unit/interface/face_collection_spec.rb +19 -12
  317. data/spec/unit/interface_spec.rb +3 -3
  318. data/spec/unit/man_spec.rb +3 -4
  319. data/spec/unit/module_spec.rb +46 -51
  320. data/spec/unit/module_tool/applications/builder_spec.rb +5 -5
  321. data/spec/unit/module_tool/applications/installer_spec.rb +10 -11
  322. data/spec/unit/module_tool/applications/searcher_spec.rb +3 -3
  323. data/spec/unit/module_tool/applications/uninstaller_spec.rb +1 -2
  324. data/spec/unit/module_tool/applications/unpacker_spec.rb +13 -13
  325. data/spec/unit/module_tool/applications/upgrader_spec.rb +5 -5
  326. data/spec/unit/module_tool/install_directory_spec.rb +8 -8
  327. data/spec/unit/module_tool/installed_modules_spec.rb +3 -3
  328. data/spec/unit/module_tool/tar/gnu_spec.rb +6 -6
  329. data/spec/unit/module_tool/tar/mini_spec.rb +12 -12
  330. data/spec/unit/module_tool/tar_spec.rb +12 -13
  331. data/spec/unit/module_tool_spec.rb +7 -12
  332. data/spec/unit/network/auth_config_parser_spec.rb +11 -13
  333. data/spec/unit/network/authconfig_spec.rb +17 -18
  334. data/spec/unit/network/authorization_spec.rb +4 -5
  335. data/spec/unit/network/authstore_spec.rb +0 -1
  336. data/spec/unit/network/format_handler_spec.rb +0 -1
  337. data/spec/unit/network/format_spec.rb +9 -10
  338. data/spec/unit/network/format_support_spec.rb +28 -29
  339. data/spec/unit/network/formats_spec.rb +4 -5
  340. data/spec/unit/network/http/api/ca/v1_spec.rb +1 -1
  341. data/spec/unit/network/http/api/indirected_routes_spec.rb +22 -29
  342. data/spec/unit/network/http/api/master/v3/authorization_spec.rb +2 -2
  343. data/spec/unit/network/http/api/master/v3/environment_spec.rb +1 -1
  344. data/spec/unit/network/http/api/master/v3/environments_spec.rb +6 -7
  345. data/spec/unit/network/http/api_spec.rb +1 -3
  346. data/spec/unit/network/http/compression_spec.rb +21 -22
  347. data/spec/unit/network/http/connection_spec.rb +39 -36
  348. data/spec/unit/network/http/factory_spec.rb +5 -6
  349. data/spec/unit/network/http/handler_spec.rb +9 -18
  350. data/spec/unit/network/http/nocache_pool_spec.rb +6 -7
  351. data/spec/unit/network/http/pool_spec.rb +28 -29
  352. data/spec/unit/network/http/rack/rest_spec.rb +24 -27
  353. data/spec/unit/network/http/rack_spec.rb +5 -6
  354. data/spec/unit/network/http/request_spec.rb +0 -2
  355. data/spec/unit/network/http/response_spec.rb +11 -13
  356. data/spec/unit/network/http/route_spec.rb +0 -1
  357. data/spec/unit/network/http/session_spec.rb +1 -2
  358. data/spec/unit/network/http/site_spec.rb +0 -1
  359. data/spec/unit/network/http/webrick/rest_spec.rb +40 -41
  360. data/spec/unit/network/http/webrick_spec.rb +49 -52
  361. data/spec/unit/network/http_pool_spec.rb +18 -9
  362. data/spec/unit/network/http_spec.rb +0 -1
  363. data/spec/unit/network/resolver_spec.rb +16 -17
  364. data/spec/unit/network/rights_spec.rb +52 -53
  365. data/spec/unit/network/server_spec.rb +12 -13
  366. data/spec/unit/node/environment_spec.rb +16 -14
  367. data/spec/unit/node/facts_spec.rb +5 -7
  368. data/spec/unit/node_spec.rb +4 -10
  369. data/spec/unit/other/selinux_spec.rb +2 -3
  370. data/spec/unit/parameter/boolean_spec.rb +1 -2
  371. data/spec/unit/parameter/package_options_spec.rb +1 -2
  372. data/spec/unit/parameter/path_spec.rb +0 -1
  373. data/spec/unit/parameter/value_collection_spec.rb +0 -1
  374. data/spec/unit/parameter/value_spec.rb +0 -1
  375. data/spec/unit/parameter_spec.rb +9 -9
  376. data/spec/unit/parser/ast/block_expression_spec.rb +6 -8
  377. data/spec/unit/parser/ast/leaf_spec.rb +20 -21
  378. data/spec/unit/parser/compiler_spec.rb +84 -96
  379. data/spec/unit/parser/environment_compiler_spec.rb +11 -9
  380. data/spec/unit/parser/files_spec.rb +0 -1
  381. data/spec/unit/parser/functions/create_resources_spec.rb +1 -1
  382. data/spec/unit/parser/functions/digest_spec.rb +0 -1
  383. data/spec/unit/parser/functions/fail_spec.rb +1 -2
  384. data/spec/unit/parser/functions/file_spec.rb +13 -14
  385. data/spec/unit/parser/functions/fqdn_rand_spec.rb +5 -6
  386. data/spec/unit/parser/functions/generate_spec.rb +7 -8
  387. data/spec/unit/parser/functions/inline_template_spec.rb +0 -1
  388. data/spec/unit/parser/functions/regsubst_spec.rb +0 -1
  389. data/spec/unit/parser/functions/scanf_spec.rb +0 -1
  390. data/spec/unit/parser/functions/shellquote_spec.rb +0 -1
  391. data/spec/unit/parser/functions/split_spec.rb +0 -1
  392. data/spec/unit/parser/functions/sprintf_spec.rb +0 -1
  393. data/spec/unit/parser/functions/tag_spec.rb +1 -2
  394. data/spec/unit/parser/functions/tagged_spec.rb +2 -3
  395. data/spec/unit/parser/functions/template_spec.rb +13 -13
  396. data/spec/unit/parser/functions/versioncmp_spec.rb +1 -2
  397. data/spec/unit/parser/functions_spec.rb +3 -4
  398. data/spec/unit/parser/relationship_spec.rb +0 -1
  399. data/spec/unit/parser/resource_spec.rb +42 -42
  400. data/spec/unit/parser/scope_spec.rb +39 -35
  401. data/spec/unit/parser/templatewrapper_spec.rb +11 -12
  402. data/spec/unit/parser/type_loader_spec.rb +17 -19
  403. data/spec/unit/pops/adaptable_spec.rb +0 -1
  404. data/spec/unit/pops/benchmark_spec.rb +0 -1
  405. data/spec/unit/pops/evaluator/access_ops_spec.rb +0 -1
  406. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +0 -1
  407. data/spec/unit/pops/evaluator/basic_expressions_spec.rb +0 -1
  408. data/spec/unit/pops/evaluator/collections_ops_spec.rb +0 -1
  409. data/spec/unit/pops/evaluator/comparison_ops_spec.rb +0 -1
  410. data/spec/unit/pops/evaluator/conditionals_spec.rb +0 -1
  411. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +6 -6
  412. data/spec/unit/pops/evaluator/logical_ops_spec.rb +0 -1
  413. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +0 -1
  414. data/spec/unit/pops/evaluator/string_interpolation_spec.rb +0 -1
  415. data/spec/unit/pops/evaluator/variables_spec.rb +0 -1
  416. data/spec/unit/pops/factory_spec.rb +3 -4
  417. data/spec/unit/pops/issues_spec.rb +19 -20
  418. data/spec/unit/pops/loaders/loader_spec.rb +8 -4
  419. data/spec/unit/pops/loaders/loaders_spec.rb +30 -27
  420. data/spec/unit/pops/lookup/context_spec.rb +0 -1
  421. data/spec/unit/pops/lookup/interpolation_spec.rb +2 -3
  422. data/spec/unit/pops/merge_strategy_spec.rb +0 -1
  423. data/spec/unit/pops/migration_spec.rb +3 -5
  424. data/spec/unit/pops/model/model_spec.rb +0 -1
  425. data/spec/unit/pops/model/pn_transformer_spec.rb +0 -1
  426. data/spec/unit/pops/parser/locator_spec.rb +3 -6
  427. data/spec/unit/pops/parser/parse_application_spec.rb +0 -1
  428. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -1
  429. data/spec/unit/pops/parser/parse_calls_spec.rb +0 -1
  430. data/spec/unit/pops/parser/parse_capabilities_spec.rb +0 -1
  431. data/spec/unit/pops/parser/parse_conditionals_spec.rb +0 -1
  432. data/spec/unit/pops/parser/parse_containers_spec.rb +0 -1
  433. data/spec/unit/pops/parser/parse_plan_spec.rb +0 -1
  434. data/spec/unit/pops/parser/parse_resource_spec.rb +0 -1
  435. data/spec/unit/pops/parser/parse_site_spec.rb +0 -1
  436. data/spec/unit/pops/parser/pn_parser_spec.rb +0 -1
  437. data/spec/unit/pops/pn_spec.rb +0 -1
  438. data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -1
  439. data/spec/unit/pops/serialization/serialization_spec.rb +1 -1
  440. data/spec/unit/pops/serialization/to_from_hr_spec.rb +1 -1
  441. data/spec/unit/pops/types/recursion_guard_spec.rb +10 -10
  442. data/spec/unit/pops/types/ruby_generator_spec.rb +2 -2
  443. data/spec/unit/pops/types/type_asserter_spec.rb +2 -2
  444. data/spec/unit/pops/types/type_calculator_spec.rb +36 -36
  445. data/spec/unit/pops/types/type_parser_spec.rb +13 -13
  446. data/spec/unit/pops/validator/validator_spec.rb +1 -2
  447. data/spec/unit/pops/visitor_spec.rb +0 -1
  448. data/spec/unit/property/boolean_spec.rb +1 -1
  449. data/spec/unit/property/ensure_spec.rb +0 -1
  450. data/spec/unit/property/keyvalue_spec.rb +32 -34
  451. data/spec/unit/property/list_spec.rb +26 -27
  452. data/spec/unit/property/ordered_list_spec.rb +10 -14
  453. data/spec/unit/property_spec.rb +42 -43
  454. data/spec/unit/provider/aix_object_spec.rb +47 -45
  455. data/spec/unit/provider/augeas/augeas_spec.rb +192 -192
  456. data/spec/unit/provider/cisco_spec.rb +1 -2
  457. data/spec/unit/provider/command_spec.rb +9 -9
  458. data/spec/unit/provider/cron/crontab_spec.rb +10 -11
  459. data/spec/unit/provider/cron/parsed_spec.rb +22 -24
  460. data/spec/unit/provider/exec/posix_spec.rb +6 -7
  461. data/spec/unit/provider/exec/shell_spec.rb +0 -1
  462. data/spec/unit/provider/exec/windows_spec.rb +2 -4
  463. data/spec/unit/provider/exec_spec.rb +0 -1
  464. data/spec/unit/provider/file/posix_spec.rb +22 -24
  465. data/spec/unit/provider/file/windows_spec.rb +15 -17
  466. data/spec/unit/provider/group/aix_spec.rb +3 -2
  467. data/spec/unit/provider/group/groupadd_spec.rb +30 -26
  468. data/spec/unit/provider/group/ldap_spec.rb +18 -18
  469. data/spec/unit/provider/group/pw_spec.rb +11 -11
  470. data/spec/unit/provider/group/windows_adsi_spec.rb +54 -54
  471. data/spec/unit/provider/host/parsed_spec.rb +6 -6
  472. data/spec/unit/provider/interface/cisco_spec.rb +20 -24
  473. data/spec/unit/provider/ldap_spec.rb +61 -62
  474. data/spec/unit/provider/macauthorization_spec.rb +26 -47
  475. data/spec/unit/provider/mcx/mcxcontent_spec.rb +45 -47
  476. data/spec/unit/provider/mount/parsed_spec.rb +18 -24
  477. data/spec/unit/provider/mount_spec.rb +57 -66
  478. data/spec/unit/provider/naginator_spec.rb +13 -14
  479. data/spec/unit/provider/nameservice/directoryservice_spec.rb +35 -36
  480. data/spec/unit/provider/nameservice_spec.rb +38 -40
  481. data/spec/unit/provider/network_device_spec.rb +28 -28
  482. data/spec/unit/provider/package/aix_spec.rb +15 -15
  483. data/spec/unit/provider/package/appdmg_spec.rb +13 -13
  484. data/spec/unit/provider/package/apt_spec.rb +44 -27
  485. data/spec/unit/provider/package/aptitude_spec.rb +6 -7
  486. data/spec/unit/provider/package/aptrpm_spec.rb +7 -12
  487. data/spec/unit/provider/package/base_spec.rb +4 -4
  488. data/spec/unit/provider/package/dnf_spec.rb +14 -16
  489. data/spec/unit/provider/package/dpkg_spec.rb +52 -52
  490. data/spec/unit/provider/package/freebsd_spec.rb +11 -11
  491. data/spec/unit/provider/package/gem_spec.rb +51 -43
  492. data/spec/unit/provider/package/hpux_spec.rb +8 -8
  493. data/spec/unit/provider/package/macports_spec.rb +46 -42
  494. data/spec/unit/provider/package/nim_spec.rb +30 -39
  495. data/spec/unit/provider/package/openbsd_spec.rb +36 -39
  496. data/spec/unit/provider/package/opkg_spec.rb +23 -26
  497. data/spec/unit/provider/package/pacman_spec.rb +97 -118
  498. data/spec/unit/provider/package/pip_spec.rb +69 -71
  499. data/spec/unit/provider/package/pkg_spec.rb +109 -109
  500. data/spec/unit/provider/package/pkgdmg_spec.rb +65 -63
  501. data/spec/unit/provider/package/pkgin_spec.rb +10 -8
  502. data/spec/unit/provider/package/pkgng_spec.rb +17 -18
  503. data/spec/unit/provider/package/pkgutil_spec.rb +45 -49
  504. data/spec/unit/provider/package/portage_spec.rb +70 -74
  505. data/spec/unit/provider/package/puppet_gem_spec.rb +28 -8
  506. data/spec/unit/provider/package/rpm_spec.rb +53 -64
  507. data/spec/unit/provider/package/sun_spec.rb +16 -18
  508. data/spec/unit/provider/package/tdnf_spec.rb +2 -2
  509. data/spec/unit/provider/package/up2date_spec.rb +2 -4
  510. data/spec/unit/provider/package/urpmi_spec.rb +15 -17
  511. data/spec/unit/provider/package/windows/exe_package_spec.rb +12 -15
  512. data/spec/unit/provider/package/windows/msi_package_spec.rb +19 -22
  513. data/spec/unit/provider/package/windows/package_spec.rb +37 -42
  514. data/spec/unit/provider/package/windows_spec.rb +36 -32
  515. data/spec/unit/provider/package/yum_spec.rb +4 -4
  516. data/spec/unit/provider/package/zypper_spec.rb +87 -87
  517. data/spec/unit/provider/parsedfile_spec.rb +44 -45
  518. data/spec/unit/provider/scheduled_task/win32_taskscheduler_spec.rb +120 -130
  519. data/spec/unit/provider/selboolean_spec.rb +9 -11
  520. data/spec/unit/provider/selmodule_spec.rb +20 -22
  521. data/spec/unit/provider/service/base_spec.rb +4 -5
  522. data/spec/unit/provider/service/bsd_spec.rb +27 -29
  523. data/spec/unit/provider/service/daemontools_spec.rb +35 -35
  524. data/spec/unit/provider/service/debian_spec.rb +37 -37
  525. data/spec/unit/provider/service/freebsd_spec.rb +18 -18
  526. data/spec/unit/provider/service/gentoo_spec.rb +50 -56
  527. data/spec/unit/provider/service/init_spec.rb +55 -55
  528. data/spec/unit/provider/service/launchd_spec.rb +138 -116
  529. data/spec/unit/provider/service/openbsd_spec.rb +50 -50
  530. data/spec/unit/provider/service/openrc_spec.rb +43 -46
  531. data/spec/unit/provider/service/openwrt_spec.rb +26 -32
  532. data/spec/unit/provider/service/rcng_spec.rb +14 -14
  533. data/spec/unit/provider/service/redhat_spec.rb +45 -43
  534. data/spec/unit/provider/service/runit_spec.rb +29 -27
  535. data/spec/unit/provider/service/smf_spec.rb +74 -66
  536. data/spec/unit/provider/service/src_spec.rb +46 -47
  537. data/spec/unit/provider/service/systemd_spec.rb +93 -98
  538. data/spec/unit/provider/service/upstart_spec.rb +74 -72
  539. data/spec/unit/provider/service/windows_spec.rb +33 -41
  540. data/spec/unit/provider/ssh_authorized_key/parsed_spec.rb +54 -68
  541. data/spec/unit/provider/sshkey/parsed_spec.rb +7 -8
  542. data/spec/unit/provider/user/aix_spec.rb +31 -31
  543. data/spec/unit/provider/user/directoryservice_spec.rb +109 -114
  544. data/spec/unit/provider/user/hpux_spec.rb +15 -15
  545. data/spec/unit/provider/user/ldap_spec.rb +57 -57
  546. data/spec/unit/provider/user/openbsd_spec.rb +10 -12
  547. data/spec/unit/provider/user/pw_spec.rb +37 -35
  548. data/spec/unit/provider/user/user_role_add_spec.rb +93 -93
  549. data/spec/unit/provider/user/useradd_spec.rb +93 -92
  550. data/spec/unit/provider/user/windows_adsi_spec.rb +59 -60
  551. data/spec/unit/provider/vlan/cisco_spec.rb +10 -12
  552. data/spec/unit/provider/yumrepo/inifile_spec.rb +75 -80
  553. data/spec/unit/provider/zfs/zfs_spec.rb +26 -21
  554. data/spec/unit/provider/zone/solaris_spec.rb +56 -42
  555. data/spec/unit/provider/zpool/zpool_spec.rb +19 -20
  556. data/spec/unit/provider_spec.rb +29 -29
  557. data/spec/unit/puppet_pal_2pec.rb +4 -5
  558. data/spec/unit/puppet_pal_spec.rb +0 -1
  559. data/spec/unit/puppet_spec.rb +7 -8
  560. data/spec/unit/relationship_spec.rb +0 -1
  561. data/spec/unit/reports/http_spec.rb +21 -23
  562. data/spec/unit/reports/store_spec.rb +3 -4
  563. data/spec/unit/reports_spec.rb +12 -14
  564. data/spec/unit/resource/capability_finder_spec.rb +18 -16
  565. data/spec/unit/resource/catalog_spec.rb +72 -68
  566. data/spec/unit/resource/status_spec.rb +6 -8
  567. data/spec/unit/resource/type_collection_spec.rb +17 -18
  568. data/spec/unit/resource/type_spec.rb +34 -35
  569. data/spec/unit/resource_spec.rb +36 -32
  570. data/spec/unit/scheduler/job_spec.rb +0 -1
  571. data/spec/unit/scheduler/scheduler_spec.rb +0 -1
  572. data/spec/unit/scheduler/splay_job_spec.rb +1 -2
  573. data/spec/unit/settings/array_setting_spec.rb +1 -1
  574. data/spec/unit/settings/autosign_setting_spec.rb +9 -9
  575. data/spec/unit/settings/certificate_revocation_setting_spec.rb +1 -1
  576. data/spec/unit/settings/config_file_spec.rb +0 -1
  577. data/spec/unit/settings/directory_setting_spec.rb +2 -7
  578. data/spec/unit/settings/duration_setting_spec.rb +1 -2
  579. data/spec/unit/settings/enum_setting_spec.rb +1 -1
  580. data/spec/unit/settings/environment_conf_spec.rb +4 -6
  581. data/spec/unit/settings/file_setting_spec.rb +44 -46
  582. data/spec/unit/settings/path_setting_spec.rb +1 -2
  583. data/spec/unit/settings/priority_setting_spec.rb +1 -2
  584. data/spec/unit/settings/string_setting_spec.rb +14 -15
  585. data/spec/unit/settings/terminus_setting_spec.rb +1 -2
  586. data/spec/unit/settings/value_translator_spec.rb +0 -1
  587. data/spec/unit/settings_spec.rb +226 -233
  588. data/spec/unit/ssl/base_spec.rb +14 -15
  589. data/spec/unit/ssl/certificate_authority/autosign_command_spec.rb +6 -7
  590. data/spec/unit/ssl/certificate_authority/interface_spec.rb +116 -113
  591. data/spec/unit/ssl/certificate_authority_spec.rb +258 -268
  592. data/spec/unit/ssl/certificate_factory_spec.rb +3 -5
  593. data/spec/unit/ssl/certificate_request_attributes_spec.rb +2 -3
  594. data/spec/unit/ssl/certificate_request_spec.rb +66 -67
  595. data/spec/unit/ssl/certificate_revocation_list_spec.rb +3 -4
  596. data/spec/unit/ssl/certificate_spec.rb +23 -25
  597. data/spec/unit/ssl/configuration_spec.rb +1 -4
  598. data/spec/unit/ssl/digest_spec.rb +0 -1
  599. data/spec/unit/ssl/host_spec.rb +217 -188
  600. data/spec/unit/ssl/inventory_spec.rb +25 -21
  601. data/spec/unit/ssl/key_spec.rb +30 -31
  602. data/spec/unit/ssl/validator_spec.rb +40 -40
  603. data/spec/unit/task_spec.rb +6 -7
  604. data/spec/unit/transaction/additional_resource_generator_spec.rb +6 -5
  605. data/spec/unit/transaction/event_manager_spec.rb +88 -88
  606. data/spec/unit/transaction/event_spec.rb +16 -15
  607. data/spec/unit/transaction/persistence_spec.rb +16 -17
  608. data/spec/unit/transaction/report_spec.rb +11 -12
  609. data/spec/unit/transaction/resource_harness_spec.rb +28 -33
  610. data/spec/unit/transaction_spec.rb +98 -100
  611. data/spec/unit/type/augeas_spec.rb +11 -10
  612. data/spec/unit/type/component_spec.rb +0 -1
  613. data/spec/unit/type/computer_spec.rb +7 -10
  614. data/spec/unit/type/cron_spec.rb +3 -7
  615. data/spec/unit/type/exec_spec.rb +60 -56
  616. data/spec/unit/type/file/checksum_spec.rb +9 -10
  617. data/spec/unit/type/file/checksum_value_spec.rb +31 -32
  618. data/spec/unit/type/file/content_spec.rb +58 -61
  619. data/spec/unit/type/file/ctime_spec.rb +0 -1
  620. data/spec/unit/type/file/ensure_spec.rb +12 -13
  621. data/spec/unit/type/file/group_spec.rb +5 -7
  622. data/spec/unit/type/file/mode_spec.rb +4 -6
  623. data/spec/unit/type/file/mtime_spec.rb +0 -1
  624. data/spec/unit/type/file/owner_spec.rb +6 -8
  625. data/spec/unit/type/file/selinux_spec.rb +17 -19
  626. data/spec/unit/type/file/source_spec.rb +104 -101
  627. data/spec/unit/type/file/type_spec.rb +0 -1
  628. data/spec/unit/type/file_spec.rb +195 -185
  629. data/spec/unit/type/filebucket_spec.rb +4 -5
  630. data/spec/unit/type/group_spec.rb +6 -8
  631. data/spec/unit/type/host_spec.rb +2 -3
  632. data/spec/unit/type/interface_spec.rb +2 -3
  633. data/spec/unit/type/k5login_spec.rb +3 -4
  634. data/spec/unit/type/macauthorization_spec.rb +6 -8
  635. data/spec/unit/type/mailalias_spec.rb +2 -3
  636. data/spec/unit/type/maillist_spec.rb +6 -9
  637. data/spec/unit/type/mcx_spec.rb +4 -8
  638. data/spec/unit/type/mount_spec.rb +26 -38
  639. data/spec/unit/type/nagios_spec.rb +0 -1
  640. data/spec/unit/type/noop_metaparam_spec.rb +1 -2
  641. data/spec/unit/type/package/package_settings_spec.rb +44 -23
  642. data/spec/unit/type/package_spec.rb +53 -54
  643. data/spec/unit/type/resources_spec.rb +86 -88
  644. data/spec/unit/type/schedule_spec.rb +24 -26
  645. data/spec/unit/type/scheduled_task_spec.rb +1 -2
  646. data/spec/unit/type/selboolean_spec.rb +5 -6
  647. data/spec/unit/type/selmodule_spec.rb +0 -1
  648. data/spec/unit/type/service_spec.rb +47 -47
  649. data/spec/unit/type/ssh_authorized_key_spec.rb +5 -35
  650. data/spec/unit/type/sshkey_spec.rb +0 -2
  651. data/spec/unit/type/stage_spec.rb +0 -1
  652. data/spec/unit/type/tidy_spec.rb +61 -62
  653. data/spec/unit/type/user_spec.rb +41 -27
  654. data/spec/unit/type/vlan_spec.rb +2 -4
  655. data/spec/unit/type/whit_spec.rb +0 -1
  656. data/spec/unit/type/zfs_spec.rb +6 -7
  657. data/spec/unit/type/zone_spec.rb +14 -4
  658. data/spec/unit/type/zpool_spec.rb +4 -5
  659. data/spec/unit/type_spec.rb +54 -53
  660. data/spec/unit/util/at_fork_spec.rb +18 -19
  661. data/spec/unit/util/autoload_spec.rb +53 -54
  662. data/spec/unit/util/backups_spec.rb +34 -35
  663. data/spec/unit/util/character_encoding_spec.rb +8 -8
  664. data/spec/unit/util/checksums_spec.rb +38 -39
  665. data/spec/unit/util/colors_spec.rb +1 -2
  666. data/spec/unit/util/command_line_spec.rb +24 -25
  667. data/spec/unit/util/constant_inflector_spec.rb +0 -1
  668. data/spec/unit/util/diff_spec.rb +7 -8
  669. data/spec/unit/util/errors_spec.rb +0 -1
  670. data/spec/unit/util/execution_spec.rb +187 -162
  671. data/spec/unit/util/execution_stub_spec.rb +0 -1
  672. data/spec/unit/util/feature_spec.rb +13 -13
  673. data/spec/unit/util/filetype_spec.rb +49 -49
  674. data/spec/unit/util/http_proxy_spec.rb +12 -12
  675. data/spec/unit/util/inifile_spec.rb +26 -31
  676. data/spec/unit/util/json_lockfile_spec.rb +3 -5
  677. data/spec/unit/util/ldap/connection_spec.rb +26 -25
  678. data/spec/unit/util/ldap/generator_spec.rb +0 -1
  679. data/spec/unit/util/ldap/manager_spec.rb +102 -101
  680. data/spec/unit/util/lockfile_spec.rb +0 -1
  681. data/spec/unit/util/log/destinations_spec.rb +30 -33
  682. data/spec/unit/util/log_spec.rb +35 -36
  683. data/spec/unit/util/logging_spec.rb +58 -66
  684. data/spec/unit/util/metric_spec.rb +0 -1
  685. data/spec/unit/util/monkey_patches_spec.rb +7 -9
  686. data/spec/unit/util/multi_match_spec.rb +0 -1
  687. data/spec/unit/util/nagios_maker_spec.rb +35 -36
  688. data/spec/unit/util/network_device/cisco/device_spec.rb +59 -50
  689. data/spec/unit/util/network_device/cisco/facts_spec.rb +4 -5
  690. data/spec/unit/util/network_device/cisco/interface_spec.rb +29 -20
  691. data/spec/unit/util/network_device/config_spec.rb +0 -1
  692. data/spec/unit/util/network_device/ipcalc_spec.rb +0 -1
  693. data/spec/unit/util/network_device/transport/base_spec.rb +5 -6
  694. data/spec/unit/util/network_device/transport/ssh_spec.rb +94 -60
  695. data/spec/unit/util/network_device/transport/telnet_spec.rb +18 -14
  696. data/spec/unit/util/network_device_spec.rb +7 -9
  697. data/spec/unit/util/package_spec.rb +0 -1
  698. data/spec/unit/util/pidlock_spec.rb +13 -14
  699. data/spec/unit/util/plist_spec.rb +40 -33
  700. data/spec/unit/util/posix_spec.rb +54 -51
  701. data/spec/unit/util/rdoc_spec.rb +9 -10
  702. data/spec/unit/util/reference_spec.rb +0 -1
  703. data/spec/unit/util/resource_template_spec.rb +20 -20
  704. data/spec/unit/util/retry_action_spec.rb +7 -8
  705. data/spec/unit/util/rubygems_spec.rb +14 -14
  706. data/spec/unit/util/run_mode_spec.rb +3 -4
  707. data/spec/unit/util/selinux_spec.rb +79 -72
  708. data/spec/unit/util/splayer_spec.rb +8 -9
  709. data/spec/unit/util/ssl_spec.rb +0 -1
  710. data/spec/unit/util/storage_spec.rb +3 -4
  711. data/spec/unit/util/suidmanager_spec.rb +45 -54
  712. data/spec/unit/util/symbolic_file_mode_spec.rb +0 -1
  713. data/spec/unit/util/tag_set_spec.rb +0 -1
  714. data/spec/unit/util/tagging_spec.rb +0 -1
  715. data/spec/unit/util/terminal_spec.rb +9 -10
  716. data/spec/unit/util/user_attr_spec.rb +1 -2
  717. data/spec/unit/util/warnings_spec.rb +3 -4
  718. data/spec/unit/util/watcher/periodic_watcher_spec.rb +2 -2
  719. data/spec/unit/util/watcher_spec.rb +51 -21
  720. data/spec/unit/util/windows/access_control_entry_spec.rb +0 -1
  721. data/spec/unit/util/windows/access_control_list_spec.rb +0 -1
  722. data/spec/unit/util/windows/adsi_spec.rb +136 -138
  723. data/spec/unit/util/windows/api_types_spec.rb +0 -1
  724. data/spec/unit/util/windows/eventlog_spec.rb +9 -12
  725. data/spec/unit/util/windows/file_spec.rb +0 -1
  726. data/spec/unit/util/windows/root_certs_spec.rb +0 -1
  727. data/spec/unit/util/windows/security_descriptor_spec.rb +0 -2
  728. data/spec/unit/util/windows/service_spec.rb +66 -68
  729. data/spec/unit/util/windows/sid_spec.rb +11 -13
  730. data/spec/unit/util/windows/string_spec.rb +0 -1
  731. data/spec/unit/util_spec.rb +55 -59
  732. data/spec/unit/version_spec.rb +6 -6
  733. 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/configuration'
@@ -25,17 +24,16 @@ describe Puppet::FileServing::Configuration do
25
24
  end
26
25
 
27
26
  describe "when initializing" do
28
-
29
27
  it "should work without a configuration file" do
30
- Puppet::FileSystem.stubs(:exist?).with(@path).returns(false)
28
+ allow(Puppet::FileSystem).to receive(:exist?).with(@path).and_return(false)
31
29
  expect { Puppet::FileServing::Configuration.configuration }.to_not raise_error
32
30
  end
33
31
 
34
32
  it "should parse the configuration file if present" do
35
- Puppet::FileSystem.stubs(:exist?).with(@path).returns(true)
36
- @parser = mock 'parser'
37
- @parser.expects(:parse).returns({})
38
- Puppet::FileServing::Configuration::Parser.stubs(:new).returns(@parser)
33
+ allow(Puppet::FileSystem).to receive(:exist?).with(@path).and_return(true)
34
+ @parser = double('parser')
35
+ expect(@parser).to receive(:parse).and_return({})
36
+ allow(Puppet::FileServing::Configuration::Parser).to receive(:new).and_return(@parser)
39
37
  Puppet::FileServing::Configuration.configuration
40
38
  end
41
39
 
@@ -45,38 +43,37 @@ describe Puppet::FileServing::Configuration do
45
43
  end
46
44
 
47
45
  describe "when parsing the configuration file" do
48
-
49
46
  before do
50
- Puppet::FileSystem.stubs(:exist?).with(@path).returns(true)
51
- @parser = mock 'parser'
52
- Puppet::FileServing::Configuration::Parser.stubs(:new).returns(@parser)
47
+ allow(Puppet::FileSystem).to receive(:exist?).with(@path).and_return(true)
48
+ @parser = double('parser')
49
+ allow(Puppet::FileServing::Configuration::Parser).to receive(:new).and_return(@parser)
53
50
  end
54
51
 
55
52
  it "should set the mount list to the results of parsing" do
56
- @parser.expects(:parse).returns("one" => mock("mount"))
53
+ expect(@parser).to receive(:parse).and_return("one" => double("mount"))
57
54
  config = Puppet::FileServing::Configuration.configuration
58
55
  expect(config.mounted?("one")).to be_truthy
59
56
  end
60
57
 
61
58
  it "should not raise exceptions" do
62
- @parser.expects(:parse).raises(ArgumentError)
59
+ expect(@parser).to receive(:parse).and_raise(ArgumentError)
63
60
  expect { Puppet::FileServing::Configuration.configuration }.to_not raise_error
64
61
  end
65
62
 
66
63
  it "should replace the existing mount list with the results of reparsing" do
67
- @parser.expects(:parse).returns("one" => mock("mount"))
64
+ expect(@parser).to receive(:parse).and_return("one" => double("mount"))
68
65
  config = Puppet::FileServing::Configuration.configuration
69
66
  expect(config.mounted?("one")).to be_truthy
70
67
  # Now parse again
71
- @parser.expects(:parse).returns("two" => mock('other'))
68
+ expect(@parser).to receive(:parse).and_return("two" => double('other'))
72
69
  config.send(:readconfig, false)
73
70
  expect(config.mounted?("one")).to be_falsey
74
71
  expect(config.mounted?("two")).to be_truthy
75
72
  end
76
73
 
77
74
  it "should not replace the mount list until the file is entirely parsed successfully" do
78
- @parser.expects(:parse).returns("one" => mock("mount"))
79
- @parser.expects(:parse).raises(ArgumentError)
75
+ expect(@parser).to receive(:parse).and_return("one" => double("mount"))
76
+ expect(@parser).to receive(:parse).and_raise(ArgumentError)
80
77
  config = Puppet::FileServing::Configuration.configuration
81
78
  # Now parse again, so the exception gets thrown
82
79
  config.send(:readconfig, false)
@@ -84,7 +81,7 @@ describe Puppet::FileServing::Configuration do
84
81
  end
85
82
 
86
83
  it "should add modules, plugins, and tasks mounts even if the file does not exist" do
87
- Puppet::FileSystem.expects(:exist?).returns false # the file doesn't exist
84
+ expect(Puppet::FileSystem).to receive(:exist?).and_return(false) # the file doesn't exist
88
85
  config = Puppet::FileServing::Configuration.configuration
89
86
  expect(config.mounted?("modules")).to be_truthy
90
87
  expect(config.mounted?("plugins")).to be_truthy
@@ -92,43 +89,43 @@ describe Puppet::FileServing::Configuration do
92
89
  end
93
90
 
94
91
  it "should allow all access to modules, plugins, and tasks if no fileserver.conf exists" do
95
- Puppet::FileSystem.expects(:exist?).returns false # the file doesn't exist
96
- modules = stub 'modules', :empty? => true
97
- Puppet::FileServing::Mount::Modules.stubs(:new).returns(modules)
98
- modules.expects(:allow).with('*')
92
+ expect(Puppet::FileSystem).to receive(:exist?).and_return(false) # the file doesn't exist
93
+ modules = double('modules', :empty? => true)
94
+ allow(Puppet::FileServing::Mount::Modules).to receive(:new).and_return(modules)
95
+ expect(modules).to receive(:allow).with('*')
99
96
 
100
- plugins = stub 'plugins', :empty? => true
101
- Puppet::FileServing::Mount::Plugins.stubs(:new).returns(plugins)
102
- plugins.expects(:allow).with('*')
97
+ plugins = double('plugins', :empty? => true)
98
+ allow(Puppet::FileServing::Mount::Plugins).to receive(:new).and_return(plugins)
99
+ expect(plugins).to receive(:allow).with('*')
103
100
 
104
- tasks = stub 'tasks', :empty? => true
105
- Puppet::FileServing::Mount::Tasks.stubs(:new).returns(tasks)
106
- tasks.expects(:allow).with('*')
101
+ tasks = double('tasks', :empty? => true)
102
+ allow(Puppet::FileServing::Mount::Tasks).to receive(:new).and_return(tasks)
103
+ expect(tasks).to receive(:allow).with('*')
107
104
 
108
105
  Puppet::FileServing::Configuration.configuration
109
106
  end
110
107
 
111
108
  it "should not allow access from all to modules, plugins, and tasks if the fileserver.conf provided some rules" do
112
- Puppet::FileSystem.expects(:exist?).returns false # the file doesn't exist
109
+ expect(Puppet::FileSystem).to receive(:exist?).and_return(false) # the file doesn't exist
113
110
 
114
- modules = stub 'modules', :empty? => false
115
- Puppet::FileServing::Mount::Modules.stubs(:new).returns(modules)
116
- modules.expects(:allow).with('*').never
111
+ modules = double('modules', :empty? => false)
112
+ allow(Puppet::FileServing::Mount::Modules).to receive(:new).and_return(modules)
113
+ expect(modules).not_to receive(:allow).with('*')
117
114
 
118
- plugins = stub 'plugins', :empty? => false
119
- Puppet::FileServing::Mount::Plugins.stubs(:new).returns(plugins)
120
- plugins.expects(:allow).with('*').never
115
+ plugins = double('plugins', :empty? => false)
116
+ allow(Puppet::FileServing::Mount::Plugins).to receive(:new).and_return(plugins)
117
+ expect(plugins).not_to receive(:allow).with('*')
121
118
 
122
- tasks = stub 'tasks', :empty? => false
123
- Puppet::FileServing::Mount::Tasks.stubs(:new).returns(tasks)
124
- tasks.expects(:allow).with('*').never
119
+ tasks = double('tasks', :empty? => false)
120
+ allow(Puppet::FileServing::Mount::Tasks).to receive(:new).and_return(tasks)
121
+ expect(tasks).not_to receive(:allow).with('*')
125
122
 
126
123
  Puppet::FileServing::Configuration.configuration
127
124
  end
128
125
 
129
126
  it "should add modules, plugins, and tasks mounts even if they are not returned by the parser" do
130
- @parser.expects(:parse).returns("one" => mock("mount"))
131
- Puppet::FileSystem.expects(:exist?).returns true # the file doesn't exist
127
+ expect(@parser).to receive(:parse).and_return("one" => double("mount"))
128
+ expect(Puppet::FileSystem).to receive(:exist?).and_return(true) # the file doesn't exist
132
129
  config = Puppet::FileServing::Configuration.configuration
133
130
  expect(config.mounted?("modules")).to be_truthy
134
131
  expect(config.mounted?("plugins")).to be_truthy
@@ -139,16 +136,16 @@ describe Puppet::FileServing::Configuration do
139
136
  describe "when finding the specified mount" do
140
137
  it "should choose the named mount if one exists" do
141
138
  config = Puppet::FileServing::Configuration.configuration
142
- config.expects(:mounts).returns("one" => "foo")
143
- expect(config.find_mount("one", mock('env'))).to eq("foo")
139
+ expect(config).to receive(:mounts).and_return("one" => "foo")
140
+ expect(config.find_mount("one", double('env'))).to eq("foo")
144
141
  end
145
142
 
146
143
  it "should return nil if there is no such named mount" do
147
144
  config = Puppet::FileServing::Configuration.configuration
148
145
 
149
- env = mock 'environment'
150
- mount = mock 'mount'
151
- config.stubs(:mounts).returns("modules" => mount)
146
+ env = double('environment')
147
+ mount = double('mount')
148
+ allow(config).to receive(:mounts).and_return("modules" => mount)
152
149
 
153
150
  expect(config.find_mount("foo", env)).to be_nil
154
151
  end
@@ -156,66 +153,66 @@ describe Puppet::FileServing::Configuration do
156
153
 
157
154
  describe "#split_path" do
158
155
  let(:config) { Puppet::FileServing::Configuration.configuration }
159
- let(:request) { stub 'request', :key => "foo/bar/baz", :options => {}, :node => nil, :environment => mock("env") }
156
+ let(:request) { double('request', :key => "foo/bar/baz", :options => {}, :node => nil, :environment => double("env")) }
160
157
 
161
158
  before do
162
- config.stubs(:find_mount)
159
+ allow(config).to receive(:find_mount)
163
160
  end
164
161
 
165
162
  it "should reread the configuration" do
166
- config.expects(:readconfig)
163
+ expect(config).to receive(:readconfig)
167
164
 
168
165
  config.split_path(request)
169
166
  end
170
167
 
171
168
  it "should treat the first field of the URI path as the mount name" do
172
- config.expects(:find_mount).with { |name, node| name == "foo" }
169
+ expect(config).to receive(:find_mount).with("foo", anything)
173
170
 
174
171
  config.split_path(request)
175
172
  end
176
173
 
177
174
  it "should fail if the mount name is not alpha-numeric" do
178
- request.expects(:key).returns "foo&bar/asdf"
175
+ expect(request).to receive(:key).and_return("foo&bar/asdf")
179
176
 
180
177
  expect { config.split_path(request) }.to raise_error(ArgumentError)
181
178
  end
182
179
 
183
180
  it "should support dashes in the mount name" do
184
- request.expects(:key).returns "foo-bar/asdf"
181
+ expect(request).to receive(:key).and_return("foo-bar/asdf")
185
182
 
186
183
  expect { config.split_path(request) }.to_not raise_error
187
184
  end
188
185
 
189
186
  it "should use the mount name and environment to find the mount" do
190
- config.expects(:find_mount).with { |name, env| name == "foo" and env == request.environment }
191
- request.stubs(:node).returns("mynode")
187
+ expect(config).to receive(:find_mount).with("foo", request.environment)
188
+ allow(request).to receive(:node).and_return("mynode")
192
189
 
193
190
  config.split_path(request)
194
191
  end
195
192
 
196
193
  it "should return nil if the mount cannot be found" do
197
- config.expects(:find_mount).returns nil
194
+ expect(config).to receive(:find_mount).and_return(nil)
198
195
 
199
196
  expect(config.split_path(request)).to be_nil
200
197
  end
201
198
 
202
199
  it "should return the mount and the relative path if the mount is found" do
203
- mount = stub 'mount', :name => "foo"
204
- config.expects(:find_mount).returns mount
200
+ mount = double('mount', :name => "foo")
201
+ expect(config).to receive(:find_mount).and_return(mount)
205
202
 
206
203
  expect(config.split_path(request)).to eq([mount, "bar/baz"])
207
204
  end
208
205
 
209
206
  it "should remove any double slashes" do
210
- request.stubs(:key).returns "foo/bar//baz"
211
- mount = stub 'mount', :name => "foo"
212
- config.expects(:find_mount).returns mount
207
+ allow(request).to receive(:key).and_return("foo/bar//baz")
208
+ mount = double('mount', :name => "foo")
209
+ expect(config).to receive(:find_mount).and_return(mount)
213
210
 
214
211
  expect(config.split_path(request)).to eq([mount, "bar/baz"])
215
212
  end
216
213
 
217
214
  it "should fail if the path contains .." do
218
- request.stubs(:key).returns 'module/foo/../../bar'
215
+ allow(request).to receive(:key).and_return('module/foo/../../bar')
219
216
 
220
217
  expect do
221
218
  config.split_path(request)
@@ -223,17 +220,17 @@ describe Puppet::FileServing::Configuration do
223
220
  end
224
221
 
225
222
  it "should return the relative path as nil if it is an empty string" do
226
- request.expects(:key).returns "foo"
227
- mount = stub 'mount', :name => "foo"
228
- config.expects(:find_mount).returns mount
223
+ expect(request).to receive(:key).and_return("foo")
224
+ mount = double('mount', :name => "foo")
225
+ expect(config).to receive(:find_mount).and_return(mount)
229
226
 
230
227
  expect(config.split_path(request)).to eq([mount, nil])
231
228
  end
232
229
 
233
230
  it "should add 'modules/' to the relative path if the modules mount is used but not specified, for backward compatibility" do
234
- request.expects(:key).returns "foo/bar"
235
- mount = stub 'mount', :name => "modules"
236
- config.expects(:find_mount).returns mount
231
+ expect(request).to receive(:key).and_return("foo/bar")
232
+ mount = double('mount', :name => "modules")
233
+ expect(config).to receive(:find_mount).and_return(mount)
237
234
 
238
235
  expect(config.split_path(request)).to eq([mount, "foo/bar"])
239
236
  end
@@ -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