puppet 6.0.10-universal-darwin → 6.1.0-universal-darwin

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 (748) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -0
  3. data/Gemfile.lock +31 -27
  4. data/Guardfile.example +76 -0
  5. data/LICENSE +189 -4
  6. data/MAINTAINERS +47 -0
  7. data/README.md +3 -3
  8. data/lib/hiera/scope.rb +0 -7
  9. data/lib/puppet.rb +6 -5
  10. data/lib/puppet/application.rb +3 -3
  11. data/lib/puppet/application/cert.rb +2 -2
  12. data/lib/puppet/application/device.rb +83 -109
  13. data/lib/puppet/application/filebucket.rb +1 -10
  14. data/lib/puppet/application/ssl.rb +0 -2
  15. data/lib/puppet/configurer.rb +9 -10
  16. data/lib/puppet/confine/false.rb +1 -7
  17. data/lib/puppet/confine/true.rb +1 -7
  18. data/lib/puppet/defaults.rb +39 -51
  19. data/lib/puppet/forge.rb +1 -4
  20. data/lib/puppet/functions/abs.rb +1 -1
  21. data/lib/puppet/functions/call.rb +1 -2
  22. data/lib/puppet/functions/new.rb +1 -1
  23. data/lib/puppet/indirector/request.rb +15 -26
  24. data/lib/puppet/network/http/connection.rb +12 -32
  25. data/lib/puppet/network/http/factory.rb +0 -5
  26. data/lib/puppet/pal/catalog_compiler.rb +96 -0
  27. data/lib/puppet/pal/compiler.rb +221 -0
  28. data/lib/puppet/pal/function_signature.rb +52 -0
  29. data/lib/puppet/pal/json_catalog_encoder.rb +67 -0
  30. data/lib/puppet/pal/pal_api.rb +15 -0
  31. data/lib/puppet/pal/pal_impl.rb +523 -0
  32. data/lib/puppet/pal/plan_signature.rb +71 -0
  33. data/lib/puppet/pal/script_compiler.rb +71 -0
  34. data/lib/puppet/pal/task_signature.rb +58 -0
  35. data/lib/puppet/parser/functions/generate.rb +7 -6
  36. data/lib/puppet/plugins/configuration.rb +5 -1
  37. data/lib/puppet/pops/evaluator/evaluator_impl.rb +5 -1
  38. data/lib/puppet/pops/evaluator/external_syntax_support.rb +3 -3
  39. data/lib/puppet/pops/issues.rb +0 -4
  40. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +4 -60
  41. data/lib/puppet/pops/model/factory.rb +4 -38
  42. data/lib/puppet/pops/model/pn_transformer.rb +0 -5
  43. data/lib/puppet/pops/parser/egrammar.ra +2 -2
  44. data/lib/puppet/pops/parser/heredoc_support.rb +7 -17
  45. data/lib/puppet/pops/parser/lexer2.rb +1 -6
  46. data/lib/puppet/pops/parser/locator.rb +86 -106
  47. data/lib/puppet/pops/parser/parser_support.rb +2 -11
  48. data/lib/puppet/pops/types/string_converter.rb +7 -2
  49. data/lib/puppet/pops/types/type_mismatch_describer.rb +1 -1
  50. data/lib/puppet/pops/types/types.rb +3 -5
  51. data/lib/puppet/pops/validation/checker4_0.rb +13 -0
  52. data/lib/puppet/provider.rb +2 -1
  53. data/lib/puppet/provider/exec.rb +6 -1
  54. data/lib/puppet/provider/file/windows.rb +1 -49
  55. data/lib/puppet/provider/group/windows_adsi.rb +1 -4
  56. data/lib/puppet/provider/package.rb +0 -2
  57. data/lib/puppet/provider/package/dpkg.rb +2 -15
  58. data/lib/puppet/provider/package/gem.rb +42 -102
  59. data/lib/puppet/provider/package/pip.rb +111 -135
  60. data/lib/puppet/provider/package/pip3.rb +1 -1
  61. data/lib/puppet/provider/package/pkgng.rb +37 -21
  62. data/lib/puppet/provider/package/puppet_gem.rb +1 -1
  63. data/lib/puppet/provider/package/rpm.rb +16 -27
  64. data/lib/puppet/provider/package/windows.rb +1 -5
  65. data/lib/puppet/provider/package/yum.rb +1 -2
  66. data/lib/puppet/provider/service/systemd.rb +17 -0
  67. data/lib/puppet/provider/service/upstart.rb +5 -17
  68. data/lib/puppet/provider/service/windows.rb +8 -3
  69. data/lib/puppet/provider/user/directoryservice.rb +4 -16
  70. data/lib/puppet/provider/user/useradd.rb +13 -16
  71. data/lib/puppet/resource.rb +3 -1
  72. data/lib/puppet/rest/client.rb +83 -0
  73. data/lib/puppet/rest/route.rb +1 -1
  74. data/lib/puppet/settings.rb +5 -10
  75. data/lib/puppet/settings/server_list_setting.rb +0 -9
  76. data/lib/puppet/ssl/host.rb +11 -0
  77. data/lib/puppet/ssl/validator/default_validator.rb +0 -31
  78. data/lib/puppet/syntax_checkers/epp.rb +34 -0
  79. data/lib/puppet/syntax_checkers/pp.rb +34 -0
  80. data/lib/puppet/transaction.rb +7 -12
  81. data/lib/puppet/transaction/event_manager.rb +5 -1
  82. data/lib/puppet/transaction/resource_harness.rb +0 -1
  83. data/lib/puppet/type.rb +6 -0
  84. data/lib/puppet/type/exec.rb +5 -27
  85. data/lib/puppet/type/file/mode.rb +1 -6
  86. data/lib/puppet/type/file/source.rb +1 -0
  87. data/lib/puppet/type/filebucket.rb +8 -12
  88. data/lib/puppet/type/package.rb +11 -44
  89. data/lib/puppet/type/schedule.rb +0 -4
  90. data/lib/puppet/type/service.rb +12 -0
  91. data/lib/puppet/type/user.rb +1 -1
  92. data/lib/puppet/util/command_line.rb +1 -5
  93. data/lib/puppet/util/connection.rb +6 -15
  94. data/lib/puppet/util/http_proxy.rb +2 -3
  95. data/lib/puppet/util/log.rb +2 -7
  96. data/lib/puppet/util/pidlock.rb +1 -15
  97. data/lib/puppet/util/windows/process.rb +5 -73
  98. data/lib/puppet/util/windows/registry.rb +1 -7
  99. data/lib/puppet/util/windows/security.rb +8 -29
  100. data/lib/puppet/util/windows/service.rb +33 -27
  101. data/lib/puppet/util/windows/user.rb +4 -14
  102. data/lib/puppet/version.rb +1 -1
  103. data/lib/puppet_pal.rb +5 -1132
  104. data/locales/ja/puppet.po +297 -363
  105. data/locales/puppet.pot +445 -517
  106. data/man/man5/puppet.conf.5 +12 -20
  107. data/man/man8/puppet-agent.8 +1 -1
  108. data/man/man8/puppet-apply.8 +1 -1
  109. data/man/man8/puppet-catalog.8 +1 -1
  110. data/man/man8/puppet-config.8 +1 -1
  111. data/man/man8/puppet-describe.8 +1 -1
  112. data/man/man8/puppet-device.8 +1 -1
  113. data/man/man8/puppet-doc.8 +1 -1
  114. data/man/man8/puppet-epp.8 +1 -1
  115. data/man/man8/puppet-facts.8 +1 -1
  116. data/man/man8/puppet-filebucket.8 +2 -6
  117. data/man/man8/puppet-generate.8 +1 -1
  118. data/man/man8/puppet-help.8 +1 -1
  119. data/man/man8/puppet-key.8 +1 -1
  120. data/man/man8/puppet-lookup.8 +1 -1
  121. data/man/man8/puppet-man.8 +1 -1
  122. data/man/man8/puppet-module.8 +1 -1
  123. data/man/man8/puppet-node.8 +1 -1
  124. data/man/man8/puppet-parser.8 +1 -1
  125. data/man/man8/puppet-plugin.8 +1 -1
  126. data/man/man8/puppet-report.8 +1 -1
  127. data/man/man8/puppet-resource.8 +1 -1
  128. data/man/man8/puppet-script.8 +1 -1
  129. data/man/man8/puppet-ssl.8 +1 -1
  130. data/man/man8/puppet-status.8 +1 -1
  131. data/man/man8/puppet.8 +2 -2
  132. data/spec/fixtures/unit/provider/package/pkgng/pkg.query +7 -1
  133. data/spec/fixtures/unit/provider/package/pkgng/pkg.query.zsh +1 -0
  134. data/spec/integration/agent/logging_spec.rb +7 -5
  135. data/spec/integration/application/apply_spec.rb +16 -18
  136. data/spec/integration/application/doc_spec.rb +2 -1
  137. data/spec/integration/application/lookup_spec.rb +5 -5
  138. data/spec/integration/configurer_spec.rb +6 -5
  139. data/spec/integration/defaults_spec.rb +6 -5
  140. data/spec/integration/directory_environments_spec.rb +1 -1
  141. data/spec/integration/faces/config_spec.rb +4 -3
  142. data/spec/integration/faces/documentation_spec.rb +1 -0
  143. data/spec/integration/faces/plugin_spec.rb +1 -1
  144. data/spec/integration/file_bucket/file_spec.rb +4 -2
  145. data/spec/integration/file_serving/content_spec.rb +1 -0
  146. data/spec/integration/file_serving/fileset_spec.rb +1 -0
  147. data/spec/integration/file_serving/metadata_spec.rb +1 -0
  148. data/spec/integration/file_serving/terminus_helper_spec.rb +1 -0
  149. data/spec/integration/indirector/catalog/compiler_spec.rb +11 -10
  150. data/spec/integration/indirector/direct_file_server_spec.rb +1 -1
  151. data/spec/integration/indirector/facts/facter_spec.rb +5 -4
  152. data/spec/integration/indirector/file_content/file_server_spec.rb +8 -7
  153. data/spec/integration/indirector/file_metadata/file_server_spec.rb +8 -7
  154. data/spec/integration/network/authconfig_spec.rb +24 -23
  155. data/spec/integration/network/formats_spec.rb +1 -0
  156. data/spec/integration/node/environment_spec.rb +1 -0
  157. data/spec/integration/node/facts_spec.rb +10 -9
  158. data/spec/integration/node_spec.rb +7 -6
  159. data/spec/integration/parser/catalog_spec.rb +5 -1
  160. data/spec/integration/parser/collection_spec.rb +2 -1
  161. data/spec/integration/parser/compiler_spec.rb +6 -6
  162. data/spec/integration/parser/scope_spec.rb +1 -1
  163. data/spec/integration/parser/undef_param_spec.rb +1 -1
  164. data/spec/integration/provider/service/init_spec.rb +5 -4
  165. data/spec/integration/provider/service/systemd_spec.rb +2 -0
  166. data/spec/integration/provider/service/windows_spec.rb +2 -1
  167. data/spec/integration/reference/providers_spec.rb +2 -1
  168. data/spec/integration/reports_spec.rb +2 -1
  169. data/spec/integration/resource/catalog_spec.rb +17 -14
  170. data/spec/integration/resource/type_collection_spec.rb +5 -4
  171. data/spec/integration/ssl/certificate_request_spec.rb +1 -0
  172. data/spec/integration/ssl/host_spec.rb +2 -1
  173. data/spec/integration/ssl/key_spec.rb +1 -0
  174. data/spec/integration/test/test_helper_spec.rb +1 -0
  175. data/spec/integration/transaction/report_spec.rb +11 -6
  176. data/spec/integration/transaction_spec.rb +19 -18
  177. data/spec/integration/type/exec_spec.rb +1 -0
  178. data/spec/integration/type/file_spec.rb +33 -13
  179. data/spec/integration/type/package_spec.rb +24 -20
  180. data/spec/integration/type/tidy_spec.rb +2 -1
  181. data/spec/integration/type_spec.rb +1 -0
  182. data/spec/integration/util/autoload_spec.rb +2 -1
  183. data/spec/integration/util/rdoc/parser_spec.rb +1 -0
  184. data/spec/integration/util/settings_spec.rb +1 -0
  185. data/spec/integration/util/windows/adsi_spec.rb +5 -3
  186. data/spec/integration/util/windows/principal_spec.rb +1 -0
  187. data/spec/integration/util/windows/process_spec.rb +6 -4
  188. data/spec/integration/util/windows/registry_spec.rb +51 -93
  189. data/spec/integration/util/windows/security_spec.rb +4 -2
  190. data/spec/integration/util/windows/user_spec.rb +20 -37
  191. data/spec/integration/util_spec.rb +7 -4
  192. data/spec/lib/puppet_spec/compiler.rb +1 -1
  193. data/spec/lib/puppet_spec/files.rb +1 -0
  194. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +1 -1
  195. data/spec/lib/puppet_spec/scope.rb +2 -1
  196. data/spec/shared_behaviours/all_parsedfile_providers.rb +1 -1
  197. data/spec/shared_behaviours/file_server_terminus.rb +9 -8
  198. data/spec/shared_behaviours/file_serving.rb +8 -6
  199. data/spec/shared_behaviours/file_serving_model.rb +5 -3
  200. data/spec/shared_behaviours/hiera_indirections.rb +4 -3
  201. data/spec/shared_behaviours/iterative_functions.rb +1 -0
  202. data/spec/shared_behaviours/memory_terminus.rb +2 -2
  203. data/spec/shared_examples/rhel_package_provider.rb +70 -112
  204. data/spec/spec_helper.rb +2 -11
  205. data/spec/unit/agent/disabler_spec.rb +5 -4
  206. data/spec/unit/agent/locker_spec.rb +13 -12
  207. data/spec/unit/agent_spec.rb +85 -80
  208. data/spec/unit/application/agent_spec.rb +93 -88
  209. data/spec/unit/application/apply_spec.rb +83 -82
  210. data/spec/unit/application/config_spec.rb +1 -0
  211. data/spec/unit/application/describe_spec.rb +7 -6
  212. data/spec/unit/application/device_spec.rb +419 -395
  213. data/spec/unit/application/doc_spec.rb +46 -44
  214. data/spec/unit/application/face_base_spec.rb +62 -61
  215. data/spec/unit/application/facts_spec.rb +4 -3
  216. data/spec/unit/application/filebucket_spec.rb +74 -66
  217. data/spec/unit/application/indirection_base_spec.rb +6 -8
  218. data/spec/unit/application/lookup_spec.rb +26 -26
  219. data/spec/unit/application/resource_spec.rb +48 -42
  220. data/spec/unit/application/ssl_spec.rb +3 -8
  221. data/spec/unit/application_spec.rb +98 -86
  222. data/spec/unit/capability_spec.rb +6 -6
  223. data/spec/unit/certificate_factory_spec.rb +5 -3
  224. data/spec/unit/configurer/downloader_spec.rb +21 -20
  225. data/spec/unit/configurer/fact_handler_spec.rb +3 -2
  226. data/spec/unit/configurer/plugin_handler_spec.rb +8 -41
  227. data/spec/unit/configurer_spec.rb +198 -194
  228. data/spec/unit/confine/exists_spec.rb +15 -17
  229. data/spec/unit/confine/false_spec.rb +6 -32
  230. data/spec/unit/confine/feature_spec.rb +5 -7
  231. data/spec/unit/confine/true_spec.rb +6 -32
  232. data/spec/unit/confine/variable_spec.rb +15 -14
  233. data/spec/unit/confine_collection_spec.rb +29 -28
  234. data/spec/unit/confine_spec.rb +14 -13
  235. data/spec/unit/confiner_spec.rb +11 -10
  236. data/spec/unit/context/trusted_information_spec.rb +1 -1
  237. data/spec/unit/daemon_spec.rb +36 -35
  238. data/spec/unit/data_providers/function_data_provider_spec.rb +1 -0
  239. data/spec/unit/data_providers/hiera_data_provider_spec.rb +1 -0
  240. data/spec/unit/datatypes_spec.rb +4 -3
  241. data/spec/unit/defaults_spec.rb +27 -18
  242. data/spec/unit/environments_spec.rb +7 -7
  243. data/spec/unit/etc_spec.rb +32 -30
  244. data/spec/unit/external/pson_spec.rb +1 -0
  245. data/spec/unit/face/catalog_spec.rb +1 -0
  246. data/spec/unit/face/config_spec.rb +35 -31
  247. data/spec/unit/face/epp_face_spec.rb +4 -3
  248. data/spec/unit/face/facts_spec.rb +6 -5
  249. data/spec/unit/face/generate_spec.rb +5 -4
  250. data/spec/unit/face/help_spec.rb +8 -7
  251. data/spec/unit/face/key_spec.rb +1 -0
  252. data/spec/unit/face/man_spec.rb +2 -1
  253. data/spec/unit/face/module/install_spec.rb +5 -3
  254. data/spec/unit/face/module/list_spec.rb +12 -2
  255. data/spec/unit/face/module/search_spec.rb +9 -11
  256. data/spec/unit/face/module/uninstall_spec.rb +8 -4
  257. data/spec/unit/face/node_spec.rb +24 -23
  258. data/spec/unit/face/parser_spec.rb +18 -3
  259. data/spec/unit/face/plugin_spec.rb +9 -36
  260. data/spec/unit/face/status_spec.rb +1 -0
  261. data/spec/unit/file_bucket/dipper_spec.rb +20 -24
  262. data/spec/unit/file_bucket/file_spec.rb +2 -0
  263. data/spec/unit/file_serving/base_spec.rb +15 -14
  264. data/spec/unit/file_serving/configuration/parser_spec.rb +28 -27
  265. data/spec/unit/file_serving/configuration_spec.rb +66 -63
  266. data/spec/unit/file_serving/content_spec.rb +11 -10
  267. data/spec/unit/file_serving/fileset_spec.rb +58 -63
  268. data/spec/unit/file_serving/http_metadata_spec.rb +7 -8
  269. data/spec/unit/file_serving/metadata_spec.rb +36 -36
  270. data/spec/unit/file_serving/mount/file_spec.rb +32 -31
  271. data/spec/unit/file_serving/mount/locales_spec.rb +24 -23
  272. data/spec/unit/file_serving/mount/modules_spec.rb +15 -14
  273. data/spec/unit/file_serving/mount/pluginfacts_spec.rb +24 -23
  274. data/spec/unit/file_serving/mount/plugins_spec.rb +24 -23
  275. data/spec/unit/file_serving/mount/tasks_spec.rb +15 -14
  276. data/spec/unit/file_serving/mount_spec.rb +1 -0
  277. data/spec/unit/file_serving/terminus_helper_spec.rb +42 -37
  278. data/spec/unit/file_serving/terminus_selector_spec.rb +13 -12
  279. data/spec/unit/file_system/uniquefile_spec.rb +4 -4
  280. data/spec/unit/file_system_spec.rb +2 -2
  281. data/spec/unit/forge/errors_spec.rb +1 -1
  282. data/spec/unit/forge/forge_spec.rb +16 -17
  283. data/spec/unit/forge/module_release_spec.rb +18 -18
  284. data/spec/unit/forge/repository_spec.rb +30 -29
  285. data/spec/unit/forge_spec.rb +11 -15
  286. data/spec/unit/functions/binary_file_spec.rb +3 -3
  287. data/spec/unit/functions/contain_spec.rb +2 -0
  288. data/spec/unit/functions/defined_spec.rb +1 -0
  289. data/spec/unit/functions/epp_spec.rb +2 -2
  290. data/spec/unit/functions/find_file_spec.rb +7 -7
  291. data/spec/unit/functions/include_spec.rb +4 -0
  292. data/spec/unit/functions/lookup_fixture_spec.rb +1 -0
  293. data/spec/unit/functions/lookup_spec.rb +2 -1
  294. data/spec/unit/functions/module_directory_spec.rb +12 -12
  295. data/spec/unit/functions/new_spec.rb +0 -15
  296. data/spec/unit/functions/require_spec.rb +3 -0
  297. data/spec/unit/functions/shared.rb +8 -5
  298. data/spec/unit/functions/versioncmp_spec.rb +2 -1
  299. data/spec/unit/functions4_spec.rb +10 -9
  300. data/spec/unit/gettext/config_spec.rb +4 -4
  301. data/spec/unit/gettext/module_loading_spec.rb +7 -7
  302. data/spec/unit/graph/rb_tree_map_spec.rb +2 -0
  303. data/spec/unit/graph/relationship_graph_spec.rb +2 -1
  304. data/spec/unit/graph/simple_graph_spec.rb +10 -9
  305. data/spec/unit/hiera/scope_spec.rb +0 -7
  306. data/spec/unit/hiera_puppet_spec.rb +20 -20
  307. data/spec/unit/indirector/catalog/compiler_spec.rb +149 -147
  308. data/spec/unit/indirector/catalog/json_spec.rb +2 -1
  309. data/spec/unit/indirector/catalog/msgpack_spec.rb +1 -0
  310. data/spec/unit/indirector/catalog/rest_spec.rb +1 -0
  311. data/spec/unit/indirector/catalog/store_configs_spec.rb +1 -0
  312. data/spec/unit/indirector/catalog/yaml_spec.rb +1 -0
  313. data/spec/unit/indirector/certificate/file_spec.rb +1 -0
  314. data/spec/unit/indirector/certificate/rest_spec.rb +10 -8
  315. data/spec/unit/indirector/certificate_request/file_spec.rb +1 -0
  316. data/spec/unit/indirector/certificate_request/rest_spec.rb +1 -0
  317. data/spec/unit/indirector/direct_file_server_spec.rb +18 -17
  318. data/spec/unit/indirector/envelope_spec.rb +2 -1
  319. data/spec/unit/indirector/exec_spec.rb +5 -4
  320. data/spec/unit/indirector/face_spec.rb +9 -9
  321. data/spec/unit/indirector/facts/facter_spec.rb +43 -37
  322. data/spec/unit/indirector/facts/network_device_spec.rb +9 -8
  323. data/spec/unit/indirector/facts/rest_spec.rb +8 -7
  324. data/spec/unit/indirector/facts/store_configs_spec.rb +1 -0
  325. data/spec/unit/indirector/facts/yaml_spec.rb +1 -0
  326. data/spec/unit/indirector/file_bucket_file/file_spec.rb +4 -3
  327. data/spec/unit/indirector/file_bucket_file/rest_spec.rb +1 -0
  328. data/spec/unit/indirector/file_bucket_file/selector_spec.rb +5 -4
  329. data/spec/unit/indirector/file_content/file_server_spec.rb +1 -0
  330. data/spec/unit/indirector/file_content/file_spec.rb +1 -0
  331. data/spec/unit/indirector/file_content/rest_spec.rb +1 -0
  332. data/spec/unit/indirector/file_content/selector_spec.rb +1 -0
  333. data/spec/unit/indirector/file_metadata/file_server_spec.rb +1 -0
  334. data/spec/unit/indirector/file_metadata/file_spec.rb +13 -12
  335. data/spec/unit/indirector/file_metadata/rest_spec.rb +1 -0
  336. data/spec/unit/indirector/file_metadata/selector_spec.rb +1 -0
  337. data/spec/unit/indirector/file_server_spec.rb +87 -87
  338. data/spec/unit/indirector/indirection_spec.rb +226 -242
  339. data/spec/unit/indirector/json_spec.rb +9 -7
  340. data/spec/unit/indirector/key/file_spec.rb +22 -21
  341. data/spec/unit/indirector/memory_spec.rb +7 -6
  342. data/spec/unit/indirector/msgpack_spec.rb +9 -7
  343. data/spec/unit/indirector/node/exec_spec.rb +3 -2
  344. data/spec/unit/indirector/node/memory_spec.rb +4 -2
  345. data/spec/unit/indirector/node/msgpack_spec.rb +1 -0
  346. data/spec/unit/indirector/node/plain_spec.rb +4 -2
  347. data/spec/unit/indirector/node/rest_spec.rb +1 -0
  348. data/spec/unit/indirector/node/store_configs_spec.rb +1 -0
  349. data/spec/unit/indirector/node/yaml_spec.rb +1 -0
  350. data/spec/unit/indirector/none_spec.rb +5 -5
  351. data/spec/unit/indirector/plain_spec.rb +8 -7
  352. data/spec/unit/indirector/report/msgpack_spec.rb +1 -0
  353. data/spec/unit/indirector/report/processor_spec.rb +22 -21
  354. data/spec/unit/indirector/report/rest_spec.rb +12 -11
  355. data/spec/unit/indirector/report/yaml_spec.rb +1 -0
  356. data/spec/unit/indirector/request_spec.rb +12 -11
  357. data/spec/unit/indirector/resource/ral_spec.rb +54 -47
  358. data/spec/unit/indirector/resource/store_configs_spec.rb +1 -0
  359. data/spec/unit/indirector/rest_spec.rb +110 -113
  360. data/spec/unit/indirector/ssl_file_spec.rb +65 -64
  361. data/spec/unit/indirector/status/local_spec.rb +1 -0
  362. data/spec/unit/indirector/status/rest_spec.rb +1 -0
  363. data/spec/unit/indirector/store_configs_spec.rb +1 -0
  364. data/spec/unit/indirector/terminus_spec.rb +27 -27
  365. data/spec/unit/indirector/yaml_spec.rb +6 -5
  366. data/spec/unit/indirector_spec.rb +2 -1
  367. data/spec/unit/info_service_spec.rb +1 -1
  368. data/spec/unit/interface/action_builder_spec.rb +1 -0
  369. data/spec/unit/interface/action_manager_spec.rb +1 -0
  370. data/spec/unit/interface/action_spec.rb +3 -2
  371. data/spec/unit/interface/documentation_spec.rb +1 -0
  372. data/spec/unit/interface/face_collection_spec.rb +12 -19
  373. data/spec/unit/interface_spec.rb +3 -3
  374. data/spec/unit/man_spec.rb +4 -3
  375. data/spec/unit/module_spec.rb +51 -46
  376. data/spec/unit/module_tool/applications/installer_spec.rb +11 -10
  377. data/spec/unit/module_tool/applications/searcher_spec.rb +3 -3
  378. data/spec/unit/module_tool/applications/uninstaller_spec.rb +2 -1
  379. data/spec/unit/module_tool/applications/unpacker_spec.rb +13 -13
  380. data/spec/unit/module_tool/applications/upgrader_spec.rb +5 -5
  381. data/spec/unit/module_tool/install_directory_spec.rb +8 -8
  382. data/spec/unit/module_tool/installed_modules_spec.rb +3 -3
  383. data/spec/unit/module_tool/tar/gnu_spec.rb +6 -6
  384. data/spec/unit/module_tool/tar/mini_spec.rb +12 -12
  385. data/spec/unit/module_tool/tar_spec.rb +13 -12
  386. data/spec/unit/module_tool_spec.rb +12 -7
  387. data/spec/unit/network/auth_config_parser_spec.rb +13 -11
  388. data/spec/unit/network/authconfig_spec.rb +18 -17
  389. data/spec/unit/network/authorization_spec.rb +5 -4
  390. data/spec/unit/network/authstore_spec.rb +1 -0
  391. data/spec/unit/network/format_handler_spec.rb +1 -0
  392. data/spec/unit/network/format_spec.rb +10 -9
  393. data/spec/unit/network/format_support_spec.rb +29 -28
  394. data/spec/unit/network/formats_spec.rb +5 -4
  395. data/spec/unit/network/http/api/indirected_routes_spec.rb +29 -24
  396. data/spec/unit/network/http/api/master/v3/authorization_spec.rb +2 -2
  397. data/spec/unit/network/http/api/master/v3/environment_spec.rb +1 -1
  398. data/spec/unit/network/http/api/master/v3/environments_spec.rb +7 -6
  399. data/spec/unit/network/http/api_spec.rb +2 -0
  400. data/spec/unit/network/http/compression_spec.rb +22 -21
  401. data/spec/unit/network/http/connection_spec.rb +121 -30
  402. data/spec/unit/network/http/factory_spec.rb +6 -11
  403. data/spec/unit/network/http/handler_spec.rb +18 -9
  404. data/spec/unit/network/http/nocache_pool_spec.rb +7 -6
  405. data/spec/unit/network/http/pool_spec.rb +29 -28
  406. data/spec/unit/network/http/request_spec.rb +2 -0
  407. data/spec/unit/network/http/response_spec.rb +13 -11
  408. data/spec/unit/network/http/route_spec.rb +1 -0
  409. data/spec/unit/network/http/session_spec.rb +2 -1
  410. data/spec/unit/network/http/site_spec.rb +1 -0
  411. data/spec/unit/network/http_pool_spec.rb +9 -18
  412. data/spec/unit/network/http_spec.rb +1 -0
  413. data/spec/unit/network/resolver_spec.rb +26 -25
  414. data/spec/unit/network/rights_spec.rb +53 -52
  415. data/spec/unit/node/environment_spec.rb +15 -14
  416. data/spec/unit/node/facts_spec.rb +7 -5
  417. data/spec/unit/node_spec.rb +10 -4
  418. data/spec/unit/other/selinux_spec.rb +1 -0
  419. data/spec/unit/parameter/boolean_spec.rb +2 -1
  420. data/spec/unit/parameter/package_options_spec.rb +2 -1
  421. data/spec/unit/parameter/path_spec.rb +1 -0
  422. data/spec/unit/parameter/value_collection_spec.rb +1 -0
  423. data/spec/unit/parameter/value_spec.rb +1 -0
  424. data/spec/unit/parameter_spec.rb +9 -9
  425. data/spec/unit/parser/ast/block_expression_spec.rb +8 -6
  426. data/spec/unit/parser/ast/leaf_spec.rb +21 -20
  427. data/spec/unit/parser/compiler_spec.rb +96 -84
  428. data/spec/unit/parser/environment_compiler_spec.rb +8 -7
  429. data/spec/unit/parser/files_spec.rb +1 -0
  430. data/spec/unit/parser/functions/create_resources_spec.rb +1 -1
  431. data/spec/unit/parser/functions/digest_spec.rb +1 -0
  432. data/spec/unit/parser/functions/fail_spec.rb +2 -1
  433. data/spec/unit/parser/functions/file_spec.rb +14 -13
  434. data/spec/unit/parser/functions/fqdn_rand_spec.rb +6 -5
  435. data/spec/unit/parser/functions/generate_spec.rb +8 -7
  436. data/spec/unit/parser/functions/inline_template_spec.rb +1 -0
  437. data/spec/unit/parser/functions/regsubst_spec.rb +1 -0
  438. data/spec/unit/parser/functions/scanf_spec.rb +1 -0
  439. data/spec/unit/parser/functions/shellquote_spec.rb +1 -0
  440. data/spec/unit/parser/functions/split_spec.rb +1 -0
  441. data/spec/unit/parser/functions/sprintf_spec.rb +1 -0
  442. data/spec/unit/parser/functions/tag_spec.rb +2 -1
  443. data/spec/unit/parser/functions/tagged_spec.rb +3 -2
  444. data/spec/unit/parser/functions/template_spec.rb +13 -13
  445. data/spec/unit/parser/functions/versioncmp_spec.rb +2 -1
  446. data/spec/unit/parser/functions_spec.rb +7 -6
  447. data/spec/unit/parser/relationship_spec.rb +1 -0
  448. data/spec/unit/parser/resource_spec.rb +42 -42
  449. data/spec/unit/parser/scope_spec.rb +35 -39
  450. data/spec/unit/parser/templatewrapper_spec.rb +12 -11
  451. data/spec/unit/parser/type_loader_spec.rb +19 -17
  452. data/spec/unit/pops/adaptable_spec.rb +1 -0
  453. data/spec/unit/pops/benchmark_spec.rb +1 -0
  454. data/spec/unit/pops/evaluator/access_ops_spec.rb +1 -0
  455. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +1 -0
  456. data/spec/unit/pops/evaluator/basic_expressions_spec.rb +1 -0
  457. data/spec/unit/pops/evaluator/collections_ops_spec.rb +1 -0
  458. data/spec/unit/pops/evaluator/comparison_ops_spec.rb +1 -0
  459. data/spec/unit/pops/evaluator/conditionals_spec.rb +1 -0
  460. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +47 -10
  461. data/spec/unit/pops/evaluator/logical_ops_spec.rb +1 -0
  462. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +1 -0
  463. data/spec/unit/pops/evaluator/string_interpolation_spec.rb +1 -0
  464. data/spec/unit/pops/evaluator/variables_spec.rb +1 -0
  465. data/spec/unit/pops/factory_spec.rb +4 -3
  466. data/spec/unit/pops/issues_spec.rb +20 -19
  467. data/spec/unit/pops/loaders/loader_spec.rb +4 -8
  468. data/spec/unit/pops/loaders/loaders_spec.rb +31 -101
  469. data/spec/unit/pops/lookup/context_spec.rb +1 -0
  470. data/spec/unit/pops/lookup/interpolation_spec.rb +3 -2
  471. data/spec/unit/pops/merge_strategy_spec.rb +1 -0
  472. data/spec/unit/pops/migration_spec.rb +5 -3
  473. data/spec/unit/pops/model/model_spec.rb +1 -0
  474. data/spec/unit/pops/model/pn_transformer_spec.rb +1 -4
  475. data/spec/unit/pops/parser/locator_spec.rb +6 -48
  476. data/spec/unit/pops/parser/parse_application_spec.rb +1 -0
  477. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +1 -0
  478. data/spec/unit/pops/parser/parse_calls_spec.rb +1 -0
  479. data/spec/unit/pops/parser/parse_capabilities_spec.rb +1 -0
  480. data/spec/unit/pops/parser/parse_conditionals_spec.rb +1 -0
  481. data/spec/unit/pops/parser/parse_containers_spec.rb +1 -0
  482. data/spec/unit/pops/parser/parse_heredoc_spec.rb +15 -111
  483. data/spec/unit/pops/parser/parse_plan_spec.rb +1 -0
  484. data/spec/unit/pops/parser/parse_resource_spec.rb +1 -0
  485. data/spec/unit/pops/parser/parse_site_spec.rb +1 -0
  486. data/spec/unit/pops/parser/pn_parser_spec.rb +1 -0
  487. data/spec/unit/pops/pn_spec.rb +1 -0
  488. data/spec/unit/pops/resource/resource_type_impl_spec.rb +1 -0
  489. data/spec/unit/pops/serialization/serialization_spec.rb +1 -1
  490. data/spec/unit/pops/serialization/to_from_hr_spec.rb +1 -1
  491. data/spec/unit/pops/types/recursion_guard_spec.rb +10 -10
  492. data/spec/unit/pops/types/ruby_generator_spec.rb +2 -2
  493. data/spec/unit/pops/types/string_converter_spec.rb +5 -1
  494. data/spec/unit/pops/types/type_asserter_spec.rb +2 -2
  495. data/spec/unit/pops/types/type_calculator_spec.rb +30 -30
  496. data/spec/unit/pops/types/type_mismatch_describer_spec.rb +0 -9
  497. data/spec/unit/pops/types/type_parser_spec.rb +13 -13
  498. data/spec/unit/pops/validator/validator_spec.rb +2 -1
  499. data/spec/unit/pops/visitor_spec.rb +1 -0
  500. data/spec/unit/property/boolean_spec.rb +1 -1
  501. data/spec/unit/property/ensure_spec.rb +1 -0
  502. data/spec/unit/property/keyvalue_spec.rb +34 -32
  503. data/spec/unit/property/list_spec.rb +27 -26
  504. data/spec/unit/property/ordered_list_spec.rb +14 -10
  505. data/spec/unit/property_spec.rb +43 -42
  506. data/spec/unit/provider/aix_object_spec.rb +45 -47
  507. data/spec/unit/provider/command_spec.rb +9 -9
  508. data/spec/unit/provider/exec/posix_spec.rb +31 -6
  509. data/spec/unit/provider/exec/shell_spec.rb +1 -0
  510. data/spec/unit/provider/exec/windows_spec.rb +4 -2
  511. data/spec/unit/provider/exec_spec.rb +1 -0
  512. data/spec/unit/provider/file/posix_spec.rb +24 -22
  513. data/spec/unit/provider/file/windows_spec.rb +17 -15
  514. data/spec/unit/provider/group/aix_spec.rb +2 -3
  515. data/spec/unit/provider/group/groupadd_spec.rb +26 -30
  516. data/spec/unit/provider/group/ldap_spec.rb +18 -18
  517. data/spec/unit/provider/group/pw_spec.rb +11 -11
  518. data/spec/unit/provider/group/windows_adsi_spec.rb +53 -59
  519. data/spec/unit/provider/ldap_spec.rb +62 -61
  520. data/spec/unit/provider/nameservice/directoryservice_spec.rb +36 -35
  521. data/spec/unit/provider/nameservice_spec.rb +40 -38
  522. data/spec/unit/provider/package/aix_spec.rb +15 -15
  523. data/spec/unit/provider/package/appdmg_spec.rb +13 -13
  524. data/spec/unit/provider/package/apt_spec.rb +27 -44
  525. data/spec/unit/provider/package/aptitude_spec.rb +7 -6
  526. data/spec/unit/provider/package/aptrpm_spec.rb +12 -7
  527. data/spec/unit/provider/package/base_spec.rb +4 -4
  528. data/spec/unit/provider/package/dnf_spec.rb +20 -18
  529. data/spec/unit/provider/package/dpkg_spec.rb +53 -70
  530. data/spec/unit/provider/package/freebsd_spec.rb +11 -11
  531. data/spec/unit/provider/package/gem_spec.rb +55 -132
  532. data/spec/unit/provider/package/hpux_spec.rb +8 -8
  533. data/spec/unit/provider/package/macports_spec.rb +42 -46
  534. data/spec/unit/provider/package/nim_spec.rb +39 -30
  535. data/spec/unit/provider/package/openbsd_spec.rb +39 -36
  536. data/spec/unit/provider/package/opkg_spec.rb +26 -23
  537. data/spec/unit/provider/package/pacman_spec.rb +118 -97
  538. data/spec/unit/provider/package/pip3_spec.rb +0 -17
  539. data/spec/unit/provider/package/pip_spec.rb +106 -95
  540. data/spec/unit/provider/package/pkg_spec.rb +109 -109
  541. data/spec/unit/provider/package/pkgdmg_spec.rb +63 -65
  542. data/spec/unit/provider/package/pkgin_spec.rb +8 -10
  543. data/spec/unit/provider/package/pkgng_spec.rb +31 -22
  544. data/spec/unit/provider/package/pkgutil_spec.rb +49 -45
  545. data/spec/unit/provider/package/portage_spec.rb +74 -70
  546. data/spec/unit/provider/package/puppet_gem_spec.rb +13 -37
  547. data/spec/unit/provider/package/rpm_spec.rb +76 -154
  548. data/spec/unit/provider/package/sun_spec.rb +18 -16
  549. data/spec/unit/provider/package/tdnf_spec.rb +2 -2
  550. data/spec/unit/provider/package/up2date_spec.rb +4 -2
  551. data/spec/unit/provider/package/urpmi_spec.rb +17 -15
  552. data/spec/unit/provider/package/windows/exe_package_spec.rb +15 -12
  553. data/spec/unit/provider/package/windows/msi_package_spec.rb +22 -19
  554. data/spec/unit/provider/package/windows/package_spec.rb +42 -37
  555. data/spec/unit/provider/package/windows_spec.rb +32 -47
  556. data/spec/unit/provider/package/yum_spec.rb +7 -7
  557. data/spec/unit/provider/package/zypper_spec.rb +87 -87
  558. data/spec/unit/provider/parsedfile_spec.rb +45 -44
  559. data/spec/unit/provider/service/base_spec.rb +5 -4
  560. data/spec/unit/provider/service/bsd_spec.rb +29 -27
  561. data/spec/unit/provider/service/daemontools_spec.rb +35 -35
  562. data/spec/unit/provider/service/debian_spec.rb +38 -38
  563. data/spec/unit/provider/service/freebsd_spec.rb +18 -18
  564. data/spec/unit/provider/service/gentoo_spec.rb +55 -50
  565. data/spec/unit/provider/service/init_spec.rb +52 -53
  566. data/spec/unit/provider/service/launchd_spec.rb +116 -138
  567. data/spec/unit/provider/service/openbsd_spec.rb +50 -50
  568. data/spec/unit/provider/service/openrc_spec.rb +45 -43
  569. data/spec/unit/provider/service/openwrt_spec.rb +31 -26
  570. data/spec/unit/provider/service/rcng_spec.rb +14 -14
  571. data/spec/unit/provider/service/redhat_spec.rb +43 -45
  572. data/spec/unit/provider/service/runit_spec.rb +27 -29
  573. data/spec/unit/provider/service/smf_spec.rb +66 -74
  574. data/spec/unit/provider/service/src_spec.rb +47 -46
  575. data/spec/unit/provider/service/systemd_spec.rb +136 -109
  576. data/spec/unit/provider/service/upstart_spec.rb +93 -77
  577. data/spec/unit/provider/service/windows_spec.rb +41 -33
  578. data/spec/unit/provider/user/aix_spec.rb +31 -31
  579. data/spec/unit/provider/user/directoryservice_spec.rb +114 -146
  580. data/spec/unit/provider/user/hpux_spec.rb +16 -16
  581. data/spec/unit/provider/user/ldap_spec.rb +57 -57
  582. data/spec/unit/provider/user/openbsd_spec.rb +12 -10
  583. data/spec/unit/provider/user/pw_spec.rb +35 -37
  584. data/spec/unit/provider/user/user_role_add_spec.rb +93 -93
  585. data/spec/unit/provider/user/useradd_spec.rb +92 -93
  586. data/spec/unit/provider/user/windows_adsi_spec.rb +60 -59
  587. data/spec/unit/provider_spec.rb +35 -35
  588. data/spec/unit/puppet_pal_2pec.rb +5 -4
  589. data/spec/unit/puppet_pal_spec.rb +1 -0
  590. data/spec/unit/puppet_spec.rb +7 -6
  591. data/spec/unit/relationship_spec.rb +1 -0
  592. data/spec/unit/reports/http_spec.rb +23 -21
  593. data/spec/unit/reports/store_spec.rb +4 -3
  594. data/spec/unit/reports_spec.rb +14 -12
  595. data/spec/unit/resource/capability_finder_spec.rb +17 -15
  596. data/spec/unit/resource/catalog_spec.rb +68 -72
  597. data/spec/unit/resource/status_spec.rb +8 -6
  598. data/spec/unit/resource/type_collection_spec.rb +18 -17
  599. data/spec/unit/resource/type_spec.rb +35 -34
  600. data/spec/unit/resource_spec.rb +63 -36
  601. data/spec/unit/rest/client_spec.rb +135 -0
  602. data/spec/unit/rest/route_spec.rb +6 -6
  603. data/spec/unit/scheduler/job_spec.rb +1 -0
  604. data/spec/unit/scheduler/scheduler_spec.rb +1 -0
  605. data/spec/unit/scheduler/splay_job_spec.rb +2 -1
  606. data/spec/unit/settings/array_setting_spec.rb +1 -1
  607. data/spec/unit/settings/autosign_setting_spec.rb +9 -9
  608. data/spec/unit/settings/certificate_revocation_setting_spec.rb +1 -1
  609. data/spec/unit/settings/config_file_spec.rb +1 -0
  610. data/spec/unit/settings/directory_setting_spec.rb +7 -2
  611. data/spec/unit/settings/duration_setting_spec.rb +2 -1
  612. data/spec/unit/settings/enum_setting_spec.rb +1 -1
  613. data/spec/unit/settings/environment_conf_spec.rb +6 -4
  614. data/spec/unit/settings/file_setting_spec.rb +46 -44
  615. data/spec/unit/settings/path_setting_spec.rb +2 -1
  616. data/spec/unit/settings/priority_setting_spec.rb +2 -1
  617. data/spec/unit/settings/string_setting_spec.rb +15 -14
  618. data/spec/unit/settings/terminus_setting_spec.rb +2 -1
  619. data/spec/unit/settings/value_translator_spec.rb +1 -0
  620. data/spec/unit/settings_spec.rb +224 -253
  621. data/spec/unit/ssl/base_spec.rb +15 -14
  622. data/spec/unit/ssl/certificate_request_spec.rb +58 -62
  623. data/spec/unit/ssl/certificate_spec.rb +25 -23
  624. data/spec/unit/ssl/digest_spec.rb +1 -0
  625. data/spec/unit/ssl/host_spec.rb +149 -166
  626. data/spec/unit/ssl/key_spec.rb +31 -30
  627. data/spec/unit/ssl/validator_spec.rb +39 -40
  628. data/spec/unit/task_spec.rb +45 -44
  629. data/spec/unit/transaction/additional_resource_generator_spec.rb +5 -3
  630. data/spec/unit/transaction/event_manager_spec.rb +88 -87
  631. data/spec/unit/transaction/event_spec.rb +15 -16
  632. data/spec/unit/transaction/persistence_spec.rb +17 -16
  633. data/spec/unit/transaction/report_spec.rb +12 -11
  634. data/spec/unit/transaction/resource_harness_spec.rb +31 -52
  635. data/spec/unit/transaction_spec.rb +87 -140
  636. data/spec/unit/type/component_spec.rb +1 -0
  637. data/spec/unit/type/exec_spec.rb +50 -101
  638. data/spec/unit/type/file/checksum_spec.rb +10 -9
  639. data/spec/unit/type/file/checksum_value_spec.rb +32 -31
  640. data/spec/unit/type/file/content_spec.rb +61 -58
  641. data/spec/unit/type/file/ctime_spec.rb +1 -0
  642. data/spec/unit/type/file/ensure_spec.rb +13 -12
  643. data/spec/unit/type/file/group_spec.rb +7 -5
  644. data/spec/unit/type/file/mode_spec.rb +6 -4
  645. data/spec/unit/type/file/mtime_spec.rb +1 -0
  646. data/spec/unit/type/file/owner_spec.rb +8 -6
  647. data/spec/unit/type/file/selinux_spec.rb +19 -17
  648. data/spec/unit/type/file/source_spec.rb +101 -104
  649. data/spec/unit/type/file/type_spec.rb +1 -0
  650. data/spec/unit/type/file_spec.rb +185 -195
  651. data/spec/unit/type/filebucket_spec.rb +10 -11
  652. data/spec/unit/type/group_spec.rb +8 -6
  653. data/spec/unit/type/noop_metaparam_spec.rb +2 -1
  654. data/spec/unit/type/package/package_settings_spec.rb +23 -44
  655. data/spec/unit/type/package_spec.rb +57 -56
  656. data/spec/unit/type/resources_spec.rb +74 -72
  657. data/spec/unit/type/schedule_spec.rb +26 -24
  658. data/spec/unit/type/service_spec.rb +75 -49
  659. data/spec/unit/type/stage_spec.rb +1 -0
  660. data/spec/unit/type/tidy_spec.rb +62 -61
  661. data/spec/unit/type/user_spec.rb +25 -24
  662. data/spec/unit/type/whit_spec.rb +1 -0
  663. data/spec/unit/type_spec.rb +54 -55
  664. data/spec/unit/util/at_fork_spec.rb +19 -18
  665. data/spec/unit/util/autoload_spec.rb +56 -55
  666. data/spec/unit/util/backups_spec.rb +35 -34
  667. data/spec/unit/util/character_encoding_spec.rb +5 -5
  668. data/spec/unit/util/checksums_spec.rb +39 -38
  669. data/spec/unit/util/colors_spec.rb +2 -1
  670. data/spec/unit/util/command_line_spec.rb +20 -40
  671. data/spec/unit/util/constant_inflector_spec.rb +1 -0
  672. data/spec/unit/util/diff_spec.rb +8 -7
  673. data/spec/unit/util/errors_spec.rb +1 -0
  674. data/spec/unit/util/execution_spec.rb +163 -187
  675. data/spec/unit/util/execution_stub_spec.rb +1 -0
  676. data/spec/unit/util/feature_spec.rb +14 -21
  677. data/spec/unit/util/filetype_spec.rb +49 -49
  678. data/spec/unit/util/http_proxy_spec.rb +12 -12
  679. data/spec/unit/util/inifile_spec.rb +31 -26
  680. data/spec/unit/util/json_lockfile_spec.rb +5 -3
  681. data/spec/unit/util/ldap/connection_spec.rb +25 -26
  682. data/spec/unit/util/ldap/generator_spec.rb +1 -0
  683. data/spec/unit/util/ldap/manager_spec.rb +101 -102
  684. data/spec/unit/util/lockfile_spec.rb +1 -0
  685. data/spec/unit/util/log/destinations_spec.rb +33 -30
  686. data/spec/unit/util/log_spec.rb +34 -48
  687. data/spec/unit/util/logging_spec.rb +72 -58
  688. data/spec/unit/util/metric_spec.rb +1 -0
  689. data/spec/unit/util/monkey_patches_spec.rb +9 -7
  690. data/spec/unit/util/multi_match_spec.rb +1 -0
  691. data/spec/unit/util/network_device/config_spec.rb +1 -0
  692. data/spec/unit/util/network_device/transport/base_spec.rb +6 -5
  693. data/spec/unit/util/network_device_spec.rb +9 -7
  694. data/spec/unit/util/package_spec.rb +1 -0
  695. data/spec/unit/util/pidlock_spec.rb +15 -60
  696. data/spec/unit/util/plist_spec.rb +33 -40
  697. data/spec/unit/util/posix_spec.rb +51 -54
  698. data/spec/unit/util/rdoc_spec.rb +10 -9
  699. data/spec/unit/util/reference_spec.rb +1 -0
  700. data/spec/unit/util/resource_template_spec.rb +20 -20
  701. data/spec/unit/util/retry_action_spec.rb +8 -7
  702. data/spec/unit/util/rubygems_spec.rb +8 -7
  703. data/spec/unit/util/run_mode_spec.rb +4 -3
  704. data/spec/unit/util/selinux_spec.rb +72 -79
  705. data/spec/unit/util/splayer_spec.rb +9 -8
  706. data/spec/unit/util/ssl_spec.rb +1 -0
  707. data/spec/unit/util/storage_spec.rb +23 -22
  708. data/spec/unit/util/suidmanager_spec.rb +54 -45
  709. data/spec/unit/util/symbolic_file_mode_spec.rb +1 -0
  710. data/spec/unit/util/tag_set_spec.rb +1 -0
  711. data/spec/unit/util/tagging_spec.rb +1 -0
  712. data/spec/unit/util/terminal_spec.rb +10 -9
  713. data/spec/unit/util/user_attr_spec.rb +2 -1
  714. data/spec/unit/util/warnings_spec.rb +4 -3
  715. data/spec/unit/util/watcher/periodic_watcher_spec.rb +2 -2
  716. data/spec/unit/util/watcher_spec.rb +21 -51
  717. data/spec/unit/util/windows/access_control_entry_spec.rb +1 -0
  718. data/spec/unit/util/windows/access_control_list_spec.rb +1 -0
  719. data/spec/unit/util/windows/adsi_spec.rb +138 -136
  720. data/spec/unit/util/windows/api_types_spec.rb +1 -0
  721. data/spec/unit/util/windows/eventlog_spec.rb +12 -9
  722. data/spec/unit/util/windows/file_spec.rb +1 -0
  723. data/spec/unit/util/windows/root_certs_spec.rb +1 -0
  724. data/spec/unit/util/windows/security_descriptor_spec.rb +2 -0
  725. data/spec/unit/util/windows/service_spec.rb +103 -100
  726. data/spec/unit/util/windows/sid_spec.rb +13 -11
  727. data/spec/unit/util/windows/string_spec.rb +1 -0
  728. data/spec/unit/util_spec.rb +57 -55
  729. data/spec/unit/version_spec.rb +6 -6
  730. metadata +20 -32
  731. data/CODEOWNERS +0 -30
  732. data/ext/autotest/Rakefile +0 -8
  733. data/ext/autotest/config +0 -43
  734. data/ext/autotest/readme.rst +0 -16
  735. data/lib/puppet/confine/boolean.rb +0 -45
  736. data/lib/puppet/provider/package_targetable.rb +0 -68
  737. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load2.rb +0 -11
  738. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load3.rb +0 -11
  739. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load4.rb +0 -11
  740. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load5.rb +0 -12
  741. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/good_func_load.rb +0 -9
  742. data/spec/fixtures/unit/provider/package/pkgng/pkg.info +0 -7
  743. data/spec/fixtures/unit/provider/package/pkgng/pkg.query_absent +0 -1
  744. data/spec/integration/network/http_pool_spec.rb +0 -120
  745. data/spec/integration/provider/file/windows_spec.rb +0 -162
  746. data/spec/lib/puppet_spec/https.rb +0 -166
  747. data/spec/unit/settings/server_list_setting_spec.rb +0 -21
  748. data/spec/watchr.rb +0 -137
