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

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

Potentially problematic release.


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

Files changed (748) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -0
  3. data/Gemfile.lock +31 -27
  4. data/Guardfile.example +76 -0
  5. data/LICENSE +189 -4
  6. data/MAINTAINERS +47 -0
  7. data/README.md +3 -3
  8. data/lib/hiera/scope.rb +0 -7
  9. data/lib/puppet.rb +6 -5
  10. data/lib/puppet/application.rb +3 -3
  11. data/lib/puppet/application/cert.rb +2 -2
  12. data/lib/puppet/application/device.rb +83 -109
  13. data/lib/puppet/application/filebucket.rb +1 -10
  14. data/lib/puppet/application/ssl.rb +0 -2
  15. data/lib/puppet/configurer.rb +9 -10
  16. data/lib/puppet/confine/false.rb +1 -7
  17. data/lib/puppet/confine/true.rb +1 -7
  18. data/lib/puppet/defaults.rb +39 -51
  19. data/lib/puppet/forge.rb +1 -4
  20. data/lib/puppet/functions/abs.rb +1 -1
  21. data/lib/puppet/functions/call.rb +1 -2
  22. data/lib/puppet/functions/new.rb +1 -1
  23. data/lib/puppet/indirector/request.rb +15 -26
  24. data/lib/puppet/network/http/connection.rb +12 -32
  25. data/lib/puppet/network/http/factory.rb +0 -5
  26. data/lib/puppet/pal/catalog_compiler.rb +96 -0
  27. data/lib/puppet/pal/compiler.rb +221 -0
  28. data/lib/puppet/pal/function_signature.rb +52 -0
  29. data/lib/puppet/pal/json_catalog_encoder.rb +67 -0
  30. data/lib/puppet/pal/pal_api.rb +15 -0
  31. data/lib/puppet/pal/pal_impl.rb +523 -0
  32. data/lib/puppet/pal/plan_signature.rb +71 -0
  33. data/lib/puppet/pal/script_compiler.rb +71 -0
  34. data/lib/puppet/pal/task_signature.rb +58 -0
  35. data/lib/puppet/parser/functions/generate.rb +7 -6
  36. data/lib/puppet/plugins/configuration.rb +5 -1
  37. data/lib/puppet/pops/evaluator/evaluator_impl.rb +5 -1
  38. data/lib/puppet/pops/evaluator/external_syntax_support.rb +3 -3
  39. data/lib/puppet/pops/issues.rb +0 -4
  40. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +4 -60
  41. data/lib/puppet/pops/model/factory.rb +4 -38
  42. data/lib/puppet/pops/model/pn_transformer.rb +0 -5
  43. data/lib/puppet/pops/parser/egrammar.ra +2 -2
  44. data/lib/puppet/pops/parser/heredoc_support.rb +7 -17
  45. data/lib/puppet/pops/parser/lexer2.rb +1 -6
  46. data/lib/puppet/pops/parser/locator.rb +86 -106
  47. data/lib/puppet/pops/parser/parser_support.rb +2 -11
  48. data/lib/puppet/pops/types/string_converter.rb +7 -2
  49. data/lib/puppet/pops/types/type_mismatch_describer.rb +1 -1
  50. data/lib/puppet/pops/types/types.rb +3 -5
  51. data/lib/puppet/pops/validation/checker4_0.rb +13 -0
  52. data/lib/puppet/provider.rb +2 -1
  53. data/lib/puppet/provider/exec.rb +6 -1
  54. data/lib/puppet/provider/file/windows.rb +1 -49
  55. data/lib/puppet/provider/group/windows_adsi.rb +1 -4
  56. data/lib/puppet/provider/package.rb +0 -2
  57. data/lib/puppet/provider/package/dpkg.rb +2 -15
  58. data/lib/puppet/provider/package/gem.rb +42 -102
  59. data/lib/puppet/provider/package/pip.rb +111 -135
  60. data/lib/puppet/provider/package/pip3.rb +1 -1
  61. data/lib/puppet/provider/package/pkgng.rb +37 -21
  62. data/lib/puppet/provider/package/puppet_gem.rb +1 -1
  63. data/lib/puppet/provider/package/rpm.rb +16 -27
  64. data/lib/puppet/provider/package/windows.rb +1 -5
  65. data/lib/puppet/provider/package/yum.rb +1 -2
  66. data/lib/puppet/provider/service/systemd.rb +17 -0
  67. data/lib/puppet/provider/service/upstart.rb +5 -17
  68. data/lib/puppet/provider/service/windows.rb +8 -3
  69. data/lib/puppet/provider/user/directoryservice.rb +4 -16
  70. data/lib/puppet/provider/user/useradd.rb +13 -16
  71. data/lib/puppet/resource.rb +3 -1
  72. data/lib/puppet/rest/client.rb +83 -0
  73. data/lib/puppet/rest/route.rb +1 -1
  74. data/lib/puppet/settings.rb +5 -10
  75. data/lib/puppet/settings/server_list_setting.rb +0 -9
  76. data/lib/puppet/ssl/host.rb +11 -0
  77. data/lib/puppet/ssl/validator/default_validator.rb +0 -31
  78. data/lib/puppet/syntax_checkers/epp.rb +34 -0
  79. data/lib/puppet/syntax_checkers/pp.rb +34 -0
  80. data/lib/puppet/transaction.rb +7 -12
  81. data/lib/puppet/transaction/event_manager.rb +5 -1
  82. data/lib/puppet/transaction/resource_harness.rb +0 -1
  83. data/lib/puppet/type.rb +6 -0
  84. data/lib/puppet/type/exec.rb +5 -27
  85. data/lib/puppet/type/file/mode.rb +1 -6
  86. data/lib/puppet/type/file/source.rb +1 -0
  87. data/lib/puppet/type/filebucket.rb +8 -12
  88. data/lib/puppet/type/package.rb +11 -44
  89. data/lib/puppet/type/schedule.rb +0 -4
  90. data/lib/puppet/type/service.rb +12 -0
  91. data/lib/puppet/type/user.rb +1 -1
  92. data/lib/puppet/util/command_line.rb +1 -5
  93. data/lib/puppet/util/connection.rb +6 -15
  94. data/lib/puppet/util/http_proxy.rb +2 -3
  95. data/lib/puppet/util/log.rb +2 -7
  96. data/lib/puppet/util/pidlock.rb +1 -15
  97. data/lib/puppet/util/windows/process.rb +5 -73
  98. data/lib/puppet/util/windows/registry.rb +1 -7
  99. data/lib/puppet/util/windows/security.rb +8 -29
  100. data/lib/puppet/util/windows/service.rb +33 -27
  101. data/lib/puppet/util/windows/user.rb +4 -14
  102. data/lib/puppet/version.rb +1 -1
  103. data/lib/puppet_pal.rb +5 -1132
  104. data/locales/ja/puppet.po +297 -363
  105. data/locales/puppet.pot +445 -517
  106. data/man/man5/puppet.conf.5 +12 -20
  107. data/man/man8/puppet-agent.8 +1 -1
  108. data/man/man8/puppet-apply.8 +1 -1
  109. data/man/man8/puppet-catalog.8 +1 -1
  110. data/man/man8/puppet-config.8 +1 -1
  111. data/man/man8/puppet-describe.8 +1 -1
  112. data/man/man8/puppet-device.8 +1 -1
  113. data/man/man8/puppet-doc.8 +1 -1
  114. data/man/man8/puppet-epp.8 +1 -1
  115. data/man/man8/puppet-facts.8 +1 -1
  116. data/man/man8/puppet-filebucket.8 +2 -6
  117. data/man/man8/puppet-generate.8 +1 -1
  118. data/man/man8/puppet-help.8 +1 -1
  119. data/man/man8/puppet-key.8 +1 -1
  120. data/man/man8/puppet-lookup.8 +1 -1
  121. data/man/man8/puppet-man.8 +1 -1
  122. data/man/man8/puppet-module.8 +1 -1
  123. data/man/man8/puppet-node.8 +1 -1
  124. data/man/man8/puppet-parser.8 +1 -1
  125. data/man/man8/puppet-plugin.8 +1 -1
  126. data/man/man8/puppet-report.8 +1 -1
  127. data/man/man8/puppet-resource.8 +1 -1
  128. data/man/man8/puppet-script.8 +1 -1
  129. data/man/man8/puppet-ssl.8 +1 -1
  130. data/man/man8/puppet-status.8 +1 -1
  131. data/man/man8/puppet.8 +2 -2
  132. data/spec/fixtures/unit/provider/package/pkgng/pkg.query +7 -1
  133. data/spec/fixtures/unit/provider/package/pkgng/pkg.query.zsh +1 -0
  134. data/spec/integration/agent/logging_spec.rb +7 -5
  135. data/spec/integration/application/apply_spec.rb +16 -18
  136. data/spec/integration/application/doc_spec.rb +2 -1
  137. data/spec/integration/application/lookup_spec.rb +5 -5
  138. data/spec/integration/configurer_spec.rb +6 -5
  139. data/spec/integration/defaults_spec.rb +6 -5
  140. data/spec/integration/directory_environments_spec.rb +1 -1
  141. data/spec/integration/faces/config_spec.rb +4 -3
  142. data/spec/integration/faces/documentation_spec.rb +1 -0
  143. data/spec/integration/faces/plugin_spec.rb +1 -1
  144. data/spec/integration/file_bucket/file_spec.rb +4 -2
  145. data/spec/integration/file_serving/content_spec.rb +1 -0
  146. data/spec/integration/file_serving/fileset_spec.rb +1 -0
  147. data/spec/integration/file_serving/metadata_spec.rb +1 -0
  148. data/spec/integration/file_serving/terminus_helper_spec.rb +1 -0
  149. data/spec/integration/indirector/catalog/compiler_spec.rb +11 -10
  150. data/spec/integration/indirector/direct_file_server_spec.rb +1 -1
  151. data/spec/integration/indirector/facts/facter_spec.rb +5 -4
  152. data/spec/integration/indirector/file_content/file_server_spec.rb +8 -7
  153. data/spec/integration/indirector/file_metadata/file_server_spec.rb +8 -7
  154. data/spec/integration/network/authconfig_spec.rb +24 -23
  155. data/spec/integration/network/formats_spec.rb +1 -0
  156. data/spec/integration/node/environment_spec.rb +1 -0
  157. data/spec/integration/node/facts_spec.rb +10 -9
  158. data/spec/integration/node_spec.rb +7 -6
  159. data/spec/integration/parser/catalog_spec.rb +5 -1
  160. data/spec/integration/parser/collection_spec.rb +2 -1
  161. data/spec/integration/parser/compiler_spec.rb +6 -6
  162. data/spec/integration/parser/scope_spec.rb +1 -1
  163. data/spec/integration/parser/undef_param_spec.rb +1 -1
  164. data/spec/integration/provider/service/init_spec.rb +5 -4
  165. data/spec/integration/provider/service/systemd_spec.rb +2 -0
  166. data/spec/integration/provider/service/windows_spec.rb +2 -1
  167. data/spec/integration/reference/providers_spec.rb +2 -1
  168. data/spec/integration/reports_spec.rb +2 -1
  169. data/spec/integration/resource/catalog_spec.rb +17 -14
  170. data/spec/integration/resource/type_collection_spec.rb +5 -4
  171. data/spec/integration/ssl/certificate_request_spec.rb +1 -0
  172. data/spec/integration/ssl/host_spec.rb +2 -1
  173. data/spec/integration/ssl/key_spec.rb +1 -0
  174. data/spec/integration/test/test_helper_spec.rb +1 -0
  175. data/spec/integration/transaction/report_spec.rb +11 -6
  176. data/spec/integration/transaction_spec.rb +19 -18
  177. data/spec/integration/type/exec_spec.rb +1 -0
  178. data/spec/integration/type/file_spec.rb +33 -13
  179. data/spec/integration/type/package_spec.rb +24 -20
  180. data/spec/integration/type/tidy_spec.rb +2 -1
  181. data/spec/integration/type_spec.rb +1 -0
  182. data/spec/integration/util/autoload_spec.rb +2 -1
  183. data/spec/integration/util/rdoc/parser_spec.rb +1 -0
  184. data/spec/integration/util/settings_spec.rb +1 -0
  185. data/spec/integration/util/windows/adsi_spec.rb +5 -3
  186. data/spec/integration/util/windows/principal_spec.rb +1 -0
  187. data/spec/integration/util/windows/process_spec.rb +6 -4
  188. data/spec/integration/util/windows/registry_spec.rb +51 -93
  189. data/spec/integration/util/windows/security_spec.rb +4 -2
  190. data/spec/integration/util/windows/user_spec.rb +20 -37
  191. data/spec/integration/util_spec.rb +7 -4
  192. data/spec/lib/puppet_spec/compiler.rb +1 -1
  193. data/spec/lib/puppet_spec/files.rb +1 -0
  194. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +1 -1
  195. data/spec/lib/puppet_spec/scope.rb +2 -1
  196. data/spec/shared_behaviours/all_parsedfile_providers.rb +1 -1
  197. data/spec/shared_behaviours/file_server_terminus.rb +9 -8
  198. data/spec/shared_behaviours/file_serving.rb +8 -6
  199. data/spec/shared_behaviours/file_serving_model.rb +5 -3
  200. data/spec/shared_behaviours/hiera_indirections.rb +4 -3
  201. data/spec/shared_behaviours/iterative_functions.rb +1 -0
  202. data/spec/shared_behaviours/memory_terminus.rb +2 -2
  203. data/spec/shared_examples/rhel_package_provider.rb +70 -112
  204. data/spec/spec_helper.rb +2 -11
  205. data/spec/unit/agent/disabler_spec.rb +5 -4
  206. data/spec/unit/agent/locker_spec.rb +13 -12
  207. data/spec/unit/agent_spec.rb +85 -80
  208. data/spec/unit/application/agent_spec.rb +93 -88
  209. data/spec/unit/application/apply_spec.rb +83 -82
  210. data/spec/unit/application/config_spec.rb +1 -0
  211. data/spec/unit/application/describe_spec.rb +7 -6
  212. data/spec/unit/application/device_spec.rb +419 -395
  213. data/spec/unit/application/doc_spec.rb +46 -44
  214. data/spec/unit/application/face_base_spec.rb +62 -61
  215. data/spec/unit/application/facts_spec.rb +4 -3
  216. data/spec/unit/application/filebucket_spec.rb +74 -66
  217. data/spec/unit/application/indirection_base_spec.rb +6 -8
  218. data/spec/unit/application/lookup_spec.rb +26 -26
  219. data/spec/unit/application/resource_spec.rb +48 -42
  220. data/spec/unit/application/ssl_spec.rb +3 -8
  221. data/spec/unit/application_spec.rb +98 -86
  222. data/spec/unit/capability_spec.rb +6 -6
  223. data/spec/unit/certificate_factory_spec.rb +5 -3
  224. data/spec/unit/configurer/downloader_spec.rb +21 -20
  225. data/spec/unit/configurer/fact_handler_spec.rb +3 -2
  226. data/spec/unit/configurer/plugin_handler_spec.rb +8 -41
  227. data/spec/unit/configurer_spec.rb +198 -194
  228. data/spec/unit/confine/exists_spec.rb +15 -17
  229. data/spec/unit/confine/false_spec.rb +6 -32
  230. data/spec/unit/confine/feature_spec.rb +5 -7
  231. data/spec/unit/confine/true_spec.rb +6 -32
  232. data/spec/unit/confine/variable_spec.rb +15 -14
  233. data/spec/unit/confine_collection_spec.rb +29 -28
  234. data/spec/unit/confine_spec.rb +14 -13
  235. data/spec/unit/confiner_spec.rb +11 -10
  236. data/spec/unit/context/trusted_information_spec.rb +1 -1
  237. data/spec/unit/daemon_spec.rb +36 -35
  238. data/spec/unit/data_providers/function_data_provider_spec.rb +1 -0
  239. data/spec/unit/data_providers/hiera_data_provider_spec.rb +1 -0
  240. data/spec/unit/datatypes_spec.rb +4 -3
  241. data/spec/unit/defaults_spec.rb +27 -18
  242. data/spec/unit/environments_spec.rb +7 -7
  243. data/spec/unit/etc_spec.rb +32 -30
  244. data/spec/unit/external/pson_spec.rb +1 -0
  245. data/spec/unit/face/catalog_spec.rb +1 -0
  246. data/spec/unit/face/config_spec.rb +35 -31
  247. data/spec/unit/face/epp_face_spec.rb +4 -3
  248. data/spec/unit/face/facts_spec.rb +6 -5
  249. data/spec/unit/face/generate_spec.rb +5 -4
  250. data/spec/unit/face/help_spec.rb +8 -7
  251. data/spec/unit/face/key_spec.rb +1 -0
  252. data/spec/unit/face/man_spec.rb +2 -1
  253. data/spec/unit/face/module/install_spec.rb +5 -3
  254. data/spec/unit/face/module/list_spec.rb +12 -2
  255. data/spec/unit/face/module/search_spec.rb +9 -11
  256. data/spec/unit/face/module/uninstall_spec.rb +8 -4
  257. data/spec/unit/face/node_spec.rb +24 -23
  258. data/spec/unit/face/parser_spec.rb +18 -3
  259. data/spec/unit/face/plugin_spec.rb +9 -36
  260. data/spec/unit/face/status_spec.rb +1 -0
  261. data/spec/unit/file_bucket/dipper_spec.rb +20 -24
  262. data/spec/unit/file_bucket/file_spec.rb +2 -0
  263. data/spec/unit/file_serving/base_spec.rb +15 -14
  264. data/spec/unit/file_serving/configuration/parser_spec.rb +28 -27
  265. data/spec/unit/file_serving/configuration_spec.rb +66 -63
  266. data/spec/unit/file_serving/content_spec.rb +11 -10
  267. data/spec/unit/file_serving/fileset_spec.rb +58 -63
  268. data/spec/unit/file_serving/http_metadata_spec.rb +7 -8
  269. data/spec/unit/file_serving/metadata_spec.rb +36 -36
  270. data/spec/unit/file_serving/mount/file_spec.rb +32 -31
  271. data/spec/unit/file_serving/mount/locales_spec.rb +24 -23
  272. data/spec/unit/file_serving/mount/modules_spec.rb +15 -14
  273. data/spec/unit/file_serving/mount/pluginfacts_spec.rb +24 -23
  274. data/spec/unit/file_serving/mount/plugins_spec.rb +24 -23
  275. data/spec/unit/file_serving/mount/tasks_spec.rb +15 -14
  276. data/spec/unit/file_serving/mount_spec.rb +1 -0
  277. data/spec/unit/file_serving/terminus_helper_spec.rb +42 -37
  278. data/spec/unit/file_serving/terminus_selector_spec.rb +13 -12
  279. data/spec/unit/file_system/uniquefile_spec.rb +4 -4
  280. data/spec/unit/file_system_spec.rb +2 -2
  281. data/spec/unit/forge/errors_spec.rb +1 -1
  282. data/spec/unit/forge/forge_spec.rb +16 -17
  283. data/spec/unit/forge/module_release_spec.rb +18 -18
  284. data/spec/unit/forge/repository_spec.rb +30 -29
  285. data/spec/unit/forge_spec.rb +11 -15
  286. data/spec/unit/functions/binary_file_spec.rb +3 -3
  287. data/spec/unit/functions/contain_spec.rb +2 -0
  288. data/spec/unit/functions/defined_spec.rb +1 -0
  289. data/spec/unit/functions/epp_spec.rb +2 -2
  290. data/spec/unit/functions/find_file_spec.rb +7 -7
  291. data/spec/unit/functions/include_spec.rb +4 -0
  292. data/spec/unit/functions/lookup_fixture_spec.rb +1 -0
  293. data/spec/unit/functions/lookup_spec.rb +2 -1
  294. data/spec/unit/functions/module_directory_spec.rb +12 -12
  295. data/spec/unit/functions/new_spec.rb +0 -15
  296. data/spec/unit/functions/require_spec.rb +3 -0
  297. data/spec/unit/functions/shared.rb +8 -5
  298. data/spec/unit/functions/versioncmp_spec.rb +2 -1
  299. data/spec/unit/functions4_spec.rb +10 -9
  300. data/spec/unit/gettext/config_spec.rb +4 -4
  301. data/spec/unit/gettext/module_loading_spec.rb +7 -7
  302. data/spec/unit/graph/rb_tree_map_spec.rb +2 -0
  303. data/spec/unit/graph/relationship_graph_spec.rb +2 -1
  304. data/spec/unit/graph/simple_graph_spec.rb +10 -9
  305. data/spec/unit/hiera/scope_spec.rb +0 -7
  306. data/spec/unit/hiera_puppet_spec.rb +20 -20
  307. data/spec/unit/indirector/catalog/compiler_spec.rb +149 -147
  308. data/spec/unit/indirector/catalog/json_spec.rb +2 -1
  309. data/spec/unit/indirector/catalog/msgpack_spec.rb +1 -0
  310. data/spec/unit/indirector/catalog/rest_spec.rb +1 -0
  311. data/spec/unit/indirector/catalog/store_configs_spec.rb +1 -0
  312. data/spec/unit/indirector/catalog/yaml_spec.rb +1 -0
  313. data/spec/unit/indirector/certificate/file_spec.rb +1 -0
  314. data/spec/unit/indirector/certificate/rest_spec.rb +10 -8
  315. data/spec/unit/indirector/certificate_request/file_spec.rb +1 -0
  316. data/spec/unit/indirector/certificate_request/rest_spec.rb +1 -0
  317. data/spec/unit/indirector/direct_file_server_spec.rb +18 -17
  318. data/spec/unit/indirector/envelope_spec.rb +2 -1
  319. data/spec/unit/indirector/exec_spec.rb +5 -4
  320. data/spec/unit/indirector/face_spec.rb +9 -9
  321. data/spec/unit/indirector/facts/facter_spec.rb +43 -37
  322. data/spec/unit/indirector/facts/network_device_spec.rb +9 -8
  323. data/spec/unit/indirector/facts/rest_spec.rb +8 -7
  324. data/spec/unit/indirector/facts/store_configs_spec.rb +1 -0
  325. data/spec/unit/indirector/facts/yaml_spec.rb +1 -0
  326. data/spec/unit/indirector/file_bucket_file/file_spec.rb +4 -3
  327. data/spec/unit/indirector/file_bucket_file/rest_spec.rb +1 -0
  328. data/spec/unit/indirector/file_bucket_file/selector_spec.rb +5 -4
  329. data/spec/unit/indirector/file_content/file_server_spec.rb +1 -0
  330. data/spec/unit/indirector/file_content/file_spec.rb +1 -0
  331. data/spec/unit/indirector/file_content/rest_spec.rb +1 -0
  332. data/spec/unit/indirector/file_content/selector_spec.rb +1 -0
  333. data/spec/unit/indirector/file_metadata/file_server_spec.rb +1 -0
  334. data/spec/unit/indirector/file_metadata/file_spec.rb +13 -12
  335. data/spec/unit/indirector/file_metadata/rest_spec.rb +1 -0
  336. data/spec/unit/indirector/file_metadata/selector_spec.rb +1 -0
  337. data/spec/unit/indirector/file_server_spec.rb +87 -87
  338. data/spec/unit/indirector/indirection_spec.rb +226 -242
  339. data/spec/unit/indirector/json_spec.rb +9 -7
  340. data/spec/unit/indirector/key/file_spec.rb +22 -21
  341. data/spec/unit/indirector/memory_spec.rb +7 -6
  342. data/spec/unit/indirector/msgpack_spec.rb +9 -7
  343. data/spec/unit/indirector/node/exec_spec.rb +3 -2
  344. data/spec/unit/indirector/node/memory_spec.rb +4 -2
  345. data/spec/unit/indirector/node/msgpack_spec.rb +1 -0
  346. data/spec/unit/indirector/node/plain_spec.rb +4 -2
  347. data/spec/unit/indirector/node/rest_spec.rb +1 -0
  348. data/spec/unit/indirector/node/store_configs_spec.rb +1 -0
  349. data/spec/unit/indirector/node/yaml_spec.rb +1 -0
  350. data/spec/unit/indirector/none_spec.rb +5 -5
  351. data/spec/unit/indirector/plain_spec.rb +8 -7
  352. data/spec/unit/indirector/report/msgpack_spec.rb +1 -0
  353. data/spec/unit/indirector/report/processor_spec.rb +22 -21
  354. data/spec/unit/indirector/report/rest_spec.rb +12 -11
  355. data/spec/unit/indirector/report/yaml_spec.rb +1 -0
  356. data/spec/unit/indirector/request_spec.rb +12 -11
  357. data/spec/unit/indirector/resource/ral_spec.rb +54 -47
  358. data/spec/unit/indirector/resource/store_configs_spec.rb +1 -0
  359. data/spec/unit/indirector/rest_spec.rb +110 -113
  360. data/spec/unit/indirector/ssl_file_spec.rb +65 -64
  361. data/spec/unit/indirector/status/local_spec.rb +1 -0
  362. data/spec/unit/indirector/status/rest_spec.rb +1 -0
  363. data/spec/unit/indirector/store_configs_spec.rb +1 -0
  364. data/spec/unit/indirector/terminus_spec.rb +27 -27
  365. data/spec/unit/indirector/yaml_spec.rb +6 -5
  366. data/spec/unit/indirector_spec.rb +2 -1
  367. data/spec/unit/info_service_spec.rb +1 -1
  368. data/spec/unit/interface/action_builder_spec.rb +1 -0
  369. data/spec/unit/interface/action_manager_spec.rb +1 -0
  370. data/spec/unit/interface/action_spec.rb +3 -2
  371. data/spec/unit/interface/documentation_spec.rb +1 -0
  372. data/spec/unit/interface/face_collection_spec.rb +12 -19
  373. data/spec/unit/interface_spec.rb +3 -3
  374. data/spec/unit/man_spec.rb +4 -3
  375. data/spec/unit/module_spec.rb +51 -46
  376. data/spec/unit/module_tool/applications/installer_spec.rb +11 -10
  377. data/spec/unit/module_tool/applications/searcher_spec.rb +3 -3
  378. data/spec/unit/module_tool/applications/uninstaller_spec.rb +2 -1
  379. data/spec/unit/module_tool/applications/unpacker_spec.rb +13 -13
  380. data/spec/unit/module_tool/applications/upgrader_spec.rb +5 -5
  381. data/spec/unit/module_tool/install_directory_spec.rb +8 -8
  382. data/spec/unit/module_tool/installed_modules_spec.rb +3 -3
  383. data/spec/unit/module_tool/tar/gnu_spec.rb +6 -6
  384. data/spec/unit/module_tool/tar/mini_spec.rb +12 -12
  385. data/spec/unit/module_tool/tar_spec.rb +13 -12
  386. data/spec/unit/module_tool_spec.rb +12 -7
  387. data/spec/unit/network/auth_config_parser_spec.rb +13 -11
  388. data/spec/unit/network/authconfig_spec.rb +18 -17
  389. data/spec/unit/network/authorization_spec.rb +5 -4
  390. data/spec/unit/network/authstore_spec.rb +1 -0
  391. data/spec/unit/network/format_handler_spec.rb +1 -0
  392. data/spec/unit/network/format_spec.rb +10 -9
  393. data/spec/unit/network/format_support_spec.rb +29 -28
  394. data/spec/unit/network/formats_spec.rb +5 -4
  395. data/spec/unit/network/http/api/indirected_routes_spec.rb +29 -24
  396. data/spec/unit/network/http/api/master/v3/authorization_spec.rb +2 -2
  397. data/spec/unit/network/http/api/master/v3/environment_spec.rb +1 -1
  398. data/spec/unit/network/http/api/master/v3/environments_spec.rb +7 -6
  399. data/spec/unit/network/http/api_spec.rb +2 -0
  400. data/spec/unit/network/http/compression_spec.rb +22 -21
  401. data/spec/unit/network/http/connection_spec.rb +121 -30
  402. data/spec/unit/network/http/factory_spec.rb +6 -11
  403. data/spec/unit/network/http/handler_spec.rb +18 -9
  404. data/spec/unit/network/http/nocache_pool_spec.rb +7 -6
  405. data/spec/unit/network/http/pool_spec.rb +29 -28
  406. data/spec/unit/network/http/request_spec.rb +2 -0
  407. data/spec/unit/network/http/response_spec.rb +13 -11
  408. data/spec/unit/network/http/route_spec.rb +1 -0
  409. data/spec/unit/network/http/session_spec.rb +2 -1
  410. data/spec/unit/network/http/site_spec.rb +1 -0
  411. data/spec/unit/network/http_pool_spec.rb +9 -18
  412. data/spec/unit/network/http_spec.rb +1 -0
  413. data/spec/unit/network/resolver_spec.rb +26 -25
  414. data/spec/unit/network/rights_spec.rb +53 -52
  415. data/spec/unit/node/environment_spec.rb +15 -14
  416. data/spec/unit/node/facts_spec.rb +7 -5
  417. data/spec/unit/node_spec.rb +10 -4
  418. data/spec/unit/other/selinux_spec.rb +1 -0
  419. data/spec/unit/parameter/boolean_spec.rb +2 -1
  420. data/spec/unit/parameter/package_options_spec.rb +2 -1
  421. data/spec/unit/parameter/path_spec.rb +1 -0
  422. data/spec/unit/parameter/value_collection_spec.rb +1 -0
  423. data/spec/unit/parameter/value_spec.rb +1 -0
  424. data/spec/unit/parameter_spec.rb +9 -9
  425. data/spec/unit/parser/ast/block_expression_spec.rb +8 -6
  426. data/spec/unit/parser/ast/leaf_spec.rb +21 -20
  427. data/spec/unit/parser/compiler_spec.rb +96 -84
  428. data/spec/unit/parser/environment_compiler_spec.rb +8 -7
  429. data/spec/unit/parser/files_spec.rb +1 -0
  430. data/spec/unit/parser/functions/create_resources_spec.rb +1 -1
  431. data/spec/unit/parser/functions/digest_spec.rb +1 -0
  432. data/spec/unit/parser/functions/fail_spec.rb +2 -1
  433. data/spec/unit/parser/functions/file_spec.rb +14 -13
  434. data/spec/unit/parser/functions/fqdn_rand_spec.rb +6 -5
  435. data/spec/unit/parser/functions/generate_spec.rb +8 -7
  436. data/spec/unit/parser/functions/inline_template_spec.rb +1 -0
  437. data/spec/unit/parser/functions/regsubst_spec.rb +1 -0
  438. data/spec/unit/parser/functions/scanf_spec.rb +1 -0
  439. data/spec/unit/parser/functions/shellquote_spec.rb +1 -0
  440. data/spec/unit/parser/functions/split_spec.rb +1 -0
  441. data/spec/unit/parser/functions/sprintf_spec.rb +1 -0
  442. data/spec/unit/parser/functions/tag_spec.rb +2 -1
  443. data/spec/unit/parser/functions/tagged_spec.rb +3 -2
  444. data/spec/unit/parser/functions/template_spec.rb +13 -13
  445. data/spec/unit/parser/functions/versioncmp_spec.rb +2 -1
  446. data/spec/unit/parser/functions_spec.rb +7 -6
  447. data/spec/unit/parser/relationship_spec.rb +1 -0
  448. data/spec/unit/parser/resource_spec.rb +42 -42
  449. data/spec/unit/parser/scope_spec.rb +35 -39
  450. data/spec/unit/parser/templatewrapper_spec.rb +12 -11
  451. data/spec/unit/parser/type_loader_spec.rb +19 -17
  452. data/spec/unit/pops/adaptable_spec.rb +1 -0
  453. data/spec/unit/pops/benchmark_spec.rb +1 -0
  454. data/spec/unit/pops/evaluator/access_ops_spec.rb +1 -0
  455. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +1 -0
  456. data/spec/unit/pops/evaluator/basic_expressions_spec.rb +1 -0
  457. data/spec/unit/pops/evaluator/collections_ops_spec.rb +1 -0
  458. data/spec/unit/pops/evaluator/comparison_ops_spec.rb +1 -0
  459. data/spec/unit/pops/evaluator/conditionals_spec.rb +1 -0
  460. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +47 -10
  461. data/spec/unit/pops/evaluator/logical_ops_spec.rb +1 -0
  462. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +1 -0
  463. data/spec/unit/pops/evaluator/string_interpolation_spec.rb +1 -0
  464. data/spec/unit/pops/evaluator/variables_spec.rb +1 -0
  465. data/spec/unit/pops/factory_spec.rb +4 -3
  466. data/spec/unit/pops/issues_spec.rb +20 -19
  467. data/spec/unit/pops/loaders/loader_spec.rb +4 -8
  468. data/spec/unit/pops/loaders/loaders_spec.rb +31 -101
  469. data/spec/unit/pops/lookup/context_spec.rb +1 -0
  470. data/spec/unit/pops/lookup/interpolation_spec.rb +3 -2
  471. data/spec/unit/pops/merge_strategy_spec.rb +1 -0
  472. data/spec/unit/pops/migration_spec.rb +5 -3
  473. data/spec/unit/pops/model/model_spec.rb +1 -0
  474. data/spec/unit/pops/model/pn_transformer_spec.rb +1 -4
  475. data/spec/unit/pops/parser/locator_spec.rb +6 -48
  476. data/spec/unit/pops/parser/parse_application_spec.rb +1 -0
  477. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +1 -0
  478. data/spec/unit/pops/parser/parse_calls_spec.rb +1 -0
  479. data/spec/unit/pops/parser/parse_capabilities_spec.rb +1 -0
  480. data/spec/unit/pops/parser/parse_conditionals_spec.rb +1 -0
  481. data/spec/unit/pops/parser/parse_containers_spec.rb +1 -0
  482. data/spec/unit/pops/parser/parse_heredoc_spec.rb +15 -111
  483. data/spec/unit/pops/parser/parse_plan_spec.rb +1 -0
  484. data/spec/unit/pops/parser/parse_resource_spec.rb +1 -0
  485. data/spec/unit/pops/parser/parse_site_spec.rb +1 -0
  486. data/spec/unit/pops/parser/pn_parser_spec.rb +1 -0
  487. data/spec/unit/pops/pn_spec.rb +1 -0
  488. data/spec/unit/pops/resource/resource_type_impl_spec.rb +1 -0
  489. data/spec/unit/pops/serialization/serialization_spec.rb +1 -1
  490. data/spec/unit/pops/serialization/to_from_hr_spec.rb +1 -1
  491. data/spec/unit/pops/types/recursion_guard_spec.rb +10 -10
  492. data/spec/unit/pops/types/ruby_generator_spec.rb +2 -2
  493. data/spec/unit/pops/types/string_converter_spec.rb +5 -1
  494. data/spec/unit/pops/types/type_asserter_spec.rb +2 -2
  495. data/spec/unit/pops/types/type_calculator_spec.rb +30 -30
  496. data/spec/unit/pops/types/type_mismatch_describer_spec.rb +0 -9
  497. data/spec/unit/pops/types/type_parser_spec.rb +13 -13
  498. data/spec/unit/pops/validator/validator_spec.rb +2 -1
  499. data/spec/unit/pops/visitor_spec.rb +1 -0
  500. data/spec/unit/property/boolean_spec.rb +1 -1
  501. data/spec/unit/property/ensure_spec.rb +1 -0
  502. data/spec/unit/property/keyvalue_spec.rb +34 -32
  503. data/spec/unit/property/list_spec.rb +27 -26
  504. data/spec/unit/property/ordered_list_spec.rb +14 -10
  505. data/spec/unit/property_spec.rb +43 -42
  506. data/spec/unit/provider/aix_object_spec.rb +45 -47
  507. data/spec/unit/provider/command_spec.rb +9 -9
  508. data/spec/unit/provider/exec/posix_spec.rb +31 -6
  509. data/spec/unit/provider/exec/shell_spec.rb +1 -0
  510. data/spec/unit/provider/exec/windows_spec.rb +4 -2
  511. data/spec/unit/provider/exec_spec.rb +1 -0
  512. data/spec/unit/provider/file/posix_spec.rb +24 -22
  513. data/spec/unit/provider/file/windows_spec.rb +17 -15
  514. data/spec/unit/provider/group/aix_spec.rb +2 -3
  515. data/spec/unit/provider/group/groupadd_spec.rb +26 -30
  516. data/spec/unit/provider/group/ldap_spec.rb +18 -18
  517. data/spec/unit/provider/group/pw_spec.rb +11 -11
  518. data/spec/unit/provider/group/windows_adsi_spec.rb +53 -59
  519. data/spec/unit/provider/ldap_spec.rb +62 -61
  520. data/spec/unit/provider/nameservice/directoryservice_spec.rb +36 -35
  521. data/spec/unit/provider/nameservice_spec.rb +40 -38
  522. data/spec/unit/provider/package/aix_spec.rb +15 -15
  523. data/spec/unit/provider/package/appdmg_spec.rb +13 -13
  524. data/spec/unit/provider/package/apt_spec.rb +27 -44
  525. data/spec/unit/provider/package/aptitude_spec.rb +7 -6
  526. data/spec/unit/provider/package/aptrpm_spec.rb +12 -7
  527. data/spec/unit/provider/package/base_spec.rb +4 -4
  528. data/spec/unit/provider/package/dnf_spec.rb +20 -18
  529. data/spec/unit/provider/package/dpkg_spec.rb +53 -70
  530. data/spec/unit/provider/package/freebsd_spec.rb +11 -11
  531. data/spec/unit/provider/package/gem_spec.rb +55 -132
  532. data/spec/unit/provider/package/hpux_spec.rb +8 -8
  533. data/spec/unit/provider/package/macports_spec.rb +42 -46
  534. data/spec/unit/provider/package/nim_spec.rb +39 -30
  535. data/spec/unit/provider/package/openbsd_spec.rb +39 -36
  536. data/spec/unit/provider/package/opkg_spec.rb +26 -23
  537. data/spec/unit/provider/package/pacman_spec.rb +118 -97
  538. data/spec/unit/provider/package/pip3_spec.rb +0 -17
  539. data/spec/unit/provider/package/pip_spec.rb +106 -95
  540. data/spec/unit/provider/package/pkg_spec.rb +109 -109
  541. data/spec/unit/provider/package/pkgdmg_spec.rb +63 -65
  542. data/spec/unit/provider/package/pkgin_spec.rb +8 -10
  543. data/spec/unit/provider/package/pkgng_spec.rb +31 -22
  544. data/spec/unit/provider/package/pkgutil_spec.rb +49 -45
  545. data/spec/unit/provider/package/portage_spec.rb +74 -70
  546. data/spec/unit/provider/package/puppet_gem_spec.rb +13 -37
  547. data/spec/unit/provider/package/rpm_spec.rb +76 -154
  548. data/spec/unit/provider/package/sun_spec.rb +18 -16
  549. data/spec/unit/provider/package/tdnf_spec.rb +2 -2
  550. data/spec/unit/provider/package/up2date_spec.rb +4 -2
  551. data/spec/unit/provider/package/urpmi_spec.rb +17 -15
  552. data/spec/unit/provider/package/windows/exe_package_spec.rb +15 -12
  553. data/spec/unit/provider/package/windows/msi_package_spec.rb +22 -19
  554. data/spec/unit/provider/package/windows/package_spec.rb +42 -37
  555. data/spec/unit/provider/package/windows_spec.rb +32 -47
  556. data/spec/unit/provider/package/yum_spec.rb +7 -7
  557. data/spec/unit/provider/package/zypper_spec.rb +87 -87
  558. data/spec/unit/provider/parsedfile_spec.rb +45 -44
  559. data/spec/unit/provider/service/base_spec.rb +5 -4
  560. data/spec/unit/provider/service/bsd_spec.rb +29 -27
  561. data/spec/unit/provider/service/daemontools_spec.rb +35 -35
  562. data/spec/unit/provider/service/debian_spec.rb +38 -38
  563. data/spec/unit/provider/service/freebsd_spec.rb +18 -18
  564. data/spec/unit/provider/service/gentoo_spec.rb +55 -50
  565. data/spec/unit/provider/service/init_spec.rb +52 -53
  566. data/spec/unit/provider/service/launchd_spec.rb +116 -138
  567. data/spec/unit/provider/service/openbsd_spec.rb +50 -50
  568. data/spec/unit/provider/service/openrc_spec.rb +45 -43
  569. data/spec/unit/provider/service/openwrt_spec.rb +31 -26
  570. data/spec/unit/provider/service/rcng_spec.rb +14 -14
  571. data/spec/unit/provider/service/redhat_spec.rb +43 -45
  572. data/spec/unit/provider/service/runit_spec.rb +27 -29
  573. data/spec/unit/provider/service/smf_spec.rb +66 -74
  574. data/spec/unit/provider/service/src_spec.rb +47 -46
  575. data/spec/unit/provider/service/systemd_spec.rb +136 -109
  576. data/spec/unit/provider/service/upstart_spec.rb +93 -77
  577. data/spec/unit/provider/service/windows_spec.rb +41 -33
  578. data/spec/unit/provider/user/aix_spec.rb +31 -31
  579. data/spec/unit/provider/user/directoryservice_spec.rb +114 -146
  580. data/spec/unit/provider/user/hpux_spec.rb +16 -16
  581. data/spec/unit/provider/user/ldap_spec.rb +57 -57
  582. data/spec/unit/provider/user/openbsd_spec.rb +12 -10
  583. data/spec/unit/provider/user/pw_spec.rb +35 -37
  584. data/spec/unit/provider/user/user_role_add_spec.rb +93 -93
  585. data/spec/unit/provider/user/useradd_spec.rb +92 -93
  586. data/spec/unit/provider/user/windows_adsi_spec.rb +60 -59
  587. data/spec/unit/provider_spec.rb +35 -35
  588. data/spec/unit/puppet_pal_2pec.rb +5 -4
  589. data/spec/unit/puppet_pal_spec.rb +1 -0
  590. data/spec/unit/puppet_spec.rb +7 -6
  591. data/spec/unit/relationship_spec.rb +1 -0
  592. data/spec/unit/reports/http_spec.rb +23 -21
  593. data/spec/unit/reports/store_spec.rb +4 -3
  594. data/spec/unit/reports_spec.rb +14 -12
  595. data/spec/unit/resource/capability_finder_spec.rb +17 -15
  596. data/spec/unit/resource/catalog_spec.rb +68 -72
  597. data/spec/unit/resource/status_spec.rb +8 -6
  598. data/spec/unit/resource/type_collection_spec.rb +18 -17
  599. data/spec/unit/resource/type_spec.rb +35 -34
  600. data/spec/unit/resource_spec.rb +63 -36
  601. data/spec/unit/rest/client_spec.rb +135 -0
  602. data/spec/unit/rest/route_spec.rb +6 -6
  603. data/spec/unit/scheduler/job_spec.rb +1 -0
  604. data/spec/unit/scheduler/scheduler_spec.rb +1 -0
  605. data/spec/unit/scheduler/splay_job_spec.rb +2 -1
  606. data/spec/unit/settings/array_setting_spec.rb +1 -1
  607. data/spec/unit/settings/autosign_setting_spec.rb +9 -9
  608. data/spec/unit/settings/certificate_revocation_setting_spec.rb +1 -1
  609. data/spec/unit/settings/config_file_spec.rb +1 -0
  610. data/spec/unit/settings/directory_setting_spec.rb +7 -2
  611. data/spec/unit/settings/duration_setting_spec.rb +2 -1
  612. data/spec/unit/settings/enum_setting_spec.rb +1 -1
  613. data/spec/unit/settings/environment_conf_spec.rb +6 -4
  614. data/spec/unit/settings/file_setting_spec.rb +46 -44
  615. data/spec/unit/settings/path_setting_spec.rb +2 -1
  616. data/spec/unit/settings/priority_setting_spec.rb +2 -1
  617. data/spec/unit/settings/string_setting_spec.rb +15 -14
  618. data/spec/unit/settings/terminus_setting_spec.rb +2 -1
  619. data/spec/unit/settings/value_translator_spec.rb +1 -0
  620. data/spec/unit/settings_spec.rb +224 -253
  621. data/spec/unit/ssl/base_spec.rb +15 -14
  622. data/spec/unit/ssl/certificate_request_spec.rb +58 -62
  623. data/spec/unit/ssl/certificate_spec.rb +25 -23
  624. data/spec/unit/ssl/digest_spec.rb +1 -0
  625. data/spec/unit/ssl/host_spec.rb +149 -166
  626. data/spec/unit/ssl/key_spec.rb +31 -30
  627. data/spec/unit/ssl/validator_spec.rb +39 -40
  628. data/spec/unit/task_spec.rb +45 -44
  629. data/spec/unit/transaction/additional_resource_generator_spec.rb +5 -3
  630. data/spec/unit/transaction/event_manager_spec.rb +88 -87
  631. data/spec/unit/transaction/event_spec.rb +15 -16
  632. data/spec/unit/transaction/persistence_spec.rb +17 -16
  633. data/spec/unit/transaction/report_spec.rb +12 -11
  634. data/spec/unit/transaction/resource_harness_spec.rb +31 -52
  635. data/spec/unit/transaction_spec.rb +87 -140
  636. data/spec/unit/type/component_spec.rb +1 -0
  637. data/spec/unit/type/exec_spec.rb +50 -101
  638. data/spec/unit/type/file/checksum_spec.rb +10 -9
  639. data/spec/unit/type/file/checksum_value_spec.rb +32 -31
  640. data/spec/unit/type/file/content_spec.rb +61 -58
  641. data/spec/unit/type/file/ctime_spec.rb +1 -0
  642. data/spec/unit/type/file/ensure_spec.rb +13 -12
  643. data/spec/unit/type/file/group_spec.rb +7 -5
  644. data/spec/unit/type/file/mode_spec.rb +6 -4
  645. data/spec/unit/type/file/mtime_spec.rb +1 -0
  646. data/spec/unit/type/file/owner_spec.rb +8 -6
  647. data/spec/unit/type/file/selinux_spec.rb +19 -17
  648. data/spec/unit/type/file/source_spec.rb +101 -104
  649. data/spec/unit/type/file/type_spec.rb +1 -0
  650. data/spec/unit/type/file_spec.rb +185 -195
  651. data/spec/unit/type/filebucket_spec.rb +10 -11
  652. data/spec/unit/type/group_spec.rb +8 -6
  653. data/spec/unit/type/noop_metaparam_spec.rb +2 -1
  654. data/spec/unit/type/package/package_settings_spec.rb +23 -44
  655. data/spec/unit/type/package_spec.rb +57 -56
  656. data/spec/unit/type/resources_spec.rb +74 -72
  657. data/spec/unit/type/schedule_spec.rb +26 -24
  658. data/spec/unit/type/service_spec.rb +75 -49
  659. data/spec/unit/type/stage_spec.rb +1 -0
  660. data/spec/unit/type/tidy_spec.rb +62 -61
  661. data/spec/unit/type/user_spec.rb +25 -24
  662. data/spec/unit/type/whit_spec.rb +1 -0
  663. data/spec/unit/type_spec.rb +54 -55
  664. data/spec/unit/util/at_fork_spec.rb +19 -18
  665. data/spec/unit/util/autoload_spec.rb +56 -55
  666. data/spec/unit/util/backups_spec.rb +35 -34
  667. data/spec/unit/util/character_encoding_spec.rb +5 -5
  668. data/spec/unit/util/checksums_spec.rb +39 -38
  669. data/spec/unit/util/colors_spec.rb +2 -1
  670. data/spec/unit/util/command_line_spec.rb +20 -40
  671. data/spec/unit/util/constant_inflector_spec.rb +1 -0
  672. data/spec/unit/util/diff_spec.rb +8 -7
  673. data/spec/unit/util/errors_spec.rb +1 -0
  674. data/spec/unit/util/execution_spec.rb +163 -187
  675. data/spec/unit/util/execution_stub_spec.rb +1 -0
  676. data/spec/unit/util/feature_spec.rb +14 -21
  677. data/spec/unit/util/filetype_spec.rb +49 -49
  678. data/spec/unit/util/http_proxy_spec.rb +12 -12
  679. data/spec/unit/util/inifile_spec.rb +31 -26
  680. data/spec/unit/util/json_lockfile_spec.rb +5 -3
  681. data/spec/unit/util/ldap/connection_spec.rb +25 -26
  682. data/spec/unit/util/ldap/generator_spec.rb +1 -0
  683. data/spec/unit/util/ldap/manager_spec.rb +101 -102
  684. data/spec/unit/util/lockfile_spec.rb +1 -0
  685. data/spec/unit/util/log/destinations_spec.rb +33 -30
  686. data/spec/unit/util/log_spec.rb +34 -48
  687. data/spec/unit/util/logging_spec.rb +72 -58
  688. data/spec/unit/util/metric_spec.rb +1 -0
  689. data/spec/unit/util/monkey_patches_spec.rb +9 -7
  690. data/spec/unit/util/multi_match_spec.rb +1 -0
  691. data/spec/unit/util/network_device/config_spec.rb +1 -0
  692. data/spec/unit/util/network_device/transport/base_spec.rb +6 -5
  693. data/spec/unit/util/network_device_spec.rb +9 -7
  694. data/spec/unit/util/package_spec.rb +1 -0
  695. data/spec/unit/util/pidlock_spec.rb +15 -60
  696. data/spec/unit/util/plist_spec.rb +33 -40
  697. data/spec/unit/util/posix_spec.rb +51 -54
  698. data/spec/unit/util/rdoc_spec.rb +10 -9
  699. data/spec/unit/util/reference_spec.rb +1 -0
  700. data/spec/unit/util/resource_template_spec.rb +20 -20
  701. data/spec/unit/util/retry_action_spec.rb +8 -7
  702. data/spec/unit/util/rubygems_spec.rb +8 -7
  703. data/spec/unit/util/run_mode_spec.rb +4 -3
  704. data/spec/unit/util/selinux_spec.rb +72 -79
  705. data/spec/unit/util/splayer_spec.rb +9 -8
  706. data/spec/unit/util/ssl_spec.rb +1 -0
  707. data/spec/unit/util/storage_spec.rb +23 -22
  708. data/spec/unit/util/suidmanager_spec.rb +54 -45
  709. data/spec/unit/util/symbolic_file_mode_spec.rb +1 -0
  710. data/spec/unit/util/tag_set_spec.rb +1 -0
  711. data/spec/unit/util/tagging_spec.rb +1 -0
  712. data/spec/unit/util/terminal_spec.rb +10 -9
  713. data/spec/unit/util/user_attr_spec.rb +2 -1
  714. data/spec/unit/util/warnings_spec.rb +4 -3
  715. data/spec/unit/util/watcher/periodic_watcher_spec.rb +2 -2
  716. data/spec/unit/util/watcher_spec.rb +21 -51
  717. data/spec/unit/util/windows/access_control_entry_spec.rb +1 -0
  718. data/spec/unit/util/windows/access_control_list_spec.rb +1 -0
  719. data/spec/unit/util/windows/adsi_spec.rb +138 -136
  720. data/spec/unit/util/windows/api_types_spec.rb +1 -0
  721. data/spec/unit/util/windows/eventlog_spec.rb +12 -9
  722. data/spec/unit/util/windows/file_spec.rb +1 -0
  723. data/spec/unit/util/windows/root_certs_spec.rb +1 -0
  724. data/spec/unit/util/windows/security_descriptor_spec.rb +2 -0
  725. data/spec/unit/util/windows/service_spec.rb +103 -100
  726. data/spec/unit/util/windows/sid_spec.rb +13 -11
  727. data/spec/unit/util/windows/string_spec.rb +1 -0
  728. data/spec/unit/util_spec.rb +57 -55
  729. data/spec/unit/version_spec.rb +6 -6
  730. metadata +20 -32
  731. data/CODEOWNERS +0 -30
  732. data/ext/autotest/Rakefile +0 -8
  733. data/ext/autotest/config +0 -43
  734. data/ext/autotest/readme.rst +0 -16
  735. data/lib/puppet/confine/boolean.rb +0 -45
  736. data/lib/puppet/provider/package_targetable.rb +0 -68
  737. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load2.rb +0 -11
  738. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load3.rb +0 -11
  739. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load4.rb +0 -11
  740. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load5.rb +0 -12
  741. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/good_func_load.rb +0 -9
  742. data/spec/fixtures/unit/provider/package/pkgng/pkg.info +0 -7
  743. data/spec/fixtures/unit/provider/package/pkgng/pkg.query_absent +0 -1
  744. data/spec/integration/network/http_pool_spec.rb +0 -120
  745. data/spec/integration/provider/file/windows_spec.rb +0 -162
  746. data/spec/lib/puppet_spec/https.rb +0 -166
  747. data/spec/unit/settings/server_list_setting_spec.rb +0 -21
  748. data/spec/watchr.rb +0 -137
