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
@@ -0,0 +1,135 @@
1
+ require 'spec_helper'
2
+
3
+ require 'puppet/rest/client'
4
+ require 'puppet/rest/ssl_context'
5
+ require 'puppet_spec/validators'
6
+ require 'puppet_spec/ssl'
7
+
8
+ describe Puppet::Rest::Client do
9
+ # Follows closely with spec/unit/network/http/connection_spec's
10
+ # 'ssl verifier' shared context
11
+ shared_examples 'connection error handling' do
12
+ let(:uri) { URI.parse('https://foo.com/blah') }
13
+
14
+ it 'provides a meaningful error message when cert validation fails' do
15
+ client.instance_variable_set(:@verifier,
16
+ ConstantErrorValidator.new(
17
+ error_string: 'foo'))
18
+
19
+ http.expects(:get_content).with(uri.to_s, query: nil, header: nil)
20
+ .raises(OpenSSL::OpenSSLError.new('certificate verify failed'))
21
+ expect{ client.get(uri) }.to raise_error do |error|
22
+ expect(error).to be_a(Puppet::Error)
23
+ expect(error.message).to include('foo')
24
+ end
25
+ end
26
+
27
+ it 'provides valuable error message when cert names do not match' do
28
+ cert = PuppetSpec::SSL.self_signed_ca(PuppetSpec::SSL.create_private_key,
29
+ '/CN=bar.com')
30
+ client.instance_variable_set(:@verifier,
31
+ ConstantErrorValidator.new(
32
+ peer_certs: [cert]))
33
+ http.expects(:get_content).with(uri.to_s, query: nil, header: nil)
34
+ .raises(OpenSSL::OpenSSLError.new('hostname does not match with server certificate'))
35
+ expect { client.get(uri) }.to raise_error do |error|
36
+ expect(error).to be_a(Puppet::Error)
37
+ expect(error.message).to include("Server hostname 'foo.com' did not match")
38
+ expect(error.message).to include('expected bar.com')
39
+ end
40
+ end
41
+
42
+ it 're-raises errors it does not understand' do
43
+ http.expects(:get_content).with(uri.to_s, query: nil, header: nil)
44
+ .raises(OpenSSL::OpenSSLError.new('other ssl error'))
45
+ expect{ client.get(uri) }.to raise_error do |error|
46
+ expect(error).to be_a(OpenSSL::OpenSSLError)
47
+ expect(error.message).to include('other ssl error')
48
+ end
49
+
50
+ end
51
+ end
52
+
53
+ context 'when creating a new client' do
54
+ let(:ssl_store) { mock('store') }
55
+ let(:ssl_config) { stub_everything('ssl config') }
56
+ let(:http) { stub_everything('http', :ssl_config => ssl_config) }
57
+
58
+ it 'initializes itself with basic defaults' do
59
+ HTTPClient.expects(:new).returns(http)
60
+ OpenSSL::X509::Store.stubs(:new).returns(ssl_store)
61
+ # Configure connection with HTTP settings
62
+ Puppet[:http_read_timeout] = 120
63
+ Puppet[:http_connect_timeout] = 10
64
+ Puppet[:http_debug] = true
65
+
66
+ http.expects(:connect_timeout=).with(10)
67
+ http.expects(:receive_timeout=).with(120)
68
+ http.expects(:debug_dev=).with($stderr)
69
+
70
+ # Configure verify mode with SSL settings
71
+ ssl_config.expects(:cert_store=).with(ssl_store)
72
+ Puppet[:ssl_client_ca_auth] = '/fake/path'
73
+ Puppet[:hostcert] = '/fake/cert/path'
74
+ ssl_config.expects(:verify_mode=).with(OpenSSL::SSL::VERIFY_NONE)
75
+
76
+ Puppet::Rest::Client.new(ssl_context: Puppet::Rest::SSLContext.new(OpenSSL::SSL::VERIFY_NONE))
77
+ end
78
+
79
+ it 'uses a given client and SSL store when provided' do
80
+ ssl_config.expects(:cert_store=).with(ssl_store)
81
+ Puppet::Rest::Client.new(client: http,
82
+ ssl_context: Puppet::Rest::SSLContext.new(OpenSSL::SSL::VERIFY_PEER, ssl_store))
83
+ end
84
+
85
+ it 'configures a receive timeout when provided' do
86
+ http.expects(:receive_timeout=).with(10)
87
+ Puppet::Rest::Client.new(ssl_context: Puppet::Rest::SSLContext.new(OpenSSL::SSL::VERIFY_NONE),
88
+ client: http, receive_timeout: 10)
89
+ end
90
+ end
91
+
92
+ context 'when making requests' do
93
+ let(:ssl_config) { stub_everything('ssl config') }
94
+ let(:http) { stub_everything('http', :ssl_config => ssl_config) }
95
+ let(:client) { Puppet::Rest::Client.new(ssl_context: Puppet::Rest::SSLContext.new(OpenSSL::SSL::VERIFY_NONE), client: http) }
96
+ let(:url) { 'https://myserver.com:555/data' }
97
+
98
+ describe "#get" do
99
+ it 'makes a GET request given a URL, query hash, header hash, and streaming block' do
100
+ query = { 'environment' => 'production' }
101
+ header = { 'Accept' => 'text/plain' }
102
+ response_string = ''
103
+ chunk_processing = lambda { |chunk| response_string = chunk }
104
+ http.expects(:get_content).with(url, { query: query, header: header }).yields('response')
105
+ client.get(url, query: query, header: header, &chunk_processing)
106
+ expect(response_string).to eq('response')
107
+ end
108
+
109
+ it 'throws an exception when the response to the GET is not OK' do
110
+ fake_response = mock('resp', :status => HTTP::Status::BAD_REQUEST)
111
+ http.expects(:get_content).with(url, query: nil, header: nil)
112
+ .raises(HTTPClient::BadResponseError.new('failed request', fake_response))
113
+ expect { client.get(url) }.to raise_error do |error|
114
+ expect(error.message).to eq('failed request')
115
+ expect(error.response).to be_a(Puppet::Rest::Response)
116
+ expect(error.response.status_code).to eq(400)
117
+ end
118
+ end
119
+
120
+ include_examples 'connection error handling'
121
+ end
122
+
123
+ describe "#put" do
124
+ it 'makes a PUT request given a URL, string body, query hash, and header hash' do
125
+ body = 'send to server'
126
+ query = { 'environment' => 'production' }
127
+ header = { 'Accept' => 'text/plain' }
128
+ http.expects(:put).with(url, { body: body, query: query, header: header })
129
+ client.put(url, body: body, query: query, header: header)
130
+ end
131
+
132
+ include_examples 'connection error handling'
133
+ end
134
+ end
135
+ end
@@ -4,7 +4,7 @@ require 'puppet/rest/route'
4
4
 