@@ -1,3 +1,4 @@
1
+ #! /usr/bin/env ruby
1
2
  require 'spec_helper'
2
3
 
3
4
  describe Puppet::Type.type(:file).attrclass(:mtime) do
@@ -1,3 +1,5 @@
1
+ #! /usr/bin/env ruby
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  describe Puppet::Type.type(:file).attrclass(:owner) do
@@ -8,19 +10,19 @@ describe Puppet::Type.type(:file).attrclass(:owner) do
8
10
  let(:owner) { resource.property(:owner) }
9
11
 
10
12
  before :each do
11
- allow(Puppet.features).to receive(:root?).and_return(true)
13
+ Puppet.features.stubs(:root?).returns(true)
12
14
  end
13
15
 
14
16
  describe "#insync?" do
15
17
  before :each do
16
18
  resource[:owner] = ['foo', 'bar']
17
19
 
18
- allow(resource.provider).to receive(:name2uid).with('foo').and_return(1001)
19
- allow(resource.provider).to receive(:name2uid).with('bar').and_return(1002)
20
+ resource.provider.stubs(:name2uid).with('foo').returns 1001
21
+ resource.provider.stubs(:name2uid).with('bar').returns 1002
20
22
  end
21
23
 
22
24
  it "should fail if an owner's id can't be found by name" do
