puppet 6.0.10 → 6.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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::Util::Windows::SID", :if => Puppet::Util::Platform.windows? do
@@ -71,12 +72,12 @@ describe "Puppet::Util::Windows::SID", :if => Puppet::Util::Platform.windows? do
71
72
  end
72
73
 
73
74
  it "should return a SID for a passed user or group name" do
74
- expect(subject).to receive(:name_to_principal).with('testers').and_return(double(:sid => 'S-1-5-32-547'))
75
+ subject.expects(:name_to_principal).with('testers').returns stub(:sid => 'S-1-5-32-547')
75
76
  expect(subject.name_to_sid('testers')).to eq('S-1-5-32-547')
76
77
  end
77
78
 
78
79
  it "should return a SID for a passed fully-qualified user or group name" do
79
- expect(subject).to receive(:name_to_principal).with('MACHINE\testers').and_return(double(:sid => 'S-1-5-32-547'))
80
+ subject.expects(:name_to_principal).with('MACHINE\testers').returns stub(:sid => 'S-1-5-32-547')
80
81
  expect(subject.name_to_sid('MACHINE\testers')).to eq('S-1-5-32-547')
81
82
  end
82
83
 
@@ -99,6 +100,7 @@ describe "Puppet::Util::Windows::SID", :if => Puppet::Util::Platform.windows? do
99
100
  end
100
101
 
101
102
  describe "with non-US languages" do
103
+
102
104
  UMLAUT = [195, 164].pack('c*').force_encoding(Encoding::UTF_8)
103
105
  let(:username) { SecureRandom.uuid.to_s.gsub(/\-/, '')[0..13] + UMLAUT }
104
106
 
@@ -163,20 +165,20 @@ describe "Puppet::Util::Windows::SID", :if => Puppet::Util::Platform.windows? do
163
165
  context "#ads_to_principal" do
164
166
  it "should raise an error for non-WIN32OLE input" do
165
167
  expect {
166
- subject.ads_to_principal(double('WIN32OLE', { :Name => 'foo' }))
168
+ subject.ads_to_principal(stub('WIN32OLE', { :Name => 'foo' }))
167
169
  }.to raise_error(Puppet::Error, /ads_object must be an IAdsUser or IAdsGroup instance/)
168
170
  end
169
171
 
170
172
  it "should raise an error for an empty byte array in the objectSID property" do
171
173
  expect {
172
- subject.ads_to_principal(double('WIN32OLE', { :objectSID => [], :Name => '', :ole_respond_to? => true }))
174
+ subject.ads_to_principal(stub('WIN32OLE', { :objectSID => [], :Name => '', :ole_respond_to? => true }))
173
175
  }.to raise_error(Puppet::Error, /Octet string must be an array of bytes/)
174
176
  end
175
177
 
176
178
  it "should raise an error for a malformed byte array" do
177
179
  expect {
178
180
  invalid_octet = [2]
179
- subject.ads_to_principal(double('WIN32OLE', { :objectSID => invalid_octet, :Name => '', :ole_respond_to? => true }))
181
+ subject.ads_to_principal(stub('WIN32OLE', { :objectSID => invalid_octet, :Name => '', :ole_respond_to? => true }))
180
182
  }.to raise_error do |error|
181
183
  expect(error).to be_a(Puppet::Util::Windows::Error)
182
184
  expect(error.code).to eq(87) # ERROR_INVALID_PARAMETER
@@ -187,7 +189,7 @@ describe "Puppet::Util::Windows::SID", :if => Puppet::Util::Platform.windows? do
187
189
  expect {
188
190
  # S-1-1-1 is a valid SID that will not resolve
189
191
  valid_octet_invalid_user = [1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0]
190
- subject.ads_to_principal(double('WIN32OLE', { :objectSID => valid_octet_invalid_user, :Name => unknown_name, :ole_respond_to? => true }))
192
+ subject.ads_to_principal(stub('WIN32OLE', { :objectSID => valid_octet_invalid_user, :Name => unknown_name, :ole_respond_to? => true }))
191
193
  }.to raise_error do |error|
192
194
  expect(error).to be_a(Puppet::Error)
193
195
  expect(error.cause.code).to eq(1332) # ERROR_NONE_MAPPED
@@ -197,7 +199,7 @@ describe "Puppet::Util::Windows::SID", :if => Puppet::Util::Platform.windows? do
197
199
  it "should return a Principal object even when the SID is unresolvable, as long as the Name matches" do
198
200
  # S-1-1-1 is a valid SID that will not resolve
199
201
  valid_octet_invalid_user = [1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0]