@@ -1,3 +1,4 @@
1
+ #! /usr/bin/env ruby
1
2
  # encoding: UTF-8
2
3
  require 'spec_helper'
3
4
 
@@ -12,7 +13,7 @@ describe Puppet::Type.type(:user) do
12
13
  def flush; end
13
14
  def self.instances; []; end
14
15
  end
15
- allow(described_class).to receive(:defaultprovider).and_return(@provider_class)
16
+ described_class.stubs(:defaultprovider).returns @provider_class
16
17
  end
17
18
 
18
19
  it "should be able to create an instance" do
@@ -64,12 +65,12 @@ describe Puppet::Type.type(:user) do
64
65
  end
65
66
 
66
67
  it "cannot be set to true for a provider that does not manage homedirs" do
67
- allow(provider.class).to receive(:manages_homedir?).and_return(false)
68
+ provider.class.stubs(:manages_homedir?).returns false
68
69
  expect { instance[:managehome] = 'yes' }.to raise_error(Puppet::Error, /can not manage home directories/)
69
70
  end
70
71
 
71
72
  it "can be set to true for a provider that does manage homedirs" do
72
- allow(provider.class).to receive(:manages_homedir?).and_return(true)
73
+ provider.class.stubs(:manages_homedir?).returns true
73
74
  instance[:managehome] = 'yes'