23
- allow(resource.provider).to receive(:name2uid).and_return(nil)
25
+ resource.provider.stubs(:name2uid).returns nil
24
26
 
25
27
  expect { owner.insync?(5) }.to raise_error(/Could not find user foo/)
26
28
  end
@@ -41,13 +43,13 @@ describe Puppet::Type.type(:file).attrclass(:owner) do
41
43
  %w[is_to_s should_to_s].each do |prop_to_s|
42
44
  describe "##{prop_to_s}" do
43
45
  it "should use the name of the user if it can find it" do
44
- allow(resource.provider).to receive(:uid2name).with(1001).and_return('foo')
46
+ resource.provider.stubs(:uid2name).with(1001).returns 'foo'
45
47
 
46
48
  expect(owner.send(prop_to_s, 1001)).to eq("'foo'")
47
49
  end
48
50
 
49
51
  it "should use the id of the user if it can't" do
50
- allow(resource.provider).to receive(:uid2name).with(1001).and_return(nil)
52
+ resource.provider.stubs(:uid2name).with(1001).returns nil
51
53
 
52
54
  expect(owner.send(prop_to_s, 1001)).to eq('1001')
53
55
  end
@@ -1,3 +1,4 @@
1
+ #! /usr/bin/env ruby
1
2
  require 'spec_helper'