200
- unresolvable_user = double('WIN32OLE', { :objectSID => valid_octet_invalid_user, :Name => 'S-1-1-1', :ole_respond_to? => true })
202
+ unresolvable_user = stub('WIN32OLE', { :objectSID => valid_octet_invalid_user, :Name => 'S-1-1-1', :ole_respond_to? => true })
201
203
  principal = subject.ads_to_principal(unresolvable_user)
202
204
 
203
205
  expect(principal).to be_an_instance_of(Puppet::Util::Windows::SID::Principal)
@@ -211,13 +213,13 @@ describe "Puppet::Util::Windows::SID", :if => Puppet::Util::Platform.windows? do
211
213
 
212
214
  it "should return a Puppet::Util::Windows::SID::Principal instance for any valid sid" do
213
215
  system_bytes = [1, 1, 0, 0, 0, 0, 0, 5, 18, 0, 0, 0]
214
- adsuser = double('WIN32OLE', { :objectSID => system_bytes, :Name => 'SYSTEM', :ole_respond_to? => true })
216
+ adsuser = stub('WIN32OLE', { :objectSID => system_bytes, :Name => 'SYSTEM', :ole_respond_to? => true })
215
217
  expect(subject.ads_to_principal(adsuser)).to be_an_instance_of(Puppet::Util::Windows::SID::Principal)
216
218
  end
217
219
 
218
220
  it "should properly convert an array of bytes for a well-known non-localized SID, ignoring the Name from the WIN32OLE object" do