74
75
  end
75
76
  end
@@ -126,8 +127,8 @@ describe Puppet::Type.type(:user) do
126
127
  end
127
128
 
128
129
  it "should set all values to :absent if the user is absent" do
129
- expect(@user.property(:ensure)).to receive(:retrieve).and_return(:absent)
130
- expect(@user.property(:uid)).not_to receive(:retrieve)
130
+ @user.property(:ensure).expects(:retrieve).returns :absent
131
+ @user.property(:uid).expects(:retrieve).never
131
132
  expect(@user.retrieve[@user.property(:uid)]).to eq(:absent)
132
133
  end
133
134
 
@@ -147,13 +148,13 @@ describe Puppet::Type.type(:user) do
147
148
 
148
149
  it "should call :create on the provider when asked to sync to the :present state" do
149
150
  @provider = @provider_class.new(:name => 'foo', :ensure => :absent)
150
- expect(@provider).to receive(:create)
151
+ @provider.expects(:create)
151
152
  described_class.new(:name => 'foo', :ensure => :present, :provider => @provider).parameter(:ensure).sync
152
153
  end
153
154
 
154
155
  it "should call :delete on the provider when asked to sync to the :absent state" do
155
156
  @provider = @provider_class.new(:name => 'foo', :ensure => :present)