2
3
 
3
4
  [:seluser, :selrole, :seltype, :selrange].each do |param|
@@ -9,26 +10,26 @@ require 'spec_helper'
9
10
  @path = make_absolute("/my/file")
10
11
  @resource = Puppet::Type.type(:file).new :path => @path
11
12
  @sel = property.new :resource => @resource
12
- allow(@sel).to receive(:normalize_selinux_category).with("s0").and_return("s0")
13
- allow(@sel).to receive(:normalize_selinux_category).with(nil).and_return(nil)
13
+ @sel.stubs(:normalize_selinux_category).with("s0").returns("s0")
14
+ @sel.stubs(:normalize_selinux_category).with(nil).returns(nil)
14
15
  end
15
16
 
16
17
  it "retrieve on #{param} should return :absent if the file isn't statable" do
17
- expect(@resource).to receive(:stat).and_return(nil)
18
+ @resource.expects(:stat).returns nil
18
19
  expect(@sel.retrieve).to eq(:absent)
19
20
  end
20
21
 
21
22
  it "should retrieve nil for #{param} if there is no SELinux support" do
22
- stat = double('stat', :ftype => "foo")
23
- expect(@resource).to receive(:stat).and_return(stat)
24
- expect(@sel).to receive(:get_selinux_current_context).with(@path).and_return(nil)
23
+ stat = stub 'stat', :ftype => "foo"
24
+ @resource.expects(:stat).returns stat
25
+ @sel.expects(:get_selinux_current_context).with(@path).returns nil
25
26
  expect(@sel.retrieve).to be_nil