5
5
  describe Puppet::Rest::Route do
6
6
  describe '#with_base_url'do
7
- let(:dns_resolver) { double('dns resolver') }
7
+ let(:dns_resolver) { stub_everything('dns resolver') }
8
8
 
9
9
  context 'when not using SRV records' do
10
10
  before :each do
@@ -81,8 +81,8 @@ describe Puppet::Rest::Route do
81
81
  Puppet.settings[:use_srv_records] = true
82
82
  Puppet.settings[:srv_domain] = 'example.com'
83
83
 
84
- @dns_mock = double('dns')
85
- expect(Resolv::DNS).to receive(:new).and_return(@dns_mock)
84
+ @dns_mock = mock('dns')
85
+ Resolv::DNS.expects(:new).returns(@dns_mock)
86
86
 
87
87
  @port = 7502
88
88
  @target = 'example.com'
@@ -90,9 +90,9 @@ describe Puppet::Rest::Route do
90
90
  record.instance_variable_set(:@ttl, 10)
91
91
  @srv_records = [record]
92
92
 
93
- expect(@dns_mock).to receive(:getresources).
94
- with("_x-puppet-test_service._tcp.example.com", Resolv::DNS::Resource::IN::SRV).
95
- and_return(@srv_records)
93
+ @dns_mock.expects(:getresources).
94
+ with("_x-puppet._tcp.test_service", Resolv::DNS::Resource::IN::SRV).
95
+ returns(@srv_records)
96
96
  end