156
- expect(@provider).to receive(:delete)
157
+ @provider.expects(:delete)
157
158
  described_class.new(:name => 'foo', :ensure => :absent, :provider => @provider).parameter(:ensure).sync
158
159
  end
159
160
 
@@ -211,27 +212,27 @@ describe Puppet::Type.type(:user) do
211
212
  end
212
213
 
213
214
  it "should return true if any of the specified groups are equal to the current integer" do
214
- expect(Puppet::Util).to receive(:gid).with("foo").and_return(300)
215
- expect(Puppet::Util).to receive(:gid).with("bar").and_return(500)
215
+ Puppet::Util.expects(:gid).with("foo").returns 300
216
+ Puppet::Util.expects(:gid).with("bar").returns 500
216
217
  expect(described_class.new(:name => 'baz', :gid => [ 'foo', 'bar' ]).parameter(:gid)).to be_safe_insync(500)
217
218
  end
218
219
 
219
220
  it "should return false if none of the specified groups are equal to the current integer" do
220
- expect(Puppet::Util).to receive(:gid).with("foo").and_return(300)
221
- expect(Puppet::Util).to receive(:gid).with("bar").and_return(500)
221
+ Puppet::Util.expects(:gid).with("foo").returns 300
222
+ Puppet::Util.expects(:gid).with("bar").returns 500
222
223
  expect(described_class.new(:name => 'baz', :gid => [ 'foo', 'bar' ]).parameter(:gid)).to_not be_safe_insync(700)