26
27
  end
27
28
 
28
29
  it "should retrieve #{param} if a SELinux context is found with a range" do
29
- stat = double('stat', :ftype => "foo")
30
- expect(@resource).to receive(:stat).and_return(stat)
31
- expect(@sel).to receive(:get_selinux_current_context).with(@path).and_return("user_u:role_r:type_t:s0")
30
+ stat = stub 'stat', :ftype => "foo"
31
+ @resource.expects(:stat).returns stat
32
+ @sel.expects(:get_selinux_current_context).with(@path).returns "user_u:role_r:type_t:s0"
32
33
  expectedresult = case param
33
34
  when :seluser; "user_u"
34
35
  when :selrole; "role_r"
@@ -39,9 +40,9 @@ require 'spec_helper'
39
40
  end
40
41
 
41
42
  it "should retrieve #{param} if a SELinux context is found without a range" do
42
- stat = double('stat', :ftype => "foo")
43
- expect(@resource).to receive(:stat).and_return(stat)
44
- expect(@sel).to receive(:get_selinux_current_context).with(@path).and_return("user_u:role_r:type_t")
43
+ stat = stub 'stat', :ftype => "foo"
44
+ @resource.expects(:stat).returns stat
45
+ @sel.expects(:get_selinux_current_context).with(@path).returns "user_u:role_r:type_t"
45
46
  expectedresult = case param