97
97
 
98
98
  it "yields a URL using the server and port from the SRV record" do
@@ -1,3 +1,4 @@
1
+ #! /usr/bin/env ruby
1
2
  require 'spec_helper'
2
3
  require 'puppet/scheduler'
3
4
 
@@ -1,3 +1,4 @@
1
+ #! /usr/bin/env ruby
1
2
  require 'spec_helper'
2
3
  require 'puppet/scheduler'
3
4
 
@@ -1,3 +1,4 @@
1
+ #! /usr/bin/env ruby
1
2
  require 'spec_helper'
2
3
  require 'puppet/scheduler'
3
4
 
@@ -28,7 +29,7 @@ describe Puppet::Scheduler::SplayJob do
28
29
 
29
30
  it "is not immediately ready if splayed" do
30
31
  job.start_time = start_time
31
- expect(job).to receive(:splay).and_return(6)
32
+ job.expects(:splay).returns(6)
32
33
  expect(job.ready?(start_time)).not_to be
33
34
  end
34
35
  end
@@ -4,7 +4,7 @@ require 'puppet/settings'
4
4
  require 'puppet/settings/array_setting'
5
5
 
6
6
  describe Puppet::Settings::ArraySetting do
7
- subject { described_class.new(:settings => double('settings'), :desc => "test") }
7
+ subject { described_class.new(:settings => stub('settings'), :desc => "test") }
8
8
 
9
9
  it "is of type :array" do
10
10
  expect(subject.type).to eq :array
@@ -6,11 +6,11 @@ require 'puppet/type/file'
6
6
 
7
7
  describe Puppet::Settings::AutosignSetting do
8
8
  let(:settings) do
9
- s = double('settings')
10
- allow(s).to receive(:[]).with(:mkusers).and_return(true)
11
- allow(s).to receive(:[]).with(:user).and_return('puppet')
12
- allow(s).to receive(:[]).with(:group).and_return('puppet')
13
- allow(s).to receive(:[]).with(:manage_internal_file_permissions).and_return(true)
9
+ s = stub('settings')
10
+ s.stubs(:[]).with(:mkusers).returns true
11
+ s.stubs(:[]).with(:user).returns 'puppet'
12
+ s.stubs(:[]).with(:group).returns 'puppet'
13
+ s.stubs(:[]).with(:manage_internal_file_permissions).returns true
14
14
  s
15
15
  end
16
16
 
@@ -74,9 +74,9 @@ describe Puppet::Settings::AutosignSetting do
74
74
  describe "converting the setting to a resource" do
75
75
  it "converts the file path to a file resource", :if => !Puppet::Util::Platform.windows? do
76
76
  path = File.expand_path('/path/to/autosign.conf')
77
- allow(settings).to receive(:value).with('autosign', nil, false).and_return(path)
78
- allow(Puppet::FileSystem).to receive(:exist?).with(path).and_return(true)
79
- expect(Puppet.features).to receive(:root?).and_return(true)
77
+ settings.stubs(:value).with('autosign', nil, false).returns(path)
78
+ Puppet::FileSystem.stubs(:exist?).with(path).returns true
79
+ Puppet.features.expects(:root?).returns(true)
80
80
 
81
81
  setting.mode = '0664'
82
82
  setting.owner = 'service'
@@ -92,7 +92,7 @@ describe Puppet::Settings::AutosignSetting do
92
92
  end
93
93
 
94
94
  it "returns nil when the setting is a boolean" do