223
224
  end
224
225
  end
225
226
 
226
227
  describe "when syncing" do
227
228
  it "should use the first found, specified group as the desired value and send it to the provider" do
228
- expect(Puppet::Util).to receive(:gid).with("foo").and_return(nil)
229
- expect(Puppet::Util).to receive(:gid).with("bar").and_return(500)
229
+ Puppet::Util.expects(:gid).with("foo").returns nil
230
+ Puppet::Util.expects(:gid).with("bar").returns 500
230
231
 
231
232
  @provider = @provider_class.new(:name => 'foo')
232
233
  resource = described_class.new(:name => 'foo', :provider => @provider, :gid => [ 'foo', 'bar' ])
233
234
 
234
- expect(@provider).to receive(:gid=).with(500)
235
+ @provider.expects(:gid=).with 500
235
236
  resource.parameter(:gid).sync
236
237
  end
237
238
  end
@@ -256,6 +257,7 @@ describe Puppet::Type.type(:user) do
256
257
  end
257
258
 
258
259
  describe "when testing is in sync" do
260
+
259
261
  before :each do
260
262
  # the useradd provider uses a single string to represent groups and so does Puppet::Property::List when converting to should values
261
263
  @provider = @provider_class.new(:name => 'foo', :groups => 'a,b,e,f')