219
221
  bytes = [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
220
- adsuser = double('WIN32OLE', { :objectSID => bytes, :Name => unknown_name, :ole_respond_to? => true })
222
+ adsuser = stub('WIN32OLE', { :objectSID => bytes, :Name => unknown_name, :ole_respond_to? => true })
221
223
  converted = subject.ads_to_principal(adsuser)
222
224
 
223
225
  expect(converted).to be_an_instance_of Puppet::Util::Windows::SID::Principal
@@ -286,8 +288,8 @@ describe "Puppet::Util::Windows::SID", :if => Puppet::Util::Platform.windows? do
286
288
  end
287
289
 
288
290
  it "should raise if the conversion fails" do
289
- expect(subject).to receive(:string_to_sid_ptr).with(sid).
290
- and_raise(Puppet::Util::Windows::Error.new("Failed to convert string SID: #{sid}", Puppet::Util::Windows::Error::ERROR_ACCESS_DENIED))
291
+ subject.expects(:string_to_sid_ptr).with(sid).
292
+ raises(Puppet::Util::Windows::Error.new("Failed to convert string SID: #{sid}", Puppet::Util::Windows::Error::ERROR_ACCESS_DENIED))
291
293
 
292
294
  expect {
293
295
  subject.string_to_sid_ptr(sid) {|ptr| }
@@ -1,4 +1,5 @@
1
1
  # encoding: UTF-8
2
+ #!/usr/bin/env ruby
2
3
 
3
4
  require 'spec_helper'
4
5
  require 'puppet/util/windows'
@@ -1,3 +1,5 @@
1
+ #!/usr/bin/env ruby
2
+
1
3
  require 'spec_helper'
2
4
 
3
5
  describe Puppet::Util do
@@ -97,6 +99,7 @@ describe Puppet::Util do
97
99
  end
98
100
 
99
101
  describe "#withenv on Windows", :if => Puppet::Util::Platform.windows? do
102
+
100
103
  let(:process) { Puppet::Util::Windows::Process }
101
104
 
102
105
  it "should ignore case" do
@@ -120,6 +123,7 @@ describe Puppet::Util do
120
123
  end
121
124
  end
122
125
 
126
+
123
127
  def withenv_utf8(&block)
124
128
  env_var_name = SecureRandom.uuid
125
129
  utf_8_bytes = [225, 154, 160] # rune ᚠ
@@ -315,8 +319,8 @@ describe Puppet::Util do
315
319
 
316
320
  describe "when using platform :posix" do
317
321
  before :each do
318
- allow(Puppet.features).to receive(:posix).and_return(true)
319
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(false)
322
+ Puppet.features.stubs(:posix).returns true
323
+ Puppet::Util::Platform.stubs(:windows?).returns false
320
324
  end
321
325
 
322
326
  %w[/ /foo /foo/../bar].each do |path|
@@ -328,8 +332,8 @@ describe Puppet::Util do
328
332
 
329
333
  describe "when using platform :windows" do
330
334
  before :each do
331
- allow(Puppet.features).to receive(:posix).and_return(false)
332
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(true)
335
+ Puppet.features.stubs(:posix).returns false
336
+ Puppet::Util::Platform.stubs(:windows?).returns true
333
337
  end
334
338
 
335
339
  it "should normalize backslashes" do
@@ -462,8 +466,8 @@ describe Puppet::Util do
462
466
 
463
467
  describe "when using platform :posix" do
464
468
  before :each do
465
- allow(Puppet.features).to receive(:posix).and_return(true)
466
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(false)
469
+ Puppet.features.stubs(:posix).returns true
470
+ Puppet::Util::Platform.stubs(:windows?).returns false
467
471
  end
468
472
 
469
473
  %w[/ /foo /foo/../bar].each do |path|
@@ -501,8 +505,8 @@ describe Puppet::Util do
501
505
 
502
506
  describe "when using platform :windows" do
503
507
  before :each do
504
- allow(Puppet.features).to receive(:posix).and_return(false)
505
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(true)
508
+ Puppet.features.stubs(:posix).returns false
509
+ Puppet::Util::Platform.stubs(:windows?).returns true
506
510
  end
507
511
 
508
512
  it "should url encode \\ as %5C, but not replace : as %3F" do
@@ -594,14 +598,14 @@ describe Puppet::Util do
594
598
 
595
599
  before :each do
596
600
  # Most of the things this method does are bad to do during specs. :/
597
- allow(Kernel).to receive(:fork).and_return(pid).and_yield
601
+ Kernel.stubs(:fork).returns(pid).yields
598
602
 
599
- allow($stdin).to receive(:reopen)
600
- allow($stdout).to receive(:reopen)
601
- allow($stderr).to receive(:reopen)
603
+ $stdin.stubs(:reopen)
604
+ $stdout.stubs(:reopen)
605
+ $stderr.stubs(:reopen)
602
606
 
603
607
  # ensure that we don't really close anything!
604
- allow(IO).to receive(:new)
608
+ (0..256).each {|n| IO.stubs(:new) }
605
609
  end
606
610
 
607
611
  it "should close all open file descriptors except stdin/stdout/stderr when /proc/self/fd exists" do
@@ -612,32 +616,28 @@ describe Puppet::Util do
612
616
  if fd == '.' || fd == '..'
613
617
  next
614
618
  elsif ['0', '1', '2'].include? fd
615
- expect(IO).not_to receive(:new).with(fd.to_i)
619
+ IO.expects(:new).with(fd.to_i).never
616
620
  else
617
- expect(IO).to receive(:new).with(fd.to_i).and_return(double('io', close: nil))
621
+ IO.expects(:new).with(fd.to_i).returns mock('io', :close)
618
622
  end
619
623
  end
620
624
 
621
- dir_expectation = receive(:foreach).with('/proc/self/fd')
622
- fds.each do |fd|
623
- dir_expectation = dir_expectation.and_yield(fd)
624
- end
625
- allow(Dir).to dir_expectation
625
+ Dir.stubs(:foreach).with('/proc/self/fd').multiple_yields(*fds)
626
626
  Puppet::Util.safe_posix_fork
627
627
  end
628
628
 
629
629
  it "should close all open file descriptors except stdin/stdout/stderr when /proc/self/fd doesn't exists" do
630
630
  # This is ugly, but I can't really think of a better way to do it without
631
631
  # letting it actually close fds, which seems risky
632
- (0..2).each {|n| expect(IO).not_to receive(:new).with(n)}
633
- (3..256).each {|n| expect(IO).to receive(:new).with(n).and_return(double('io', close: nil)) }
634
- allow(Dir).to receive(:foreach).with('/proc/self/fd').and_raise(Errno::ENOENT)
632
+ (0..2).each {|n| IO.expects(:new).with(n).never}
633
+ (3..256).each { |n| IO.expects(:new).with(n).returns mock('io', :close) }
634
+ Dir.stubs(:foreach).with('/proc/self/fd') { raise Errno::ENOENT }
635
635
 
636
636
  Puppet::Util.safe_posix_fork
637
637
  end
638
638
 
639
639
  it "should fork a child process to execute the block" do
640
- expect(Kernel).to receive(:fork).and_return(pid).and_yield
640
+ Kernel.expects(:fork).returns(pid).yields
641
641
 
642
642
  Puppet::Util.safe_posix_fork do
643
643
  "Fork this!"
@@ -654,11 +654,11 @@ describe Puppet::Util do
654
654
  let(:path) { File.join(base, 'foo') }
655
655
 
656
656
  before :each do
657
- allow(FileTest).to receive(:file?).and_return(false)
658
- allow(FileTest).to receive(:file?).with(path).and_return(true)
657
+ FileTest.stubs(:file?).returns false
658
+ FileTest.stubs(:file?).with(path).returns true
659
659
 
660
- allow(FileTest).to receive(:executable?).and_return(false)
661
- allow(FileTest).to receive(:executable?).with(path).and_return(true)
660
+ FileTest.stubs(:executable?).returns false
661
+ FileTest.stubs(:executable?).with(path).returns true
662
662
  end
663
663
 
664
664
  it "should accept absolute paths" do
@@ -675,8 +675,8 @@ describe Puppet::Util do
675
675
  env = {:HOME => nil, :PATH => env_path}
676
676
  env.merge!({:HOMEDRIVE => nil, :USERPROFILE => nil}) if Puppet::Util::Platform.windows?
677
677
 
678
- expect(Puppet::Util::Warnings).to receive(:warnonce).once
679
678
  Puppet::Util.withenv(env) do
679
+ Puppet::Util::Warnings.expects(:warnonce).once
680
680
  Puppet::Util.which('foo')
681
681
  end
682
682
  end
@@ -698,13 +698,13 @@ describe Puppet::Util do
698
698
 
699
699
  describe "on POSIX systems" do
700
700
  before :each do
701
- allow(Puppet.features).to receive(:posix?).and_return(true)
702
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(false)
701
+ Puppet.features.stubs(:posix?).returns true
702
+ Puppet::Util::Platform.stubs(:windows?).returns false
703
703
  end
704
704
 
705
705
  it "should walk the search PATH returning the first executable" do
706
- allow(Puppet::Util).to receive(:get_env).with('PATH').and_return(File.expand_path('/bin'))
707
- allow(Puppet::Util).to receive(:get_env).with('PATHEXT').and_return(nil)
706
+ Puppet::Util.stubs(:get_env).with('PATH').returns(File.expand_path('/bin'))
707
+ Puppet::Util.stubs(:get_env).with('PATHEXT').returns(nil)
708
708
 
709
709
  expect(Puppet::Util.which('foo')).to eq(path)
710
710
  end
@@ -714,16 +714,16 @@ describe Puppet::Util do
714
714
  let(:path) { File.expand_path(File.join(base, 'foo.CMD')) }
715
715
 
716
716
  before :each do
717
- allow(Puppet.features).to receive(:posix?).and_return(false)
718
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(true)
717
+ Puppet.features.stubs(:posix?).returns false
718
+ Puppet::Util::Platform.stubs(:windows?).returns true
719
719
  end
720
720
 
721
721
  describe "when a file extension is specified" do
722
722
  it "should walk each directory in PATH ignoring PATHEXT" do
723
- allow(Puppet::Util).to receive(:get_env).with('PATH').and_return(%w[/bar /bin].map{|dir| File.expand_path(dir)}.join(File::PATH_SEPARATOR))
724
- allow(Puppet::Util).to receive(:get_env).with('PATHEXT').and_return('.FOOBAR')
723
+ Puppet::Util.stubs(:get_env).with('PATH').returns(%w[/bar /bin].map{|dir| File.expand_path(dir)}.join(File::PATH_SEPARATOR))
724
+ Puppet::Util.stubs(:get_env).with('PATHEXT').returns('.FOOBAR')
725
725
 
726
- expect(FileTest).to receive(:file?).with(File.join(File.expand_path('/bar'), 'foo.CMD')).and_return(false)
726
+ FileTest.expects(:file?).with(File.join(File.expand_path('/bar'), 'foo.CMD')).returns false
727
727
 
728
728
  expect(Puppet::Util.which('foo.CMD')).to eq(path)
729
729
  end
@@ -732,36 +732,38 @@ describe Puppet::Util do
732
732
  describe "when a file extension is not specified" do
733
733
  it "should walk each extension in PATHEXT until an executable is found" do
734
734
  bar = File.expand_path('/bar')
735
- allow(Puppet::Util).to receive(:get_env).with('PATH').and_return("#{bar}#{File::PATH_SEPARATOR}#{base}")
736
- allow(Puppet::Util).to receive(:get_env).with('PATHEXT').and_return(".EXE#{File::PATH_SEPARATOR}.CMD")
735
+ Puppet::Util.stubs(:get_env).with('PATH').returns("#{bar}#{File::PATH_SEPARATOR}#{base}")
736
+ Puppet::Util.stubs(:get_env).with('PATHEXT').returns(".EXE#{File::PATH_SEPARATOR}.CMD")
737
737
 
738
- expect(FileTest).to receive(:file?).ordered().with(File.join(bar, 'foo.EXE')).and_return(false)
739
- expect(FileTest).to receive(:file?).ordered().with(File.join(bar, 'foo.CMD')).and_return(false)
740
- expect(FileTest).to receive(:file?).ordered().with(File.join(base, 'foo.EXE')).and_return(false)
741
- expect(FileTest).to receive(:file?).ordered().with(path).and_return(true)
738
+ exts = sequence('extensions')
739
+ FileTest.expects(:file?).in_sequence(exts).with(File.join(bar, 'foo.EXE')).returns false
740
+ FileTest.expects(:file?).in_sequence(exts).with(File.join(bar, 'foo.CMD')).returns false
741
+ FileTest.expects(:file?).in_sequence(exts).with(File.join(base, 'foo.EXE')).returns false
742
+ FileTest.expects(:file?).in_sequence(exts).with(path).returns true
742
743
 
743
744
  expect(Puppet::Util.which('foo')).to eq(path)
744
745
  end
745
746
 
746
747
  it "should walk the default extension path if the environment variable is not defined" do
747
- allow(Puppet::Util).to receive(:get_env).with('PATH').and_return(base)
748
- allow(Puppet::Util).to receive(:get_env).with('PATHEXT').and_return(nil)
748
+ Puppet::Util.stubs(:get_env).with('PATH').returns(base)
749
+ Puppet::Util.stubs(:get_env).with('PATHEXT').returns(nil)
749
750
 
751
+ exts = sequence('extensions')
750
752
  %w[.COM .EXE .BAT].each do |ext|
751
- expect(FileTest).to receive(:file?).ordered().with(File.join(base, "foo#{ext}")).and_return(false)
753
+ FileTest.expects(:file?).in_sequence(exts).with(File.join(base, "foo#{ext}")).returns false
752
754
  end
753
- expect(FileTest).to receive(:file?).ordered().with(path).and_return(true)
755
+ FileTest.expects(:file?).in_sequence(exts).with(path).returns true
754
756
 
755
757
  expect(Puppet::Util.which('foo')).to eq(path)
756
758
  end
757
759
 
758
760
  it "should fall back if no extension matches" do
759
- allow(Puppet::Util).to receive(:get_env).with('PATH').and_return(base)
760
- allow(Puppet::Util).to receive(:get_env).with('PATHEXT').and_return(".EXE")
761
+ Puppet::Util.stubs(:get_env).with('PATH').returns(base)
762
+ Puppet::Util.stubs(:get_env).with('PATHEXT').returns(".EXE")
761
763
 
762
- allow(FileTest).to receive(:file?).with(File.join(base, 'foo.EXE')).and_return(false)
763
- allow(FileTest).to receive(:file?).with(File.join(base, 'foo')).and_return(true)
764
- allow(FileTest).to receive(:executable?).with(File.join(base, 'foo')).and_return(true)
764
+ FileTest.stubs(:file?).with(File.join(base, 'foo.EXE')).returns false
765
+ FileTest.stubs(:file?).with(File.join(base, 'foo')).returns true
766
+ FileTest.stubs(:executable?).with(File.join(base, 'foo')).returns true
765
767
 
766
768
  expect(Puppet::Util.which('foo')).to eq(File.join(base, 'foo'))
767
769
  end
@@ -783,7 +785,6 @@ describe Puppet::Util do
783
785
 
784
786
  context "#replace_file" do
785
787
  subject { Puppet::Util }
786
-
787
788
  it { is_expected.to respond_to :replace_file }
788
789
 
789
790
  let :target do
@@ -854,7 +855,7 @@ describe Puppet::Util do
854
855
  subject.replace_file(temp_path, 0440) do |fh|
855
856
  fh.puts('some text in there')
856
857
  end
857
-
858
+
858
859
  expect(File.read(temp_path)).to eq("some text in there\n")
859
860
  expect(get_mode(temp_path)).to eq(0440)
860
861
  end
@@ -931,6 +932,7 @@ describe Puppet::Util do
931
932
  end
932
933
 
933
934
  describe "#deterministic_rand" do
935
+
934
936
  it "should not fiddle with future rand calls" do
935
937
  Puppet::Util.deterministic_rand(123,20)
936
938
  rand_one = rand()
@@ -18,13 +18,12 @@ describe "Puppet.version Public API" do
18
18
 
19
19
  context "without a VERSION file" do
20
20
  before :each do
21
- allow(Puppet).to receive(:read_version_file).and_return(nil)
21
+ Puppet.stubs(:read_version_file).returns(nil)
22
22
  end
23
23
 
24
24
  it "is Puppet::PUPPETVERSION" do
25
25
  expect(Puppet.version).to eq(Puppet::PUPPETVERSION)
26
26
  end
27
-
28
27
  it "respects the version= setter" do
29
28
  Puppet.version = '1.2.3'
30
29
  expect(Puppet.version).to eq('1.2.3')
@@ -34,15 +33,14 @@ describe "Puppet.version Public API" do
34
33
 
35
34
  context "with a VERSION file" do
36
35
  it "is the content of the file" do
37
- expect(Puppet).to receive(:read_version_file) do |path|
36
+ Puppet.expects(:read_version_file).with() do |path|
38
37
  pathname = Pathname.new(path)
39
38
  pathname.basename.to_s == "VERSION"
40
- end.and_return('3.0.1-260-g9ca4e54')
39
+ end.returns('3.0.1-260-g9ca4e54')
41
40
 
42
41
  expect(Puppet.version).to eq('3.0.1-260-g9ca4e54')
43
42
  expect(Puppet.minor_version).to eq('3.0')
44
43
  end
45
-
46
44
  it "respects the version= setter" do
47
45
  Puppet.version = '1.2.3'
48
46
  expect(Puppet.version).to eq('1.2.3')
@@ -52,10 +50,12 @@ describe "Puppet.version Public API" do
52
50
 
53
51
  context "Using version setter" do
54
52
  it "does not read VERSION file if using set version" do
55
- expect(Puppet).not_to receive(:read_version_file)
53
+ Puppet.expects(:read_version_file).never
56
54
  Puppet.version = '1.2.3'
57
55
  expect(Puppet.version).to eq('1.2.3')
58
56
  expect(Puppet.minor_version).to eq('1.2')
59
57
  end
60
58
  end
61
59
  end
60
+
61
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: puppet
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.10
4
+ version: 6.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Puppet Labs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-07-12 00:00:00.000000000 Z
11
+ date: 2018-12-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: facter
@@ -141,12 +141,13 @@ executables:
141
141
  extensions: []
142
142
  extra_rdoc_files: []
143
143
  files:
144
- - CODEOWNERS
145
144
  - COMMITTERS.md
146
145
  - CONTRIBUTING.md
147
146
  - Gemfile
148
147
  - Gemfile.lock
148
+ - Guardfile.example
149
149
  - LICENSE
150
+ - MAINTAINERS
150
151
  - README.md
151
152
  - Rakefile
152
153
  - bin/puppet
@@ -170,9 +171,6 @@ files:
170
171
  - examples/hiera/modules/users/manifests/development.pp
171
172
  - examples/hiera/site.pp
172
173
  - ext/README.environment
173
- - ext/autotest/Rakefile
174
- - ext/autotest/config
175
- - ext/autotest/readme.rst
176
174
  - ext/build_defaults.yaml
177
175
  - ext/cert_inspector
178
176
  - ext/dbfix.sql
@@ -333,7 +331,6 @@ files:
333
331
  - lib/puppet/configurer/plugin_handler.rb
334
332
  - lib/puppet/confine.rb
335
333
  - lib/puppet/confine/any.rb
336
- - lib/puppet/confine/boolean.rb
337
334
  - lib/puppet/confine/exists.rb
338
335
  - lib/puppet/confine/false.rb
339
336
  - lib/puppet/confine/feature.rb
@@ -689,6 +686,15 @@ files:
689
686
  - lib/puppet/node.rb
690
687
  - lib/puppet/node/environment.rb
691
688
  - lib/puppet/node/facts.rb
689
+ - lib/puppet/pal/catalog_compiler.rb
690
+ - lib/puppet/pal/compiler.rb
691
+ - lib/puppet/pal/function_signature.rb
692
+ - lib/puppet/pal/json_catalog_encoder.rb
693
+ - lib/puppet/pal/pal_api.rb
694
+ - lib/puppet/pal/pal_impl.rb
695
+ - lib/puppet/pal/plan_signature.rb
696
+ - lib/puppet/pal/script_compiler.rb
697
+ - lib/puppet/pal/task_signature.rb
692
698
  - lib/puppet/parameter.rb
693
699
  - lib/puppet/parameter/boolean.rb
694
700
  - lib/puppet/parameter/package_options.rb
@@ -1017,7 +1023,6 @@ files:
1017
1023
  - lib/puppet/provider/package/windows/package.rb
1018
1024
  - lib/puppet/provider/package/yum.rb
1019
1025
  - lib/puppet/provider/package/zypper.rb
1020
- - lib/puppet/provider/package_targetable.rb
1021
1026
  - lib/puppet/provider/parsedfile.rb
1022
1027
  - lib/puppet/provider/service/base.rb
1023
1028
  - lib/puppet/provider/service/bsd.rb
@@ -1066,6 +1071,7 @@ files:
1066
1071
  - lib/puppet/resource/status.rb
1067
1072
  - lib/puppet/resource/type.rb
1068
1073
  - lib/puppet/resource/type_collection.rb
1074
+ - lib/puppet/rest/client.rb
1069
1075
  - lib/puppet/rest/errors.rb
1070
1076
  - lib/puppet/rest/response.rb
1071
1077
  - lib/puppet/rest/route.rb
@@ -1115,7 +1121,9 @@ files:
1115
1121
  - lib/puppet/status.rb
1116
1122
  - lib/puppet/syntax_checkers.rb
1117
1123
  - lib/puppet/syntax_checkers/base64.rb
1124
+ - lib/puppet/syntax_checkers/epp.rb
1118
1125
  - lib/puppet/syntax_checkers/json.rb
1126
+ - lib/puppet/syntax_checkers/pp.rb
1119
1127
  - lib/puppet/test/test_helper.rb
1120
1128
  - lib/puppet/transaction.rb
1121
1129
  - lib/puppet/transaction/additional_resource_generator.rb
@@ -1545,13 +1553,8 @@ files:
1545
1553
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseeone.pp
1546
1554
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseezero.pp
1547
1555
  - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load.rb
1548
- - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load2.rb
1549
- - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load3.rb
1550
- - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load4.rb
1551
- - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load5.rb
1552
1556
  - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/callee.rb
1553
1557
  - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/callee_ws.rb
1554
- - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/good_func_load.rb
1555
1558
  - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/metadata.json
1556
1559
  - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcalled.pp
1557
1560
  - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcaller.pp
@@ -1637,9 +1640,8 @@ files:
1637
1640
  - spec/fixtures/unit/provider/package/pkg/incomplete
1638
1641
  - spec/fixtures/unit/provider/package/pkg/solaris11
1639
1642
  - spec/fixtures/unit/provider/package/pkg/unknown_status
1640
- - spec/fixtures/unit/provider/package/pkgng/pkg.info
1641
1643
  - spec/fixtures/unit/provider/package/pkgng/pkg.query
1642
- - spec/fixtures/unit/provider/package/pkgng/pkg.query_absent
1644
+ - spec/fixtures/unit/provider/package/pkgng/pkg.query.zsh
1643
1645
  - spec/fixtures/unit/provider/package/pkgng/pkg.version
1644
1646
  - spec/fixtures/unit/provider/package/sun/dummy.server
1645
1647
  - spec/fixtures/unit/provider/package/sun/simple
@@ -1714,7 +1716,6 @@ files:
1714
1716
  - spec/integration/network/authconfig_spec.rb
1715
1717
  - spec/integration/network/formats_spec.rb
1716
1718
  - spec/integration/network/http/api/indirected_routes_spec.rb
1717
- - spec/integration/network/http_pool_spec.rb
1718
1719
  - spec/integration/node/environment_spec.rb
1719
1720
  - spec/integration/node/facts_spec.rb
1720
1721
  - spec/integration/node_spec.rb
@@ -1732,7 +1733,6 @@ files:
1732
1733
  - spec/integration/parser/scope_spec.rb
1733
1734
  - spec/integration/parser/script_compiler_spec.rb
1734
1735
  - spec/integration/parser/undef_param_spec.rb
1735
- - spec/integration/provider/file/windows_spec.rb
1736
1736
  - spec/integration/provider/service/init_spec.rb
1737
1737
  - spec/integration/provider/service/systemd_spec.rb
1738
1738
  - spec/integration/provider/service/windows_spec.rb
@@ -1788,7 +1788,6 @@ files:
1788
1788
  - spec/lib/puppet_spec/files.rb
1789
1789
  - spec/lib/puppet_spec/fixtures.rb
1790
1790
  - spec/lib/puppet_spec/handler.rb
1791
- - spec/lib/puppet_spec/https.rb
1792
1791
  - spec/lib/puppet_spec/language.rb
1793
1792
  - spec/lib/puppet_spec/matchers.rb
1794
1793
  - spec/lib/puppet_spec/module_tool/shared_functions.rb
@@ -2347,6 +2346,7 @@ files:
2347
2346
  - spec/unit/resource/type_collection_spec.rb
2348
2347
  - spec/unit/resource/type_spec.rb
2349
2348
  - spec/unit/resource_spec.rb
2349
+ - spec/unit/rest/client_spec.rb
2350
2350
  - spec/unit/rest/route_spec.rb
2351
2351
  - spec/unit/scheduler/job_spec.rb
2352
2352
  - spec/unit/scheduler/scheduler_spec.rb
@@ -2363,7 +2363,6 @@ files:
2363
2363
  - spec/unit/settings/ini_file_spec.rb
2364
2364
  - spec/unit/settings/path_setting_spec.rb
2365
2365
  - spec/unit/settings/priority_setting_spec.rb
2366
- - spec/unit/settings/server_list_setting_spec.rb
2367
2366
  - spec/unit/settings/string_setting_spec.rb
2368
2367
  - spec/unit/settings/terminus_setting_spec.rb
2369
2368
  - spec/unit/settings/value_translator_spec.rb
@@ -2491,7 +2490,6 @@ files:
2491
2490
  - spec/unit/util/yaml_spec.rb
2492
2491
  - spec/unit/util_spec.rb
2493
2492
  - spec/unit/version_spec.rb
2494
- - spec/watchr.rb
2495
2493
  - tasks/benchmark.rake
2496
2494
  - tasks/cfpropertylist.rake
2497
2495
  - tasks/ci.rake
@@ -2753,13 +2751,8 @@ test_files:
2753
2751
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseeone.pp
2754
2752
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseezero.pp
2755
2753
  - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load.rb
2756
- - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load2.rb
2757
- - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load3.rb
2758
- - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load4.rb
2759
- - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load5.rb
2760
2754
  - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/callee.rb
2761
2755
  - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/callee_ws.rb
2762
- - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/good_func_load.rb
2763
2756
  - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/metadata.json
2764
2757
  - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcalled.pp
2765
2758
  - spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcaller.pp
@@ -2845,9 +2838,8 @@ test_files:
2845
2838
  - spec/fixtures/unit/provider/package/pkg/incomplete
2846
2839
  - spec/fixtures/unit/provider/package/pkg/solaris11
2847
2840
  - spec/fixtures/unit/provider/package/pkg/unknown_status
2848
- - spec/fixtures/unit/provider/package/pkgng/pkg.info
2849
2841
  - spec/fixtures/unit/provider/package/pkgng/pkg.query
2850
- - spec/fixtures/unit/provider/package/pkgng/pkg.query_absent
2842
+ - spec/fixtures/unit/provider/package/pkgng/pkg.query.zsh
2851
2843
  - spec/fixtures/unit/provider/package/pkgng/pkg.version
2852
2844
  - spec/fixtures/unit/provider/package/sun/dummy.server
2853
2845
  - spec/fixtures/unit/provider/package/sun/simple
@@ -2922,7 +2914,6 @@ test_files:
2922
2914
  - spec/integration/network/authconfig_spec.rb
2923
2915
  - spec/integration/network/formats_spec.rb
2924
2916
  - spec/integration/network/http/api/indirected_routes_spec.rb
2925
- - spec/integration/network/http_pool_spec.rb
2926
2917
  - spec/integration/node/environment_spec.rb
2927
2918
  - spec/integration/node/facts_spec.rb
2928
2919
  - spec/integration/node_spec.rb
@@ -2940,7 +2931,6 @@ test_files:
2940
2931
  - spec/integration/parser/scope_spec.rb
2941
2932
  - spec/integration/parser/script_compiler_spec.rb
2942
2933
  - spec/integration/parser/undef_param_spec.rb
2943
- - spec/integration/provider/file/windows_spec.rb
2944
2934
  - spec/integration/provider/service/init_spec.rb
2945
2935
  - spec/integration/provider/service/systemd_spec.rb
2946
2936
  - spec/integration/provider/service/windows_spec.rb
@@ -2996,7 +2986,6 @@ test_files:
2996
2986
  - spec/lib/puppet_spec/files.rb
2997
2987
  - spec/lib/puppet_spec/fixtures.rb
2998
2988
  - spec/lib/puppet_spec/handler.rb
2999
- - spec/lib/puppet_spec/https.rb
3000
2989
  - spec/lib/puppet_spec/language.rb
3001
2990
  - spec/lib/puppet_spec/matchers.rb
3002
2991
  - spec/lib/puppet_spec/module_tool/shared_functions.rb
@@ -3555,6 +3544,7 @@ test_files:
3555
3544
  - spec/unit/resource/type_collection_spec.rb
3556
3545
  - spec/unit/resource/type_spec.rb
3557
3546
  - spec/unit/resource_spec.rb
3547
+ - spec/unit/rest/client_spec.rb
3558
3548
  - spec/unit/rest/route_spec.rb
3559
3549
  - spec/unit/scheduler/job_spec.rb
3560
3550
  - spec/unit/scheduler/scheduler_spec.rb
@@ -3571,7 +3561,6 @@ test_files:
3571
3561
  - spec/unit/settings/ini_file_spec.rb
3572
3562
  - spec/unit/settings/path_setting_spec.rb
3573
3563
  - spec/unit/settings/priority_setting_spec.rb
3574
- - spec/unit/settings/server_list_setting_spec.rb
3575
3564
  - spec/unit/settings/string_setting_spec.rb
3576
3565
  - spec/unit/settings/terminus_setting_spec.rb
3577
3566
  - spec/unit/settings/value_translator_spec.rb
@@ -3699,4 +3688,3 @@ test_files:
3699
3688
  - spec/unit/util/yaml_spec.rb
3700
3689
  - spec/unit/util_spec.rb
3701
3690
  - spec/unit/version_spec.rb
3702
- - spec/watchr.rb