95
- allow(settings).to receive(:value).with('autosign', nil, false).and_return('true')
95
+ settings.stubs(:value).with('autosign', nil, false).returns 'true'
96
96
 
97
97
  setting.mode = '0664'
98
98
  setting.owner = 'service'
@@ -4,7 +4,7 @@ require 'puppet/settings'
4
4
  require 'puppet/settings/certificate_revocation_setting'
5
5
 
6
6
  describe Puppet::Settings::CertificateRevocationSetting do
7
- subject { described_class.new(:settings => double('settings'), :desc => "test") }
7
+ subject { described_class.new(:settings => stub('settings'), :desc => "test") }
8
8
 
9
9
  it "is of type :certificate_revocation" do
10
10
  expect(subject.type).to eq :certificate_revocation
@@ -1,3 +1,4 @@
1
+ #! /usr/bin/env ruby -S rspec
1
2
  require 'spec_helper'
2
3
  require 'puppet/settings/config_file'
3
4
 
@@ -1,3 +1,4 @@
1
+ #! /usr/bin/env ruby
1
2
  require 'spec_helper'
2
3
 
3
4
  require 'puppet/settings'
@@ -14,14 +15,18 @@ describe Puppet::Settings::DirectorySetting do
14
15
 
15
16
  describe "when being converted to a resource" do
16
17
  before do
17
- @settings = double('settings')
18
+ @settings = mock 'settings'
18
19
  @dir = Puppet::Settings::DirectorySetting.new(
19
20
  :settings => @settings, :desc => "eh", :name => :mydir, :section => "mysect")
20
- allow(@settings).to receive(:value).with(:mydir).and_return(@basepath)
21
+ @settings.stubs(:value).with(:mydir).returns @basepath
21
22
  end
22
23
 
23
24
  it "should return :directory as its type" do
24
25
  expect(@dir.type).to eq(:directory)
25
26
  end
27
+
28
+
29
+
26
30
  end
27
31
  end
32
+
@@ -1,10 +1,11 @@
1
+ #!/usr/bin/env ruby
1
2
  require 'spec_helper'
2
3
 
3
4
  require 'puppet/settings'
4
5
  require 'puppet/settings/duration_setting'
5
6
 
6
7
  describe Puppet::Settings::DurationSetting do
7
- subject { described_class.new(:settings => double('settings'), :desc => "test") }
8
+ subject { described_class.new(:settings => mock('settings'), :desc => "test") }
8
9
 
9
10
  describe "when munging the setting" do
10
11
  it "should return the same value if given an integer" do
@@ -19,7 +19,7 @@ describe Puppet::Settings::EnumSetting do
19
19
  end
20
20
 
21
21
  def enum_setting_allowing(*values)