@@ -364,7 +366,7 @@ describe Puppet::Type.type(:user) do
364
366
  # useradd subclasses nameservice and thus inherits #comments_insync?
365
367
  user = described_class.new(:name => 'foo', :comment => @value, :provider => :useradd)
366
368
  comment_property = user.properties.find {|p| p.name == :comment}
367
- expect(user.provider).to receive(:comments_insync?)
369
+ user.provider.expects(:comments_insync?)
368
370
  comment_property.insync?('bar')
369
371
  end
370
372
 
@@ -372,7 +374,6 @@ describe Puppet::Type.type(:user) do
372
374
  let(:is) { "\u2603" }
373
375
  let(:should) { "\u06FF" }
374
376
  let(:comment_property) { @user.properties.find { |p| p.name == :comment } }
375
-
376
377
  context "given is and should strings with incompatible encoding" do
377
378
  it "should return a formatted string" do
378
379
  is.force_encoding(Encoding::ASCII_8BIT)
@@ -408,7 +409,7 @@ describe Puppet::Type.type(:user) do
408
409
  Puppet::Resource::Catalog.new :testing do |conf|
409
410
  [testuser, testrole].each { |resource| conf.add_resource resource }
410
411
  end
411
- allow(Puppet::Type::User::ProviderDirectoryservice).to receive(:get_macosx_version_major).and_return("10.5")
412
+ Puppet::Type::User::ProviderDirectoryservice.stubs(:get_macosx_version_major).returns "10.5"
412
413
 