46
47
  when :seluser; "user_u"
47
48
  when :selrole; "role_r"
@@ -52,13 +53,13 @@ require 'spec_helper'
52
53
  end
53
54
 
54
55
  it "should handle no default gracefully" do
55
- expect(@sel).to receive(:get_selinux_default_context).with(@path).and_return(nil)
56
+ @sel.expects(:get_selinux_default_context).with(@path).returns nil
56
57
  expect(@sel.default).to be_nil
57
58
  end
58
59
 
59
60
  it "should be able to detect matchpathcon defaults" do
60
- allow(@sel).to receive(:debug)
61
- expect(@sel).to receive(:get_selinux_default_context).with(@path).and_return("user_u:role_r:type_t:s0")
61
+ @sel.stubs(:debug)
62
+ @sel.expects(:get_selinux_default_context).with(@path).returns "user_u:role_r:type_t:s0"
62
63
  expectedresult = case param
63
64
  when :seluser; "user_u"
64
65
  when :selrole; "role_r"
@@ -75,14 +76,15 @@ require 'spec_helper'
75
76
 
76
77
  it "should be able to set a new context" do
77
78
  @sel.should = %w{newone}
78
- expect(@sel).to receive(:set_selinux_context).with(@path, ["newone"], param)
79
+ @sel.expects(:set_selinux_context).with(@path, ["newone"], param)
79
80
  @sel.sync
80
81
  end
81
82
 
82
83
  it "should do nothing for safe_insync? if no SELinux support" do
83
84
  @sel.should = %{newcontext}
84
- expect(@sel).to receive(:selinux_support?).and_return(false)
85
+ @sel.expects(:selinux_support?).returns false
85
86
  expect(@sel.safe_insync?("oldcontext")).to eq(true)
86
87
  end
87
88
  end
88
89
  end
90
+
@@ -1,3 +1,4 @@
1
+ #! /usr/bin/env ruby
1
2
  require 'spec_helper'
2
3
  require 'uri'
3
4
  require 'puppet/network/http_pool'
@@ -32,7 +33,7 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
32
33
 
33
34
  describe "#validate" do
34
35
  it "should fail if the set values are not URLs" do
35
- expect(URI).to receive(:parse).with('foo').and_raise(RuntimeError)
36
+ URI.expects(:parse).with('foo').raises RuntimeError
36
37
 
37
38
  expect(lambda { resource[:source] = %w{foo} }).to raise_error(Puppet::Error)
38
39
  end
@@ -95,10 +96,10 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
95
96
 