22
- Puppet::Settings::EnumSetting.new(:settings => double('settings'),
22
+ Puppet::Settings::EnumSetting.new(:settings => mock('settings'),
23
23
  :name => "testing",
24
24
  :desc => "description of testing",
25
25
  :values => values)
@@ -5,14 +5,14 @@ describe Puppet::Settings::EnvironmentConf do
5
5
 
6
6
  def setup_environment_conf(config, conf_hash)
7
7
  conf_hash.each do |setting,value|
8
- expect(config).to receive(:setting).with(setting).and_return(
9
- double('setting', :value => value)
8
+ config.expects(:setting).with(setting).returns(
9
+ mock('setting', :value => value)
10
10
  )
11
11
  end
12
12
  end
13
13
 
14
14
  context "with config" do
15
- let(:config) { double('config') }
15
+ let(:config) { stub('config') }
16
16
  let(:envconf) { Puppet::Settings::EnvironmentConf.new("/some/direnv", config, ["/global/modulepath"]) }
17
17
 
18
18
  it "reads a modulepath from config and does not include global_module_path" do
@@ -91,10 +91,12 @@ describe Puppet::Settings::EnvironmentConf do
91
91
  end
92
92
 
93
93
  describe "with disable_per_environment_manifest" do
94
- let(:config) { double('config') }
94
+
95
+ let(:config) { stub('config') }
95
96
  let(:envconf) { Puppet::Settings::EnvironmentConf.new("/some/direnv", config, ["/global/modulepath"]) }
96
97
 
97
98
  context "set true" do
99
+
98
100
  before(:each) do
99
101
  Puppet[:default_manifest] = File.expand_path('/default/manifest')
100
102
  Puppet[:disable_per_environment_manifest] = true
@@ -1,3 +1,4 @@
1
+ #! /usr/bin/env ruby
1
2
  require 'spec_helper'
2
3
 
3
4
  require 'puppet/settings'
@@ -18,13 +19,13 @@ describe Puppet::Settings::FileSetting do
18
19
  :service_group_available? => false
19
20
  }.merge(wanted_values)
20
21
 
21
- settings = double("settings")
22
+ settings = mock("settings")
22
23
 
23
- allow(settings).to receive(:[]).with(:user).and_return(real_values[:user])
24
- allow(settings).to receive(:[]).with(:group).and_return(real_values[:group])
25
- allow(settings).to receive(:[]).with(:mkusers).and_return(real_values[:mkusers])
26
- allow(settings).to receive(:service_user_available?).and_return(real_values[:service_user_available?])
27
- allow(settings).to receive(:service_group_available?).and_return(real_values[:service_group_available?])
24
+ settings.stubs(:[]).with(:user).returns real_values[:user]
25
+ settings.stubs(:[]).with(:group).returns real_values[:group]
26
+ settings.stubs(:[]).with(:mkusers).returns real_values[:mkusers]
27
+ settings.stubs(:service_user_available?).returns real_values[:service_user_available?]
28
+ settings.stubs(:service_group_available?).returns real_values[:service_group_available?]
28
29
 
29
30
  settings
30
31
  end
@@ -119,16 +120,16 @@ describe Puppet::Settings::FileSetting do
119
120
  end
120
121
 
121
122
  it "should be able to be converted into a resource" do
122
- expect(FileSetting.new(:settings => double("settings"), :desc => "eh")).to respond_to(:to_resource)
123
+ expect(FileSetting.new(:settings => mock("settings"), :desc => "eh")).to respond_to(:to_resource)
123
124
  end
124
125
 
125
126
  describe "when being converted to a resource" do
126
127
  before do
127
128
  @basepath = make_absolute("/somepath")
128
- @settings = double('settings')
129
+ @settings = mock 'settings'
129
130
  @file = Puppet::Settings::FileSetting.new(:settings => @settings, :desc => "eh", :name => :myfile, :section => "mysect")
130
- allow(@file).to receive(:create_files?).and_return(true)
131
- allow(@settings).to receive(:value).with(:myfile, nil, false).and_return(@basepath)
131
+ @file.stubs(:create_files?).returns true
132
+ @settings.stubs(:value).with(:myfile, nil, false).returns @basepath
132
133
  end
133
134
 
134
135
  it "should return :file as its type" do
@@ -136,29 +137,29 @@ describe Puppet::Settings::FileSetting do
136
137
  end
137
138
 
138
139
  it "should skip non-existent files if 'create_files' is not enabled" do
139
- expect(@file).to receive(:create_files?).and_return(false)
140
- expect(@file).to receive(:type).and_return(:file)
141
- expect(Puppet::FileSystem).to receive(:exist?).with(@basepath).and_return(false)
140
+ @file.expects(:create_files?).returns false
141
+ @file.expects(:type).returns :file
142
+ Puppet::FileSystem.expects(:exist?).with(@basepath).returns false
142
143
  expect(@file.to_resource).to be_nil
143
144
  end
144
145
 
145
146
  it "should manage existent files even if 'create_files' is not enabled" do
146
- expect(@file).to receive(:create_files?).and_return(false)
147
- expect(@file).to receive(:type).and_return(:file)
148
- allow(Puppet::FileSystem).to receive(:exist?)
149
- expect(Puppet::FileSystem).to receive(:exist?).with(@basepath).and_return(true)
147
+ @file.expects(:create_files?).returns false
148
+ @file.expects(:type).returns :file
149
+ Puppet::FileSystem.stubs(:exist?)
150
+ Puppet::FileSystem.expects(:exist?).with(@basepath).returns true
150
151
  expect(@file.to_resource).to be_instance_of(Puppet::Resource)
151
152
  end
152
153
 
153
154
  describe "on POSIX systems", :if => Puppet.features.posix? do
154
155
  it "should skip files in /dev" do
155
- allow(@settings).to receive(:value).with(:myfile, nil, false).and_return("/dev/file")
156
+ @settings.stubs(:value).with(:myfile, nil, false).returns "/dev/file"
156
157
  expect(@file.to_resource).to be_nil
157
158
  end
158
159
  end
159
160
 
160
161
  it "should skip files whose paths are not strings" do
161
- allow(@settings).to receive(:value).with(:myfile, nil, false).and_return(:foo)
162
+ @settings.stubs(:value).with(:myfile, nil, false).returns :foo
162
163
  expect(@file.to_resource).to be_nil
163
164
  end
164
165
 
@@ -175,7 +176,7 @@ describe Puppet::Settings::FileSetting do
175
176
  end
176
177
 
177
178
  it "should fully qualified returned files if necessary (#795)" do
178
- allow(@settings).to receive(:value).with(:myfile, nil, false).and_return("myfile")
179
+ @settings.stubs(:value).with(:myfile, nil, false).returns "myfile"
179
180
  path = File.expand_path('myfile')
180
181
  expect(@file.to_resource.title).to eq(path)
181
182
  end
@@ -197,81 +198,82 @@ describe Puppet::Settings::FileSetting do
197
198
  it "should not set the mode on a the file if manage_internal_file_permissions is disabled" do
198
199
  Puppet[:manage_internal_file_permissions] = false
199
200
 
200
- allow(@file).to receive(:mode).and_return(0755)
201
+ @file.stubs(:mode).returns(0755)
201
202
 
202
203
  expect(@file.to_resource[:mode]).to eq(nil)
203
204
  end
204
205
 
205
206
  it "should set the owner if running as root and the owner is provided" do
206
207
  Puppet[:manage_internal_file_permissions] = true
207
- expect(Puppet.features).to receive(:root?).and_return(true)
208
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(false)
209
- allow(@file).to receive(:owner).and_return("foo")
208
+ Puppet.features.expects(:root?).returns true
209
+ Puppet::Util::Platform.stubs(:windows?).returns false
210
+ @file.stubs(:owner).returns "foo"
210
211
 
211
212
  expect(@file.to_resource[:owner]).to eq("foo")
212
213
  end
213
214
 
214
215
  it "should not set the owner if manage_internal_file_permissions is disabled" do
215
216
  Puppet[:manage_internal_file_permissions] = false
216
- allow(Puppet.features).to receive(:root?).and_return(true)
217
- allow(@file).to receive(:owner).and_return("foo")
217
+ Puppet.features.stubs(:root?).returns true
218
+ @file.stubs(:owner).returns "foo"
218
219
 
219
220
  expect(@file.to_resource[:owner]).to eq(nil)
220
221
  end
221
222
 
222
223
  it "should set the group if running as root and the group is provided" do
223
224
  Puppet[:manage_internal_file_permissions] = true
224
- expect(Puppet.features).to receive(:root?).and_return(true)
225
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(false)
226
- allow(@file).to receive(:group).and_return("foo")
225
+ Puppet.features.expects(:root?).returns true
226
+ Puppet::Util::Platform.stubs(:windows?).returns false
227
+ @file.stubs(:group).returns "foo"
227
228
 
228
229
  expect(@file.to_resource[:group]).to eq("foo")
229
230
  end
230
231
 
231
232
  it "should not set the group if manage_internal_file_permissions is disabled" do
232
233
  Puppet[:manage_internal_file_permissions] = false
233
- allow(Puppet.features).to receive(:root?).and_return(true)
234
- allow(@file).to receive(:group).and_return("foo")
234
+ Puppet.features.stubs(:root?).returns true
235
+ @file.stubs(:group).returns "foo"
235
236
 
236
237
  expect(@file.to_resource[:group]).to eq(nil)
237
238
  end
238
239
 
240
+
239
241
  it "should not set owner if not running as root" do
240
242
  Puppet[:manage_internal_file_permissions] = true
241
- expect(Puppet.features).to receive(:root?).and_return(false)
242
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(false)
243
- allow(@file).to receive(:owner).and_return("foo")
243
+ Puppet.features.expects(:root?).returns false
244
+ Puppet::Util::Platform.stubs(:windows?).returns false
245
+ @file.stubs(:owner).returns "foo"
244
246
 
245
247
  expect(@file.to_resource[:owner]).to be_nil
246
248
  end
247
249
 
248
250
  it "should not set group if not running as root" do
249
251
  Puppet[:manage_internal_file_permissions] = true
250
- expect(Puppet.features).to receive(:root?).and_return(false)
251
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(false)
252
- allow(@file).to receive(:group).and_return("foo")
252
+ Puppet.features.expects(:root?).returns false
253
+ Puppet::Util::Platform.stubs(:windows?).returns false
254
+ @file.stubs(:group).returns "foo"
253
255
 
254
256
  expect(@file.to_resource[:group]).to be_nil
255
257
  end
256
258
 
257
259
  describe "on Microsoft Windows systems" do
258
260
  before :each do
259
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(true)
261
+ Puppet::Util::Platform.stubs(:windows?).returns true
260
262
  end
261
263
 
262
264
  it "should not set owner" do
263
- allow(@file).to receive(:owner).and_return("foo")
265
+ @file.stubs(:owner).returns "foo"
264
266
  expect(@file.to_resource[:owner]).to be_nil
265
267
  end
266
268
 
267
269
  it "should not set group" do
268
- allow(@file).to receive(:group).and_return("foo")
270
+ @file.stubs(:group).returns "foo"
269
271
  expect(@file.to_resource[:group]).to be_nil
270
272
  end
271
273
  end
272
274
 
273
275
  it "should set :ensure to the file type" do
274
- expect(@file).to receive(:type).and_return(:directory)
276
+ @file.expects(:type).returns :directory
275
277
  expect(@file.to_resource[:ensure]).to eq(:directory)
276
278
  end
277
279
 
@@ -284,7 +286,7 @@ describe Puppet::Settings::FileSetting do
284
286
  end
285
287
 
286
288
  it "should tag the resource with the settings section" do
287
- expect(@file).to receive(:section).and_return("mysect")
289
+ @file.expects(:section).returns "mysect"
288
290
  expect(@file.to_resource).to be_tagged("mysect")
289
291
  end
290
292
 
@@ -303,7 +305,7 @@ describe Puppet::Settings::FileSetting do
303
305
 
304
306
  describe "#munge" do
305
307
  it 'does not expand the path of the special value :memory: so we can set dblocation to an in-memory database' do
306
- filesetting = FileSetting.new(:settings => double("settings"), :desc => "eh")
308
+ filesetting = FileSetting.new(:settings => mock("settings"), :desc => "eh")
307
309
  expect(filesetting.munge(':memory:')).to eq(':memory:')
308
310
  end
309
311
  end
@@ -314,7 +316,7 @@ describe Puppet::Settings::FileSetting do
314
316
  end
315
317
 
316
318
  let(:setting) do
317
- settings = double("settings", :value => path)
319
+ settings = mock("settings", :value => path)
318
320
  FileSetting.new(:name => :mysetting, :desc => "creates a file", :settings => settings)
319
321
  end
320
322