413
414
  rel = testuser.autorequire[0]
414
415
  expect(rel.source.ref).to eq(testrole.ref)
@@ -430,15 +431,15 @@ describe Puppet::Type.type(:user) do
430
431
  def check_valid_shell; end
431
432
  end
432
433
 
433
- allow(described_class).to receive(:defaultprovider).and_return(@shell_provider_class)
434
+ described_class.stubs(:defaultprovider).returns @shell_provider_class
434
435
  end
435
436
 
436
437
  it "should call :check_valid_shell on the provider when changing shell value" do
437
438
  @provider = @shell_provider_class.new(:name => 'foo', :shell => '/bin/bash', :ensure => :present)
438
- expect(@provider).to receive(:check_valid_shell)
439
+ @provider.expects(:check_valid_shell)
439
440
  resource = described_class.new(:name => 'foo', :shell => '/bin/zsh', :provider => @provider)
440
- allow(Puppet::Util::Storage).to receive(:load)
441
- allow(Puppet::Util::Storage).to receive(:store)
441
+ Puppet::Util::Storage.stubs(:load)
442
+ Puppet::Util::Storage.stubs(:store)
442
443
  catalog = Puppet::Resource::Catalog.new
443
444
  catalog.add_resource resource
444
445
  catalog.apply
@@ -446,10 +447,10 @@ describe Puppet::Type.type(:user) do
446
447
 
447
448
  it "should call :check_valid_shell on the provider when changing ensure from present to absent" do
448
449
  @provider = @shell_provider_class.new(:name => 'foo', :shell => '/bin/bash', :ensure => :absent)
449
- expect(@provider).to receive(:check_valid_shell)
450
+ @provider.expects(:check_valid_shell)
450
451
  resource = described_class.new(:name => 'foo', :shell => '/bin/zsh', :provider => @provider)
451
- allow(Puppet::Util::Storage).to receive(:load)
452
- allow(Puppet::Util::Storage).to receive(:store)
452
+ Puppet::Util::Storage.stubs(:load)
453
+ Puppet::Util::Storage.stubs(:store)
453
454
  catalog = Puppet::Resource::Catalog.new
454
455
  catalog.add_resource resource
455
456
  catalog.apply
@@ -1,3 +1,4 @@
1
+ #! /usr/bin/env ruby
1
2
  require 'spec_helper'
2
3
 
3
4
  whit = Puppet::Type.type(:whit)
@@ -1,3 +1,4 @@
1
+ #! /usr/bin/env ruby
1
2
  require 'spec_helper'
2
3
  require 'puppet_spec/compiler'
3
4
  require 'puppet/property/boolean'
@@ -137,18 +138,18 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
137
138
 
138
139
  it "should delegate to the tagging module when tags are added" do
139
140
  resource = klass.new(:name => "foo")
140
- allow(resource).to receive(:tag).with(resource_type)
141
+ resource.stubs(:tag).with(resource_type)
141
142
 
142
- expect(resource).to receive(:tag).with(:tag1, :tag2)
143
+ resource.expects(:tag).with(:tag1, :tag2)
143
144
 
144
145
  resource.tags = [:tag1,:tag2]
145
146
  end
146
147
 
147
148
  it "should add the current type as tag" do
148
149
  resource = klass.new(:name => "foo")
149
- allow(resource).to receive(:tag)
150
+ resource.stubs(:tag)
150
151
 
151
- expect(resource).to receive(:tag).with(resource_type)
152
+ resource.expects(:tag).with(resource_type)
152
153
 
153
154
  resource.tags = [:tag1,:tag2]
154
155
  end
@@ -254,7 +255,7 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
254
255
 
255
256
  {:file => "/my/file", :line => 50}.each do |attr, value|
256
257
  it "should set the #{attr}" do
257
- allow(@resource).to receive(attr).and_return(value)
258
+ @resource.stubs(attr).returns value
258
259
  expect(@resource.event.send(attr)).to eq(value)
259
260
  end
260
261
  end
@@ -393,8 +394,8 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
393
394
  basic = type.provide(:basic) {}
394
395
  greater = type.provide(:greater) {}
395
396
 
396
- allow(basic).to receive(:specificity).and_return(1)
397
- allow(greater).to receive(:specificity).and_return(2)
397
+ basic.stubs(:specificity).returns 1
398
+ greater.stubs(:specificity).returns 2
398
399
 
399
400
  expect(type.defaultprovider).to equal(greater)
400
401
  end
@@ -602,7 +603,7 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
602
603
  resource = Puppet::Resource.new(resource_type, "/foo",
603
604
  :parameters => {:atboot => :yes, :fstype => "boo", :remounts => true},
604
605
  :sensitive_parameters => [:remounts])
605
- expect_any_instance_of(klass).to receive(:warning).with(/Unable to mark 'remounts' as sensitive: remounts is a parameter and not a property/)
606
+ klass.any_instance.expects(:warning).with(regexp_matches(/Unable to mark 'remounts' as sensitive: remounts is a parameter and not a property/))
606
607
  klass.new(resource)
607
608
  end
608
609
 
@@ -610,7 +611,7 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
610
611
  resource = Puppet::Resource.new(resource_type, "/foo",
611
612
  :parameters => {:atboot => :yes, :fstype => "boo"},
612
613
  :sensitive_parameters => [:device])
613
- expect_any_instance_of(klass).to receive(:warning).with("Unable to mark 'device' as sensitive: the property itself was not assigned a value.")
614
+ klass.any_instance.expects(:warning).with("Unable to mark 'device' as sensitive: the property itself was not assigned a value.")
614
615
  klass.new(resource)
615
616
  end
616
617
 
@@ -618,7 +619,7 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
618
619
  resource = Puppet::Resource.new(resource_type, "/foo",
619
620
  :parameters => {:atboot => :yes, :fstype => "boo"},
620
621
  :sensitive_parameters => [:content])
621
- expect_any_instance_of(klass).to receive(:err).with("Unable to mark 'content' as sensitive: the property itself is not defined on #{resource_type}.")
622
+ klass.any_instance.expects(:err).with("Unable to mark 'content' as sensitive: the property itself is not defined on #{resource_type}.")
622
623
  klass.new(resource)
623
624
  end
624
625
  end
@@ -672,8 +673,8 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
672
673
  end
673
674
 
674
675
  it "should include the file/line in the error" do
675
- allow_any_instance_of(Puppet::Type.type(:file)).to receive(:file).and_return("example.pp")
676
- allow_any_instance_of(Puppet::Type.type(:file)).to receive(:line).and_return(42)
676
+ Puppet::Type.type(:file).any_instance.stubs(:file).returns("example.pp")
677
+ Puppet::Type.type(:file).any_instance.stubs(:line).returns(42)
677
678
  expect { Puppet::Type.type(:file).new(:title => "/foo", :source => "unknown:///") }.to raise_error(Puppet::ResourceError, /\(file: example\.pp, line: 42\)/)
678
679
  end
679
680
  end
@@ -689,15 +690,15 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
689
690
  end
690
691
 
691
692
  it "should set the attributes in the order returned by the class's :allattrs method" do
692
- allow(klass).to receive(:allattrs).and_return([:name, :atboot, :noop])
693
+ klass.stubs(:allattrs).returns([:name, :atboot, :noop])
693
694
  resource = Puppet::Resource.new(resource_type, "/foo", :parameters => {:name => "myname", :atboot => :yes, :noop => "whatever"})
694
695
 
695
696
  set = []
696
697
 
697
- allow_any_instance_of(klass).to receive(:newattr) do |_, param, hash|
698
+ klass.any_instance.stubs(:newattr).with do |param, hash|
698
699
  set << param
699
- double("a property", :value= => nil, :default => nil, :name => nil)
700
- end
700
+ true
701
+ end.returns(stub_everything("a property"))
701
702
 
702
703
  klass.new(resource)
703
704
 
@@ -706,15 +707,15 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
706
707
  end
707
708
 
708
709
  it "should always set the name and then default provider before anything else" do
709
- allow(klass).to receive(:allattrs).and_return([:provider, :name, :atboot])
710
+ klass.stubs(:allattrs).returns([:provider, :name, :atboot])
710
711
  resource = Puppet::Resource.new(resource_type, "/foo", :parameters => {:name => "myname", :atboot => :yes})
711
712
 
712
713
  set = []
713
714
 
714
- allow_any_instance_of(klass).to receive(:newattr) do |_, param, hash|
715
+ klass.any_instance.stubs(:newattr).with do |param, hash|
715
716
  set << param
716
- double("a property", :value= => nil, :default => nil, :name => nil)
717
- end
717
+ true
718
+ end.returns(stub_everything("a property"))
718
719
 
719
720
  klass.new(resource)
720
721
  expect(set[0]).to eq(:name)
@@ -727,10 +728,10 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
727
728
  # on jruby. Thus, we stub it out here since we don't care to do any assertions on it.
728
729
  # This is only an issue if you're running these unit tests on a platform where upstart
729
730
  # is a default provider, like Ubuntu trusty.
730
- allow(Puppet::Util::Execution).to receive(:execute)
731
+ Puppet::Util::Execution.stubs(:execute)
731
732
 
732
733
  defaults = []
733
- allow_any_instance_of(Puppet::Type.type(:service)).to receive(:set_default) { |_, value| defaults << value }
734
+ Puppet::Type.type(:service).any_instance.stubs(:set_default).with { |value| defaults << value; true }
734
735
 
735
736
  Puppet::Type.type(:service).new :name => "whatever"
736
737
 
@@ -747,7 +748,7 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
747
748
 
748
749
  context "when validating the resource" do
749
750
  it "should call the type's validate method if present" do
750
- expect_any_instance_of(Puppet::Type.type(:file)).to receive(:validate)
751
+ Puppet::Type.type(:file).any_instance.expects(:validate)
751
752
  Puppet::Type.type(:file).new(:name => make_absolute('/foo'))
752
753
  end
753
754
 
@@ -762,8 +763,8 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
762
763
  end