96
97
  describe "when returning the metadata" do
97
98
  before do
98
- @metadata = double('metadata', :source= => nil)
99
- allow(resource).to receive(:[]).with(:links).and_return(:manage)
100
- allow(resource).to receive(:[]).with(:source_permissions).and_return(:use)
101
- allow(resource).to receive(:[]).with(:checksum).and_return(:checksum)
99
+ @metadata = stub 'metadata', :source= => nil
100
+ resource.stubs(:[]).with(:links).returns :manage
101
+ resource.stubs(:[]).with(:source_permissions).returns :use
102
+ resource.stubs(:[]).with(:checksum).returns :checksum
102
103
  end
103
104
 
104
105
  it "should return already-available metadata" do
@@ -114,20 +115,18 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
114
115
 
115
116
  it "should collect its metadata using the Metadata class if it is not already set" do
116
117
  @source = described_class.new(:resource => resource, :value => @foobar)
117
- expect(Puppet::FileServing::Metadata.indirection).to receive(:find) do |uri, options|
118
- expect(uri).to eq(@foobar_uri)
119
- expect(options[:environment]).to eq(environment)
120
- expect(options[:links]).to eq(:manage)
121
- expect(options[:checksum_type]).to eq(:checksum)
122
-
123
- @metadata
124
- end
118
+ Puppet::FileServing::Metadata.indirection.expects(:find).with do |uri, options|
119
+ expect(uri).to eq @foobar_uri
120
+ expect(options[:environment]).to eq environment
121
+ expect(options[:links]).to eq :manage
122
+ expect(options[:checksum_type]).to eq :checksum
123
+ end.returns @metadata
125
124
 
126
125
  @source.metadata
127
126
  end
128
127
 
129
128
  it "should use the metadata from the first found source" do
130
- metadata = double('metadata', :source= => nil)
129
+ metadata = stub 'metadata', :source= => nil
131
130
  @source = described_class.new(:resource => resource, :value => [@foobar, @feebooz])
132
131
  options = {
133
132
  :environment => environment,
@@ -135,52 +134,48 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
135
134
  :source_permissions => :use,
136
135
  :checksum_type => :checksum
137
136
  }
138
- expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(@foobar_uri, options).and_return(nil)
139
- expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(@feebooz_uri, options).and_return(metadata)
137
+ Puppet::FileServing::Metadata.indirection.expects(:find).with(@foobar_uri, options).returns nil
138
+ Puppet::FileServing::Metadata.indirection.expects(:find).with(@feebooz_uri, options).returns metadata
140
139
  expect(@source.metadata).to equal(metadata)
141
140
  end
142
141
 
143
142
  it "should store the found source as the metadata's source" do
144
- metadata = double('metadata')
143
+ metadata = mock 'metadata'
145
144
  @source = described_class.new(:resource => resource, :value => @foobar)
146
- expect(Puppet::FileServing::Metadata.indirection).to receive(:find) do |uri, options|
147
- expect(uri).to eq(@foobar_uri)
148
- expect(options[:environment]).to eq(environment)
149
- expect(options[:links]).to eq(:manage)
150
- expect(options[:checksum_type]).to eq(:checksum)
151
-
152
- metadata
153
- end
154
-
155
- expect(metadata).to receive(:source=).with(@foobar_uri)
145
+ Puppet::FileServing::Metadata.indirection.expects(:find).with do |uri, options|
146
+ expect(uri).to eq @foobar_uri
147
+ expect(options[:environment]).to eq environment
148
+ expect(options[:links]).to eq :manage
149
+ expect(options[:checksum_type]).to eq :checksum
150
+ end.returns metadata
151
+
152
+ metadata.expects(:source=).with(@foobar_uri)
156
153
  @source.metadata
157
154
  end
158
155
 
159
156
  it "should fail intelligently if an exception is encountered while querying for metadata" do
160
157
  @source = described_class.new(:resource => resource, :value => @foobar)
161
- expect(Puppet::FileServing::Metadata.indirection).to receive(:find) do |uri, options|
162
- expect(uri).to eq(@foobar_uri)
163
- expect(options[:environment]).to eq(environment)
164
- expect(options[:links]).to eq(:manage)
165
- expect(options[:checksum_type]).to eq(:checksum)
166
- end.and_raise(RuntimeError)
167
-
168
- expect(@source).to receive(:fail).and_raise(ArgumentError)
158
+ Puppet::FileServing::Metadata.indirection.expects(:find).with do |uri, options|
159
+ expect(uri).to eq @foobar_uri
160
+ expect(options[:environment]).to eq environment
161
+ expect(options[:links]).to eq :manage
162
+ expect(options[:checksum_type]).to eq :checksum
163
+ end.raises RuntimeError
164
+
165
+ @source.expects(:fail).raises ArgumentError
169
166
  expect { @source.metadata }.to raise_error(ArgumentError)
170
167
  end
171
168
 
172
169
  it "should fail if no specified sources can be found" do
173
170
  @source = described_class.new(:resource => resource, :value => @foobar)
174
- expect(Puppet::FileServing::Metadata.indirection).to receive(:find) do |uri, options|
175
- expect(uri).to eq(@foobar_uri)
176
- expect(options[:environment]).to eq(environment)
177
- expect(options[:links]).to eq(:manage)
178
- expect(options[:checksum_type]).to eq(:checksum)
179
-
180
- nil
181
- end
171
+ Puppet::FileServing::Metadata.indirection.expects(:find).with do |uri, options|
172
+ expect(uri).to eq @foobar_uri
173
+ expect(options[:environment]).to eq environment
174
+ expect(options[:links]).to eq :manage
175
+ expect(options[:checksum_type]).to eq :checksum
176
+ end.returns nil
182
177
 
183
- expect(@source).to receive(:fail).and_raise(RuntimeError)
178
+ @source.expects(:fail).raises RuntimeError
184
179
 
185
180
  expect { @source.metadata }.to raise_error(RuntimeError)
186
181
  end
@@ -191,23 +186,24 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
191
186
  end
192
187
 
193
188
  describe "when copying the source values" do
189
+
194
190
  before do
195
- allow_any_instance_of(Puppet::Type.type(:file)).to receive(:file).and_return('my/file.pp')
196
- allow_any_instance_of(Puppet::Type.type(:file)).to receive(:line).and_return(5)
191
+ Puppet::Type.type(:file).any_instance.stubs(:file).returns('my/file.pp')
192
+ Puppet::Type.type(:file).any_instance.stubs(:line).returns 5
197
193
  end
198
194
 
199
195
  before :each do
200
196
  @resource = Puppet::Type.type(:file).new :path => @foobar
201
197
 
202
198
  @source = described_class.new(:resource => @resource)
203
- @metadata = double('metadata', :owner => 100, :group => 200, :mode => "173", :checksum => "{md5}asdfasdf", :checksum_type => "md5", :ftype => "file", :source => @foobar)
204
- allow(@source).to receive(:metadata).and_return(@metadata)
199
+ @metadata = stub 'metadata', :owner => 100, :group => 200, :mode => "173", :checksum => "{md5}asdfasdf", :checksum_type => "md5", :ftype => "file", :source => @foobar
200
+ @source.stubs(:metadata).returns @metadata
205
201
 
206
- allow(Puppet.features).to receive(:root?).and_return(true)
202
+ Puppet.features.stubs(:root?).returns true
207
203
  end
208
204
 
209
205
  it "should not issue an error - except on Windows - if the source mode value is a Numeric" do
210
- allow(@metadata).to receive(:mode).and_return(0173)
206
+ @metadata.stubs(:mode).returns 0173
211
207
  @resource[:source_permissions] = :use
212
208
  if Puppet::Util::Platform.windows?
213
209
  expect { @source.copy_source_values }.to raise_error("Should not have tried to use source owner/mode/group on Windows (file: my/file.pp, line: 5)")
@@ -217,7 +213,7 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
217
213
  end
218
214
 
219
215
  it "should not issue an error - except on Windows - if the source mode value is a String" do
220
- allow(@metadata).to receive(:mode).and_return("173")
216
+ @metadata.stubs(:mode).returns "173"
221
217
  @resource[:source_permissions] = :use
222
218
  if Puppet::Util::Platform.windows?
223
219
  expect { @source.copy_source_values }.to raise_error("Should not have tried to use source owner/mode/group on Windows (file: my/file.pp, line: 5)")
@@ -227,20 +223,20 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
227
223
  end
228
224
 
229
225
  it "should fail if there is no metadata" do
230
- allow(@source).to receive(:metadata).and_return(nil)
231
- expect(@source).to receive(:devfail).and_raise(ArgumentError)
226
+ @source.stubs(:metadata).returns nil
227
+ @source.expects(:devfail).raises ArgumentError
232
228
  expect { @source.copy_source_values }.to raise_error(ArgumentError)
233
229
  end
234
230
 
235
231
  it "should set :ensure to the file type" do
236
- allow(@metadata).to receive(:ftype).and_return("file")
232
+ @metadata.stubs(:ftype).returns "file"
237
233
 
238
234
  @source.copy_source_values
239
235
  expect(@resource[:ensure]).to eq(:file)
240
236
  end
241
237
 
242
238
  it "should not set 'ensure' if it is already set to 'absent'" do
243
- allow(@metadata).to receive(:ftype).and_return("file")
239
+ @metadata.stubs(:ftype).returns "file"
244
240
 
245
241
  @resource[:ensure] = :absent
246
242
  @source.copy_source_values
@@ -249,8 +245,8 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
249
245
 
250
246
  describe "and the source is a file" do
251
247
  before do
252
- allow(@metadata).to receive(:ftype).and_return("file")
253
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(false)
248
+ @metadata.stubs(:ftype).returns "file"
249
+ Puppet::Util::Platform.stubs(:windows?).returns false
254
250
  end
255
251
 
256
252
  context "when source_permissions is `use`" do
@@ -288,7 +284,7 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
288
284
 
289
285
  describe "and puppet is not running as root" do
290
286
  before do
291
- allow(Puppet.features).to receive(:root?).and_return(false)
287
+ Puppet.features.stubs(:root?).returns false
292
288
  end
293
289
 
294
290
  it "should not try to set the owner" do
@@ -306,13 +302,13 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
306
302
  context "when source_permissions is `use_when_creating`" do