763
764
 
764
765
  it "should raise Puppet::ResourceError with manifest file and line on failure" do
765
- allow_any_instance_of(Puppet::Type.type(:file)).to receive(:file).and_return("example.pp")
766
- allow_any_instance_of(Puppet::Type.type(:file)).to receive(:line).and_return(42)
766
+ Puppet::Type.type(:file).any_instance.stubs(:file).returns("example.pp")
767
+ Puppet::Type.type(:file).any_instance.stubs(:line).returns(42)
767
768
  expect do
768
769
  Puppet::Type.type(:file).new(
769
770
  :name => make_absolute('/foo'),
@@ -855,7 +856,7 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
855
856
  end
856
857
 
857
858
  it "should use the Resource Type's namevar to determine how to find the name in the hash" do
858
- allow(@type).to receive(:key_attributes).and_return([ :myname ])
859
+ @type.stubs(:key_attributes).returns([ :myname ])
859
860
 
860
861
  expect(@type.hash2resource(:myname => "foo").title).to eq("foo")
861
862
  end
@@ -889,26 +890,26 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
889
890
  describe "when retrieving current property values" do
890
891
  before do
891
892
  @resource = klass.new(:name => "foo", :fstype => "bar", :pass => 1, :ensure => :present)
892
- allow(@resource.property(:ensure)).to receive(:retrieve).and_return(:absent)
893
+ @resource.property(:ensure).stubs(:retrieve).returns :absent
893
894
  end
894
895
 
895
896
  it "should always retrieve the ensure value by default" do
896
897
  @ensurable_resource = Puppet::Type.type(:file).new(:name => "/not/existent", :mode => "0644")
897
- allow(Puppet::Type::File::Ensure).to receive(:ensure).and_return(:absent)
898
- expect_any_instance_of(Puppet::Type::File::Ensure).to receive(:retrieve).once
898
+ Puppet::Type::File::Ensure.stubs(:ensure).returns :absent
899
+ Puppet::Type::File::Ensure.any_instance.expects(:retrieve).once
899
900
  @ensurable_resource.retrieve_resource
900
901
  end
901
902
 
902
903
  it "should not retrieve the ensure value if specified" do
903
904
  @ensurable_resource = Puppet::Type.type(:service).new(:name => "DummyService", :enable => true)
904
- @ensurable_resource.properties.each { |prop| allow(prop).to receive(:retrieve) }
905
- expect_any_instance_of(Puppet::Type::Service::Ensure).not_to receive(:retrieve)
905
+ @ensurable_resource.properties.each { |prop| prop.stubs(:retrieve) }
906
+ Puppet::Type::Service::Ensure.any_instance.expects(:retrieve).never
906
907
  @ensurable_resource.retrieve_resource
907
908
  end
908
909
 
909
910
  it "should fail if its provider is unsuitable" do
910
911
  @resource = klass.new(:name => "foo", :fstype => "bar", :pass => 1, :ensure => :present)
911
- expect(@resource.provider.class).to receive(:suitable?).and_return(false)
912
+ @resource.provider.class.expects(:suitable?).returns false
912
913
  expect { @resource.retrieve_resource }.to raise_error(Puppet::Error)
913
914
  end
914
915
 
@@ -935,14 +936,14 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
935
936
  end
936
937
 
937
938
  it "should not call retrieve on non-ensure properties if the resource is absent and should consider the property absent" do
938
- expect(@resource.property(:ensure)).to receive(:retrieve).and_return(:absent)
939
- expect(@resource.property(:fstype)).not_to receive(:retrieve)
939
+ @resource.property(:ensure).expects(:retrieve).returns :absent
940
+ @resource.property(:fstype).expects(:retrieve).never
940
941
  expect(@resource.retrieve_resource[:fstype]).to eq(:absent)
941
942
  end
942
943
 
943
944
  it "should include the result of retrieving each property's current value if the resource is present" do
944
- expect(@resource.property(:ensure)).to receive(:retrieve).and_return(:present)
945
- expect(@resource.property(:fstype)).to receive(:retrieve).and_return(15)
945
+ @resource.property(:ensure).expects(:retrieve).returns :present
946
+ @resource.property(:fstype).expects(:retrieve).returns 15
946
947
  @resource.retrieve_resource[:fstype] == 15
947
948
  end
948
949
  end
@@ -961,8 +962,8 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
961
962
  expect(type_resource.parameters[:remounts]).not_to be_a(Puppet::Property)
962
963
  expect(type_resource.parameters[:fstype].is_a?(Puppet::Property)).to be_truthy
963
964
 
964
- expect(type_resource.property(:ensure)).to receive(:retrieve).and_return(:present)
965
- expect(type_resource.property(:fstype)).to receive(:retrieve).and_return(15)
965
+ type_resource.property(:ensure).expects(:retrieve).returns :present
966
+ type_resource.property(:fstype).expects(:retrieve).returns 15
966
967
 
967
968
  resource = type_resource.to_resource
968
969
 
@@ -977,7 +978,7 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
977
978
  describe "when there's one namevar" do
978
979
  before do
979
980
  @type_class = Puppet::Type.type(:notify)
980
- allow(@type_class).to receive(:key_attributes).and_return([:one])
981
+ @type_class.stubs(:key_attributes).returns([:one])
981
982
  end
982
983
 
983
984
  it "should have a default pattern for when there's one namevar" do
@@ -1032,7 +1033,7 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
1032
1033
  let(:provider) { resource.provider }
1033
1034
 
1034
1035
  it "should be suitable if its type doesn't use providers" do
1035
- allow(type).to receive(:paramclass).with(:provider).and_return(nil)
1036
+ type.stubs(:paramclass).with(:provider).returns nil
1036
1037
  expect(resource).to be_suitable
1037
1038
  end
1038
1039
 
@@ -1041,18 +1042,18 @@ describe Puppet::Type, :unless => Puppet::Util::Platform.windows? do
1041
1042
  end
1042
1043
 
1043
1044
  it "should not be suitable if it has a provider which is not suitable" do
1044
- allow(provider.class).to receive(:suitable?).and_return(false)
1045
+ provider.class.stubs(:suitable?).returns false
1045
1046
  expect(resource).not_to be_suitable
1046
1047
  end
1047
1048
 
1048
1049
  it "should be suitable if it does not have a provider and there is a default provider" do
1049
- allow(resource).to receive(:provider).and_return(nil)
1050
+ resource.stubs(:provider).returns nil
1050
1051
  expect(resource).to be_suitable
1051
1052
  end
1052
1053
 
1053
1054
  it "should not be suitable if it doesn't have a provider and there is not default provider" do
1054
- allow(resource).to receive(:provider).and_return(nil)
1055
- allow(type).to receive(:defaultprovider).and_return(nil)
1055
+ resource.stubs(:provider).returns nil
1056
+ type.stubs(:defaultprovider).returns nil
1056
1057
 
1057
1058
  expect(resource).not_to be_suitable
1058
1059
  end
@@ -1184,29 +1185,27 @@ describe Puppet::Type::RelationshipMetaparam do
1184
1185
  end
1185
1186
 
1186
1187
  it "should be able to validate relationships" do
1187
- expect(Puppet::Type.metaparamclass(:require).new(:resource => double("resource"))).to respond_to(:validate_relationship)
1188
+ expect(Puppet::Type.metaparamclass(:require).new(:resource => mock("resource"))).to respond_to(:validate_relationship)
1188
1189
  end
1189
1190
 
1190
1191
  describe 'if any specified resource is not in the catalog' do
1191
- let(:catalog) { double('catalog') }
1192
+ let(:catalog) { mock 'catalog' }
1192
1193
 
1193
1194
  let(:resource) do
1194
- double(
1195
- 'resource',
1195
+ stub 'resource',
1196
1196
  :catalog => catalog,
1197
1197
  :ref => 'resource',
1198
1198
  :line= => nil,
1199
1199
  :line => nil,
1200
1200
  :file= => nil,
1201
1201
  :file => nil
1202
- )
1203
1202
  end
1204
1203
 
1205
1204
  let(:param) { Puppet::Type.metaparamclass(:require).new(:resource => resource, :value => %w{Foo[bar] Class[test]}) }
1206
1205
 
1207
1206
  before do
1208
- expect(catalog).to receive(:resource).with("Foo[bar]").and_return("something")
1209
- expect(catalog).to receive(:resource).with("Class[Test]").and_return(nil)
1207
+ catalog.expects(:resource).with("Foo[bar]").returns "something"
1208
+ catalog.expects(:resource).with("Class[Test]").returns nil
1210
1209
  end
1211
1210
 
1212
1211
  describe "and the resource doesn't have a file or line number" do
@@ -1220,8 +1219,8 @@ describe Puppet::Type::RelationshipMetaparam do
1220
1219
 
1221
1220
  describe "and the resource has a file or line number" do
1222
1221
  before do
1223
- allow(resource).to receive(:line).and_return('42')
1224
- allow(resource).to receive(:file).and_return('/hitchhikers/guide/to/the/galaxy')
1222
+ resource.stubs(:line).returns '42'
1223
+ resource.stubs(:file).returns '/hitchhikers/guide/to/the/galaxy'
1225
1224
  end
1226
1225
 
1227
1226
  it "raises an error with context" do
@@ -1281,8 +1280,8 @@ describe Puppet::Type.metaparamclass(:audit) do
1281
1280
 
1282
1281
  describe "when generating the uniqueness key" do
1283
1282
  it "should include all of the key_attributes in alphabetical order by attribute name" do
1284
- allow(Puppet::Type.type(:file)).to receive(:key_attributes).and_return([:path, :mode, :owner])
1285
- allow(Puppet::Type.type(:file)).to receive(:title_patterns).and_return(
1283
+ Puppet::Type.type(:file).stubs(:key_attributes).returns [:path, :mode, :owner]
1284
+ Puppet::Type.type(:file).stubs(:title_patterns).returns(
1286
1285
  [ [ /(.*)/, [ [:path, lambda{|x| x} ] ] ] ]
1287
1286
  )
1288
1287
  myfile = make_absolute('/my/file')