307
303
  before :each do
308
304
  @resource[:source_permissions] = "use_when_creating"
309
- expect(Puppet.features).to receive(:root?).and_return(true)
310
- allow(@source).to receive(:local?).and_return(false)
305
+ Puppet.features.expects(:root?).returns true
306
+ @source.stubs(:local?).returns(false)
311
307
  end
312
308
 
313
309
  context "when managing a new file" do
314
310
  it "should copy owner and group from local sources" do
315
- allow(@source).to receive(:local?).and_return(true)
311
+ @source.stubs(:local?).returns true
316
312
 
317
313
  @source.copy_source_values
318
314
 
@@ -342,11 +338,11 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
342
338
 
343
339
  context "when managing an existing file" do
344
340
  before :each do
345
- allow(Puppet::FileSystem).to receive(:exist?).with(@resource[:path]).and_return(true)
341
+ Puppet::FileSystem.stubs(:exist?).with(@resource[:path]).returns(true)
346
342
  end
347
343
 
348
344
  it "should not copy owner, group or mode from local sources" do
349
- allow(@source).to receive(:local?).and_return(true)
345
+ @source.stubs(:local?).returns true
350
346
 
351
347
  @source.copy_source_values
352
348
 
@@ -377,12 +373,12 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
377
373
 
378
374
  context "when source_permissions is default" do
379
375
  before :each do
380
- allow(@source).to receive(:local?).and_return(false)
381
- expect(Puppet.features).to receive(:root?).and_return(true)
376
+ @source.stubs(:local?).returns(false)
377
+ Puppet.features.expects(:root?).returns true
382
378
  end
383
379
 
384
380
  it "should not copy owner, group or mode from local sources" do
385
- allow(@source).to receive(:local?).and_return(true)
381
+ @source.stubs(:local?).returns true
386
382
 
387
383
  @source.copy_source_values
388
384
 
@@ -413,19 +409,19 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
413
409
 
414
410
  describe "and the source is a link" do
415
411
  before do
416
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(false)
412
+ Puppet::Util::Platform.stubs(:windows?).returns false
417
413
  end
418
414
 
419
415
  it "should set the target to the link destination" do
420
- allow(@metadata).to receive(:ftype).and_return("link")
421
- allow(@metadata).to receive(:links).and_return("manage")
422
- allow(@metadata).to receive(:checksum_type).and_return(nil)
423
- allow(@resource).to receive(:[])
424
- allow(@resource).to receive(:[]=)
416
+ @metadata.stubs(:ftype).returns "link"
417
+ @metadata.stubs(:links).returns "manage"
418
+ @metadata.stubs(:checksum_type).returns nil
419
+ @resource.stubs(:[])
420
+ @resource.stubs(:[]=)
425
421
 
426
- expect(@metadata).to receive(:destination).and_return("/path/to/symlink")
422
+ @metadata.expects(:destination).returns "/path/to/symlink"
427
423
 
428
- expect(@resource).to receive(:[]=).with(:target, "/path/to/symlink")
424
+ @resource.expects(:[]=).with(:target, "/path/to/symlink")
429
425
  @source.copy_source_values
430
426
  end
431
427
  end
@@ -488,10 +484,11 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
488
484
 
489
485
  before(:each) do
490
486
  metadata = Puppet::FileServing::Metadata.new(path, :source => uri, 'type' => 'file')
491
- allow(Puppet::FileServing::Metadata.indirection).to receive(:find).
492
- with(uri, include(:environment, :links)).and_return(metadata)
493
- allow(Puppet::FileServing::Metadata.indirection).to receive(:find).
494
- with(uri, include(:environment, :links)).and_return(metadata)
487
+ #metadata = stub('remote', :ftype => "file", :source => uri)
488
+ Puppet::FileServing::Metadata.indirection.stubs(:find).
489
+ with(uri,all_of(has_key(:environment), has_key(:links))).returns metadata
490
+ Puppet::FileServing::Metadata.indirection.stubs(:find).
491
+ with(uri,all_of(has_key(:environment), has_key(:links))).returns metadata
495
492
  resource[:source] = uri
496
493
  end
497
494
 
@@ -584,52 +581,52 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
584
581
  describe 'from remote source' do
585
582
  let(:source_content) { "source file content\n"*10 }
586
583
  let(:source) { resource.newattr(:source) }
587
- let(:response) { double('response', :[] => nil, :body => nil, :message => nil) }
588
- let(:conn) { double('connection') }
584
+ let(:response) { stub_everything('response') }
585
+ let(:conn) { mock('connection') }
589
586
 
590
587
  before do
591
588
  resource[:backup] = false
592
589
 
593
- expectation = receive(:read_body)
594
- source_content.lines.each { |line| expectation = expectation.and_yield(line) }
595
- allow(response).to expectation
596
- allow(conn).to receive(:request_get).and_yield(response)
590
+ response.stubs(:read_body).multiple_yields(*source_content.lines)
591
+ conn.stubs(:request_get).yields(response)
597
592
  end
598
593
 
599
594
  it 'should use an explicit fileserver if source starts with puppet://' do
600
- allow(response).to receive(:code).and_return('200')
601
- allow(source).to receive(:metadata).and_return(double('metadata', :source => 'puppet://somehostname/test/foo', :ftype => 'file', :content_uri => nil))
602
- expect(Puppet::Network::HttpPool).to receive(:http_instance).with('somehostname', anything).and_return(conn)
595
+ response.stubs(:code).returns('200')
596
+ source.stubs(:metadata).returns stub_everything('metadata', :source => 'puppet://somehostname/test/foo', :ftype => 'file')
597
+ Puppet::Network::HttpPool.expects(:http_instance).with('somehostname', anything).returns(conn)
603
598
 
604
599
  resource.write(source)
605
600
  end
606
601
 
607
602
  it 'should use the default fileserver if source starts with puppet:///' do
608
- allow(response).to receive(:code).and_return('200')
609
- allow(source).to receive(:metadata).and_return(double('metadata', :source => 'puppet:///test/foo', :ftype => 'file', :content_uri => nil))
610
- expect(Puppet::Network::HttpPool).to receive(:http_instance).with(Puppet.settings[:server], anything).and_return(conn)
603
+ response.stubs(:code).returns('200')
604
+ source.stubs(:metadata).returns stub_everything('metadata', :source => 'puppet:///test/foo', :ftype => 'file')
605
+ Puppet::Network::HttpPool.expects(:http_instance).with(Puppet.settings[:server], anything).returns(conn)
611
606
 
612
607
  resource.write(source)
613
608
  end
614
609
 
615
610
  it 'should percent encode reserved characters' do
616
- allow(response).to receive(:code).and_return('200')
617
- allow(Puppet::Network::HttpPool).to receive(:http_instance).and_return(conn)
618
- allow(source).to receive(:metadata).and_return(double('metadata', :source => 'puppet:///test/foo bar', :ftype => 'file', :content_uri => nil))
611
+ response.stubs(:code).returns('200')
612
+ Puppet::Network::HttpPool.stubs(:http_instance).returns(conn)
613
+ source.stubs(:metadata).returns stub_everything('metadata', :source => 'puppet:///test/foo bar', :ftype => 'file')
619
614
 
620
- expect(conn).to receive(:request_get).with("#{Puppet::Network::HTTP::MASTER_URL_PREFIX}/v3/file_content/test/foo%20bar?environment=myenv&", anything).and_yield(response)
615
+ conn.unstub(:request_get)
616
+ conn.expects(:request_get).with("#{Puppet::Network::HTTP::MASTER_URL_PREFIX}/v3/file_content/test/foo%20bar?environment=myenv&", anything).yields(response)
621
617
 
622
618
  resource.write(source)
623
619
  end
624
620
 
625
621
  it 'should request binary content' do
626
- allow(response).to receive(:code).and_return('200')
627
- allow(Puppet::Network::HttpPool).to receive(:http_instance).and_return(conn)
628
- allow(source).to receive(:metadata).and_return(double('metadata', :source => 'puppet:///test/foo bar', :ftype => 'file', :content_uri => nil))
622
+ response.stubs(:code).returns('200')
623
+ Puppet::Network::HttpPool.stubs(:http_instance).returns(conn)
624
+ source.stubs(:metadata).returns stub_everything('metadata', :source => 'puppet:///test/foo bar', :ftype => 'file')
629
625
 
630
- expect(conn).to receive(:request_get) do |_, options|
626
+ conn.unstub(:request_get)
627
+ conn.expects(:request_get).with do |_, options|
631
628
  expect(options).to include('Accept' => 'application/octet-stream')
632
- end.and_yield(response)
629
+ end.yields(response)
633
630
 
634
631
  resource.write(source)
635
632
  end
@@ -640,25 +637,25 @@ describe Puppet::Type.type(:file).attrclass(:source), :uses_checksums => true do
640
637
  end
641
638
 
642
639
  before(:each) do
643
- allow(Puppet::Network::HttpPool).to receive(:http_instance).and_return(conn)
644
- allow(source).to receive(:metadata).and_return(double('metadata', :source => 'puppet:///test/foo', :ftype => 'file', :content_uri => nil))
640
+ Puppet::Network::HttpPool.stubs(:http_instance).returns(conn)
641
+ source.stubs(:metadata).returns stub_everything('metadata', :source => 'puppet:///test/foo', :ftype => 'file')
645
642
  end
646
643
 
647
644
  it 'should not write anything if source is not found' do
648
- allow(response).to receive(:code).and_return('404')
645
+ response.stubs(:code).returns('404')
649
646
 
650
647
  expect { resource.write(source) }.to raise_error(Net::HTTPError, /404/)
651
648
  expect(File.read(filename)).to eq('initial file content')
652
649
  end
653
650
 
654
651
  it 'should raise an HTTP error in case of server error' do
655
- allow(response).to receive(:code).and_return('500')
652
+ response.stubs(:code).returns('500')
656
653
 
657
654
  expect { resource.write(source) }.to raise_error(Net::HTTPError, /500/)
658
655
  end
659
656
 
660
657
  context 'and the request was successful' do
661
- before(:each) { allow(response).to receive(:code).and_return('200') }
658
+ before(:each) { response.stubs(:code).returns '200' }
662
659
 
663
660
  it 'should write the contents to the file' do
664
661
  resource.write(source)