puppet 8.4.0-universal-darwin → 8.5.1-universal-darwin

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1872) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +4 -1
  3. data/Gemfile.lock +78 -61
  4. data/ext/project_data.yaml +4 -4
  5. data/ext/windows/service/daemon.rb +8 -8
  6. data/lib/hiera/puppet_function.rb +4 -4
  7. data/lib/hiera/scope.rb +5 -4
  8. data/lib/hiera_puppet.rb +0 -1
  9. data/lib/puppet/agent/disabler.rb +2 -2
  10. data/lib/puppet/agent.rb +3 -3
  11. data/lib/puppet/application/agent.rb +80 -78
  12. data/lib/puppet/application/apply.rb +45 -45
  13. data/lib/puppet/application/describe.rb +21 -21
  14. data/lib/puppet/application/device.rb +49 -49
  15. data/lib/puppet/application/doc.rb +27 -27
  16. data/lib/puppet/application/face_base.rb +2 -3
  17. data/lib/puppet/application/filebucket.rb +58 -58
  18. data/lib/puppet/application/generate.rb +1 -1
  19. data/lib/puppet/application/lookup.rb +44 -44
  20. data/lib/puppet/application/resource.rb +34 -34
  21. data/lib/puppet/application/script.rb +29 -29
  22. data/lib/puppet/application/ssl.rb +18 -18
  23. data/lib/puppet/application.rb +7 -7
  24. data/lib/puppet/application_support.rb +1 -1
  25. data/lib/puppet/compilable_resource_type.rb +2 -2
  26. data/lib/puppet/concurrent/lock.rb +0 -1
  27. data/lib/puppet/configurer/fact_handler.rb +3 -3
  28. data/lib/puppet/configurer.rb +8 -7
  29. data/lib/puppet/confine/any.rb +1 -1
  30. data/lib/puppet/confine/boolean.rb +1 -1
  31. data/lib/puppet/confine/exists.rb +1 -1
  32. data/lib/puppet/confine/false.rb +1 -1
  33. data/lib/puppet/confine/feature.rb +1 -2
  34. data/lib/puppet/confine/true.rb +1 -1
  35. data/lib/puppet/confine/variable.rb +1 -1
  36. data/lib/puppet/confine_collection.rb +1 -1
  37. data/lib/puppet/context/trusted_information.rb +4 -4
  38. data/lib/puppet/daemon.rb +6 -6
  39. data/lib/puppet/datatypes.rb +3 -2
  40. data/lib/puppet/defaults.rb +12 -12
  41. data/lib/puppet/environments.rb +7 -7
  42. data/lib/puppet/error.rb +7 -6
  43. data/lib/puppet/etc.rb +3 -2
  44. data/lib/puppet/external/dot.rb +25 -25
  45. data/lib/puppet/face/catalog/select.rb +1 -1
  46. data/lib/puppet/face/config.rb +1 -1
  47. data/lib/puppet/face/epp.rb +9 -9
  48. data/lib/puppet/face/facts.rb +2 -2
  49. data/lib/puppet/face/generate.rb +1 -1
  50. data/lib/puppet/face/help.rb +17 -21
  51. data/lib/puppet/face/module/install.rb +4 -3
  52. data/lib/puppet/face/module/list.rb +7 -8
  53. data/lib/puppet/face/module/upgrade.rb +4 -3
  54. data/lib/puppet/face/parser.rb +6 -6
  55. data/lib/puppet/feature/base.rb +2 -2
  56. data/lib/puppet/feature/libuser.rb +2 -2
  57. data/lib/puppet/ffi/posix/constants.rb +1 -1
  58. data/lib/puppet/ffi/windows/functions.rb +1 -1
  59. data/lib/puppet/file_bucket/dipper.rb +8 -6
  60. data/lib/puppet/file_bucket/file.rb +2 -2
  61. data/lib/puppet/file_serving/configuration.rb +1 -1
  62. data/lib/puppet/file_serving/fileset.rb +2 -2
  63. data/lib/puppet/file_serving/http_metadata.rb +1 -1
  64. data/lib/puppet/file_serving/metadata.rb +4 -5
  65. data/lib/puppet/file_serving/terminus_selector.rb +1 -1
  66. data/lib/puppet/file_system/file_impl.rb +4 -4
  67. data/lib/puppet/file_system/uniquefile.rb +4 -4
  68. data/lib/puppet/file_system/windows.rb +7 -7
  69. data/lib/puppet/file_system.rb +1 -1
  70. data/lib/puppet/forge/cache.rb +1 -1
  71. data/lib/puppet/forge/repository.rb +1 -1
  72. data/lib/puppet/forge.rb +3 -3
  73. data/lib/puppet/functions/abs.rb +4 -3
  74. data/lib/puppet/functions/all.rb +1 -1
  75. data/lib/puppet/functions/any.rb +1 -1
  76. data/lib/puppet/functions/assert_type.rb +3 -2
  77. data/lib/puppet/functions/break.rb +1 -1
  78. data/lib/puppet/functions/camelcase.rb +2 -2
  79. data/lib/puppet/functions/capitalize.rb +2 -2
  80. data/lib/puppet/functions/chomp.rb +1 -1
  81. data/lib/puppet/functions/chop.rb +1 -1
  82. data/lib/puppet/functions/compare.rb +1 -1
  83. data/lib/puppet/functions/contain.rb +5 -4
  84. data/lib/puppet/functions/dig.rb +3 -3
  85. data/lib/puppet/functions/downcase.rb +2 -2
  86. data/lib/puppet/functions/eyaml_lookup_key.rb +1 -1
  87. data/lib/puppet/functions/filter.rb +6 -7
  88. data/lib/puppet/functions/get.rb +1 -1
  89. data/lib/puppet/functions/getvar.rb +4 -4
  90. data/lib/puppet/functions/group_by.rb +2 -2
  91. data/lib/puppet/functions/include.rb +3 -2
  92. data/lib/puppet/functions/index.rb +1 -1
  93. data/lib/puppet/functions/join.rb +1 -1
  94. data/lib/puppet/functions/lookup.rb +2 -2
  95. data/lib/puppet/functions/lstrip.rb +1 -1
  96. data/lib/puppet/functions/map.rb +2 -2
  97. data/lib/puppet/functions/match.rb +4 -4
  98. data/lib/puppet/functions/max.rb +2 -2
  99. data/lib/puppet/functions/min.rb +2 -2
  100. data/lib/puppet/functions/next.rb +1 -1
  101. data/lib/puppet/functions/require.rb +3 -2
  102. data/lib/puppet/functions/rstrip.rb +1 -1
  103. data/lib/puppet/functions/slice.rb +1 -1
  104. data/lib/puppet/functions/strftime.rb +1 -1
  105. data/lib/puppet/functions/strip.rb +1 -1
  106. data/lib/puppet/functions/tree_each.rb +2 -2
  107. data/lib/puppet/functions/unique.rb +8 -8
  108. data/lib/puppet/functions/upcase.rb +2 -2
  109. data/lib/puppet/functions.rb +18 -18
  110. data/lib/puppet/generate/models/type/property.rb +1 -1
  111. data/lib/puppet/generate/models/type/type.rb +2 -2
  112. data/lib/puppet/generate/type.rb +3 -3
  113. data/lib/puppet/graph/rb_tree_map.rb +5 -5
  114. data/lib/puppet/graph/relationship_graph.rb +17 -17
  115. data/lib/puppet/graph/simple_graph.rb +25 -25
  116. data/lib/puppet/http/client.rb +4 -4
  117. data/lib/puppet/http/dns.rb +2 -3
  118. data/lib/puppet/http/errors.rb +2 -2
  119. data/lib/puppet/http/factory.rb +1 -1
  120. data/lib/puppet/http/proxy.rb +2 -2
  121. data/lib/puppet/http/redirector.rb +1 -1
  122. data/lib/puppet/http/resolver/server_list.rb +3 -3
  123. data/lib/puppet/http/response_converter.rb +2 -3
  124. data/lib/puppet/http/service/ca.rb +3 -3
  125. data/lib/puppet/http/service/compiler.rb +2 -2
  126. data/lib/puppet/http/service/file_server.rb +1 -1
  127. data/lib/puppet/http/service/puppetserver.rb +1 -1
  128. data/lib/puppet/http/service.rb +6 -9
  129. data/lib/puppet/http/session.rb +1 -1
  130. data/lib/puppet/indirector/catalog/compiler.rb +17 -19
  131. data/lib/puppet/indirector/data_binding/hiera.rb +0 -1
  132. data/lib/puppet/indirector/exec.rb +1 -1
  133. data/lib/puppet/indirector/face.rb +3 -3
  134. data/lib/puppet/indirector/fact_search.rb +1 -1
  135. data/lib/puppet/indirector/facts/json.rb +1 -1
  136. data/lib/puppet/indirector/file_bucket_file/file.rb +5 -5
  137. data/lib/puppet/indirector/file_bucket_file/selector.rb +0 -1
  138. data/lib/puppet/indirector/file_metadata/http.rb +2 -2
  139. data/lib/puppet/indirector/hiera.rb +2 -3
  140. data/lib/puppet/indirector/indirection.rb +12 -12
  141. data/lib/puppet/indirector/json.rb +2 -2
  142. data/lib/puppet/indirector/msgpack.rb +2 -2
  143. data/lib/puppet/indirector/node/exec.rb +2 -4
  144. data/lib/puppet/indirector/none.rb +0 -1
  145. data/lib/puppet/indirector/report/json.rb +1 -1
  146. data/lib/puppet/indirector/report/msgpack.rb +1 -1
  147. data/lib/puppet/indirector/report/yaml.rb +1 -1
  148. data/lib/puppet/indirector/request.rb +3 -3
  149. data/lib/puppet/indirector/resource/ral.rb +6 -6
  150. data/lib/puppet/indirector/rest.rb +1 -1
  151. data/lib/puppet/indirector/yaml.rb +2 -2
  152. data/lib/puppet/info_service/class_information_service.rb +8 -10
  153. data/lib/puppet/info_service/plan_information_service.rb +3 -3
  154. data/lib/puppet/info_service/task_information_service.rb +3 -3
  155. data/lib/puppet/interface/action.rb +13 -13
  156. data/lib/puppet/interface/action_builder.rb +1 -1
  157. data/lib/puppet/interface/action_manager.rb +2 -2
  158. data/lib/puppet/interface/documentation.rb +15 -15
  159. data/lib/puppet/interface/face_collection.rb +5 -5
  160. data/lib/puppet/interface/option.rb +6 -6
  161. data/lib/puppet/interface/option_manager.rb +2 -2
  162. data/lib/puppet/interface.rb +1 -1
  163. data/lib/puppet/metatype/manager.rb +4 -5
  164. data/lib/puppet/module/plan.rb +3 -3
  165. data/lib/puppet/module/task.rb +16 -16
  166. data/lib/puppet/module.rb +6 -5
  167. data/lib/puppet/module_tool/applications/checksummer.rb +1 -1
  168. data/lib/puppet/module_tool/applications/installer.rb +3 -3
  169. data/lib/puppet/module_tool/applications/uninstaller.rb +1 -1
  170. data/lib/puppet/module_tool/applications/unpacker.rb +1 -1
  171. data/lib/puppet/module_tool/applications/upgrader.rb +4 -4
  172. data/lib/puppet/module_tool/contents_description.rb +3 -3
  173. data/lib/puppet/module_tool/dependency.rb +2 -2
  174. data/lib/puppet/module_tool/errors/installer.rb +1 -1
  175. data/lib/puppet/module_tool/errors/shared.rb +3 -3
  176. data/lib/puppet/module_tool/installed_modules.rb +2 -2
  177. data/lib/puppet/module_tool/local_tarball.rb +3 -3
  178. data/lib/puppet/module_tool/metadata.rb +2 -2
  179. data/lib/puppet/module_tool/shared_behaviors.rb +11 -11
  180. data/lib/puppet/module_tool/tar/mini.rb +1 -1
  181. data/lib/puppet/module_tool/tar.rb +1 -1
  182. data/lib/puppet/module_tool.rb +4 -4
  183. data/lib/puppet/network/client_request.rb +0 -1
  184. data/lib/puppet/network/format.rb +1 -1
  185. data/lib/puppet/network/format_handler.rb +5 -5
  186. data/lib/puppet/network/format_support.rb +0 -1
  187. data/lib/puppet/network/formats.rb +15 -13
  188. data/lib/puppet/network/http/api/indirected_routes.rb +27 -15
  189. data/lib/puppet/network/http/api/master/v3/environments.rb +0 -1
  190. data/lib/puppet/network/http/api/master/v3.rb +0 -1
  191. data/lib/puppet/network/http/api/server/v3/environments.rb +2 -3
  192. data/lib/puppet/network/http/api/server/v3.rb +6 -6
  193. data/lib/puppet/network/http/api.rb +11 -11
  194. data/lib/puppet/network/http/connection.rb +3 -3
  195. data/lib/puppet/network/http/error.rb +2 -2
  196. data/lib/puppet/network/http/handler.rb +5 -5
  197. data/lib/puppet/network/http/request.rb +9 -5
  198. data/lib/puppet/network/http_pool.rb +1 -2
  199. data/lib/puppet/node/environment.rb +13 -13
  200. data/lib/puppet/node/facts.rb +6 -8
  201. data/lib/puppet/node.rb +4 -6
  202. data/lib/puppet/pal/compiler.rb +4 -4
  203. data/lib/puppet/pal/function_signature.rb +2 -2
  204. data/lib/puppet/pal/pal_impl.rb +39 -44
  205. data/lib/puppet/pal/plan_signature.rb +1 -1
  206. data/lib/puppet/pal/task_signature.rb +2 -2
  207. data/lib/puppet/parameter/path.rb +3 -3
  208. data/lib/puppet/parameter/value.rb +1 -1
  209. data/lib/puppet/parameter/value_collection.rb +5 -5
  210. data/lib/puppet/parameter.rb +4 -4
  211. data/lib/puppet/parser/abstract_compiler.rb +1 -1
  212. data/lib/puppet/parser/ast/hostclass.rb +1 -1
  213. data/lib/puppet/parser/ast/pops_bridge.rb +5 -5
  214. data/lib/puppet/parser/ast/resource.rb +1 -1
  215. data/lib/puppet/parser/ast/resourceparam.rb +1 -1
  216. data/lib/puppet/parser/catalog_compiler.rb +1 -1
  217. data/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +0 -2
  218. data/lib/puppet/parser/compiler.rb +11 -11
  219. data/lib/puppet/parser/e4_parser_adapter.rb +1 -1
  220. data/lib/puppet/parser/files.rb +2 -2
  221. data/lib/puppet/parser/functions/assert_type.rb +15 -15
  222. data/lib/puppet/parser/functions/binary_file.rb +6 -6
  223. data/lib/puppet/parser/functions/break.rb +9 -9
  224. data/lib/puppet/parser/functions/contain.rb +1 -1
  225. data/lib/puppet/parser/functions/create_resources.rb +6 -5
  226. data/lib/puppet/parser/functions/defined.rb +24 -24
  227. data/lib/puppet/parser/functions/dig.rb +10 -10
  228. data/lib/puppet/parser/functions/digest.rb +1 -1
  229. data/lib/puppet/parser/functions/each.rb +21 -21
  230. data/lib/puppet/parser/functions/epp.rb +1 -1
  231. data/lib/puppet/parser/functions/fail.rb +1 -1
  232. data/lib/puppet/parser/functions/file.rb +1 -1
  233. data/lib/puppet/parser/functions/filter.rb +20 -20
  234. data/lib/puppet/parser/functions/find_file.rb +6 -7
  235. data/lib/puppet/parser/functions/fqdn_rand.rb +4 -4
  236. data/lib/puppet/parser/functions/generate.rb +2 -2
  237. data/lib/puppet/parser/functions/hiera.rb +21 -21
  238. data/lib/puppet/parser/functions/hiera_array.rb +19 -20
  239. data/lib/puppet/parser/functions/hiera_hash.rb +21 -22
  240. data/lib/puppet/parser/functions/hiera_include.rb +21 -22
  241. data/lib/puppet/parser/functions/include.rb +2 -2
  242. data/lib/puppet/parser/functions/inline_epp.rb +1 -1
  243. data/lib/puppet/parser/functions/inline_template.rb +3 -2
  244. data/lib/puppet/parser/functions/lest.rb +11 -11
  245. data/lib/puppet/parser/functions/lookup.rb +22 -22
  246. data/lib/puppet/parser/functions/map.rb +20 -20
  247. data/lib/puppet/parser/functions/match.rb +11 -11
  248. data/lib/puppet/parser/functions/md5.rb +1 -1
  249. data/lib/puppet/parser/functions/new.rb +236 -237
  250. data/lib/puppet/parser/functions/next.rb +8 -8
  251. data/lib/puppet/parser/functions/realize.rb +4 -3
  252. data/lib/puppet/parser/functions/reduce.rb +27 -27
  253. data/lib/puppet/parser/functions/regsubst.rb +4 -3
  254. data/lib/puppet/parser/functions/require.rb +3 -2
  255. data/lib/puppet/parser/functions/return.rb +18 -18
  256. data/lib/puppet/parser/functions/reverse_each.rb +22 -22
  257. data/lib/puppet/parser/functions/scanf.rb +6 -6
  258. data/lib/puppet/parser/functions/sha1.rb +1 -1
  259. data/lib/puppet/parser/functions/sha256.rb +1 -1
  260. data/lib/puppet/parser/functions/slice.rb +10 -10
  261. data/lib/puppet/parser/functions/split.rb +2 -1
  262. data/lib/puppet/parser/functions/sprintf.rb +4 -4
  263. data/lib/puppet/parser/functions/step.rb +20 -20
  264. data/lib/puppet/parser/functions/strftime.rb +43 -43
  265. data/lib/puppet/parser/functions/tag.rb +3 -2
  266. data/lib/puppet/parser/functions/tagged.rb +3 -2
  267. data/lib/puppet/parser/functions/template.rb +3 -2
  268. data/lib/puppet/parser/functions/then.rb +17 -17
  269. data/lib/puppet/parser/functions/type.rb +15 -15
  270. data/lib/puppet/parser/functions/versioncmp.rb +1 -1
  271. data/lib/puppet/parser/functions/with.rb +4 -4
  272. data/lib/puppet/parser/functions.rb +6 -6
  273. data/lib/puppet/parser/relationship.rb +2 -2
  274. data/lib/puppet/parser/resource.rb +12 -17
  275. data/lib/puppet/parser/scope.rb +49 -48
  276. data/lib/puppet/parser/script_compiler.rb +5 -5
  277. data/lib/puppet/parser/templatewrapper.rb +1 -1
  278. data/lib/puppet/parser/type_loader.rb +3 -3
  279. data/lib/puppet/plugins.rb +1 -1
  280. data/lib/puppet/pops/adaptable.rb +0 -1
  281. data/lib/puppet/pops/evaluator/access_operator.rb +61 -63
  282. data/lib/puppet/pops/evaluator/closure.rb +9 -11
  283. data/lib/puppet/pops/evaluator/collector_transformer.rb +2 -2
  284. data/lib/puppet/pops/evaluator/collectors/abstract_collector.rb +1 -1
  285. data/lib/puppet/pops/evaluator/collectors/catalog_collector.rb +1 -1
  286. data/lib/puppet/pops/evaluator/collectors/exported_collector.rb +2 -2
  287. data/lib/puppet/pops/evaluator/collectors/fixed_set_collector.rb +2 -3
  288. data/lib/puppet/pops/evaluator/compare_operator.rb +12 -10
  289. data/lib/puppet/pops/evaluator/deferred_resolver.rb +17 -15
  290. data/lib/puppet/pops/evaluator/epp_evaluator.rb +6 -6
  291. data/lib/puppet/pops/evaluator/evaluator_impl.rb +80 -79
  292. data/lib/puppet/pops/evaluator/external_syntax_support.rb +1 -1
  293. data/lib/puppet/pops/evaluator/json_strict_literal_evaluator.rb +2 -3
  294. data/lib/puppet/pops/evaluator/literal_evaluator.rb +18 -6
  295. data/lib/puppet/pops/evaluator/puppet_proc.rb +3 -3
  296. data/lib/puppet/pops/evaluator/relationship_operator.rb +6 -6
  297. data/lib/puppet/pops/evaluator/runtime3_converter.rb +10 -9
  298. data/lib/puppet/pops/evaluator/runtime3_support.rb +15 -14
  299. data/lib/puppet/pops/functions/dispatch.rb +5 -7
  300. data/lib/puppet/pops/functions/dispatcher.rb +4 -4
  301. data/lib/puppet/pops/functions/function.rb +2 -2
  302. data/lib/puppet/pops/issue_reporter.rb +3 -3
  303. data/lib/puppet/pops/issues.rb +5 -1
  304. data/lib/puppet/pops/label_provider.rb +2 -2
  305. data/lib/puppet/pops/loader/base_loader.rb +1 -2
  306. data/lib/puppet/pops/loader/dependency_loader.rb +2 -2
  307. data/lib/puppet/pops/loader/gem_support.rb +1 -1
  308. data/lib/puppet/pops/loader/loader_paths.rb +6 -7
  309. data/lib/puppet/pops/loader/module_loaders.rb +13 -18
  310. data/lib/puppet/pops/loader/predefined_loader.rb +1 -1
  311. data/lib/puppet/pops/loader/puppet_function_instantiator.rb +2 -1
  312. data/lib/puppet/pops/loader/puppet_plan_instantiator.rb +2 -1
  313. data/lib/puppet/pops/loader/puppet_resource_type_impl_instantiator.rb +4 -4
  314. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +7 -6
  315. data/lib/puppet/pops/loader/runtime3_type_loader.rb +1 -1
  316. data/lib/puppet/pops/loader/simple_environment_loader.rb +1 -1
  317. data/lib/puppet/pops/loader/static_loader.rb +2 -2
  318. data/lib/puppet/pops/loader/task_instantiator.rb +2 -2
  319. data/lib/puppet/pops/loader/type_definition_instantiator.rb +2 -1
  320. data/lib/puppet/pops/loader/typed_name.rb +1 -1
  321. data/lib/puppet/pops/loader/uri_helper.rb +1 -1
  322. data/lib/puppet/pops/loaders.rb +3 -3
  323. data/lib/puppet/pops/lookup/context.rb +32 -25
  324. data/lib/puppet/pops/lookup/data_dig_function_provider.rb +2 -2
  325. data/lib/puppet/pops/lookup/explainer.rb +9 -9
  326. data/lib/puppet/pops/lookup/global_data_provider.rb +2 -2
  327. data/lib/puppet/pops/lookup/hiera_config.rb +23 -20
  328. data/lib/puppet/pops/lookup/interpolation.rb +4 -3
  329. data/lib/puppet/pops/lookup/key_recorder.rb +1 -1
  330. data/lib/puppet/pops/lookup/lookup_adapter.rb +7 -5
  331. data/lib/puppet/pops/lookup/lookup_key.rb +1 -1
  332. data/lib/puppet/pops/lookup/sub_lookup.rb +1 -1
  333. data/lib/puppet/pops/lookup.rb +1 -2
  334. data/lib/puppet/pops/merge_strategy.rb +10 -8
  335. data/lib/puppet/pops/migration/migration_checker.rb +3 -3
  336. data/lib/puppet/pops/model/ast_transformer.rb +7 -7
  337. data/lib/puppet/pops/model/factory.rb +12 -13
  338. data/lib/puppet/pops/model/model_label_provider.rb +3 -1
  339. data/lib/puppet/pops/model/model_tree_dumper.rb +21 -21
  340. data/lib/puppet/pops/model/tree_dumper.rb +3 -3
  341. data/lib/puppet/pops/parser/code_merger.rb +2 -2
  342. data/lib/puppet/pops/parser/epp_parser.rb +2 -2
  343. data/lib/puppet/pops/parser/epp_support.rb +5 -5
  344. data/lib/puppet/pops/parser/evaluating_parser.rb +4 -4
  345. data/lib/puppet/pops/parser/heredoc_support.rb +4 -4
  346. data/lib/puppet/pops/parser/interpolation_support.rb +20 -20
  347. data/lib/puppet/pops/parser/lexer2.rb +30 -29
  348. data/lib/puppet/pops/parser/lexer_support.rb +20 -18
  349. data/lib/puppet/pops/parser/locator.rb +11 -11
  350. data/lib/puppet/pops/parser/parser_support.rb +7 -7
  351. data/lib/puppet/pops/parser/pn_parser.rb +1 -1
  352. data/lib/puppet/pops/parser/slurp_support.rb +10 -10
  353. data/lib/puppet/pops/pcore.rb +1 -1
  354. data/lib/puppet/pops/pn.rb +1 -2
  355. data/lib/puppet/pops/resource/param.rb +11 -12
  356. data/lib/puppet/pops/resource/resource_type_impl.rb +34 -34
  357. data/lib/puppet/pops/semantic_error.rb +1 -1
  358. data/lib/puppet/pops/serialization/abstract_writer.rb +2 -2
  359. data/lib/puppet/pops/serialization/from_data_converter.rb +12 -9
  360. data/lib/puppet/pops/serialization/json.rb +2 -2
  361. data/lib/puppet/pops/serialization/object.rb +1 -2
  362. data/lib/puppet/pops/serialization/serializer.rb +13 -14
  363. data/lib/puppet/pops/serialization/to_data_converter.rb +3 -3
  364. data/lib/puppet/pops/serialization/to_stringified_converter.rb +5 -5
  365. data/lib/puppet/pops/time/timespan.rb +7 -6
  366. data/lib/puppet/pops/time/timestamp.rb +4 -2
  367. data/lib/puppet/pops/types/annotation.rb +3 -3
  368. data/lib/puppet/pops/types/class_loader.rb +8 -7
  369. data/lib/puppet/pops/types/implementation_registry.rb +2 -1
  370. data/lib/puppet/pops/types/iterable.rb +9 -9
  371. data/lib/puppet/pops/types/p_binary_type.rb +2 -2
  372. data/lib/puppet/pops/types/p_init_type.rb +2 -3
  373. data/lib/puppet/pops/types/p_meta_type.rb +1 -1
  374. data/lib/puppet/pops/types/p_object_type.rb +52 -51
  375. data/lib/puppet/pops/types/p_object_type_extension.rb +1 -2
  376. data/lib/puppet/pops/types/p_runtime_type.rb +1 -2
  377. data/lib/puppet/pops/types/p_sem_ver_type.rb +4 -5
  378. data/lib/puppet/pops/types/p_sensitive_type.rb +1 -1
  379. data/lib/puppet/pops/types/p_timespan_type.rb +3 -4
  380. data/lib/puppet/pops/types/p_timestamp_type.rb +1 -2
  381. data/lib/puppet/pops/types/p_type_set_type.rb +29 -31
  382. data/lib/puppet/pops/types/p_uri_type.rb +8 -8
  383. data/lib/puppet/pops/types/ruby_generator.rb +7 -6
  384. data/lib/puppet/pops/types/ruby_method.rb +6 -7
  385. data/lib/puppet/pops/types/string_converter.rb +29 -32
  386. data/lib/puppet/pops/types/tree_iterators.rb +6 -8
  387. data/lib/puppet/pops/types/type_asserter.rb +3 -3
  388. data/lib/puppet/pops/types/type_calculator.rb +36 -36
  389. data/lib/puppet/pops/types/type_factory.rb +9 -8
  390. data/lib/puppet/pops/types/type_formatter.rb +34 -38
  391. data/lib/puppet/pops/types/type_mismatch_describer.rb +25 -22
  392. data/lib/puppet/pops/types/type_parser.rb +12 -10
  393. data/lib/puppet/pops/types/type_with_members.rb +0 -1
  394. data/lib/puppet/pops/types/types.rb +85 -97
  395. data/lib/puppet/pops/utils.rb +2 -2
  396. data/lib/puppet/pops/validation/checker4_0.rb +51 -38
  397. data/lib/puppet/pops/validation/tasks_checker.rb +3 -3
  398. data/lib/puppet/pops/validation/validator_factory_4_0.rb +2 -0
  399. data/lib/puppet/pops/validation.rb +15 -15
  400. data/lib/puppet/pops/visitor.rb +1 -1
  401. data/lib/puppet/property/ensure.rb +0 -1
  402. data/lib/puppet/property/keyvalue.rb +5 -6
  403. data/lib/puppet/property/list.rb +1 -1
  404. data/lib/puppet/property.rb +8 -10
  405. data/lib/puppet/provider/aix_object.rb +9 -9
  406. data/lib/puppet/provider/exec/posix.rb +1 -1
  407. data/lib/puppet/provider/exec.rb +3 -3
  408. data/lib/puppet/provider/file/windows.rb +3 -3
  409. data/lib/puppet/provider/group/groupadd.rb +2 -2
  410. data/lib/puppet/provider/group/pw.rb +0 -1
  411. data/lib/puppet/provider/group/windows_adsi.rb +3 -3
  412. data/lib/puppet/provider/ldap.rb +2 -3
  413. data/lib/puppet/provider/nameservice/directoryservice.rb +11 -11
  414. data/lib/puppet/provider/nameservice/pw.rb +0 -1
  415. data/lib/puppet/provider/nameservice.rb +9 -10
  416. data/lib/puppet/provider/package/aix.rb +4 -4
  417. data/lib/puppet/provider/package/appdmg.rb +3 -3
  418. data/lib/puppet/provider/package/apple.rb +1 -1
  419. data/lib/puppet/provider/package/apt.rb +7 -3
  420. data/lib/puppet/provider/package/aptrpm.rb +6 -4
  421. data/lib/puppet/provider/package/blastwave.rb +3 -3
  422. data/lib/puppet/provider/package/dnf.rb +5 -0
  423. data/lib/puppet/provider/package/dnfmodule.rb +1 -1
  424. data/lib/puppet/provider/package/dpkg.rb +8 -8
  425. data/lib/puppet/provider/package/gem.rb +6 -7
  426. data/lib/puppet/provider/package/hpux.rb +2 -2
  427. data/lib/puppet/provider/package/nim.rb +4 -4
  428. data/lib/puppet/provider/package/openbsd.rb +8 -8
  429. data/lib/puppet/provider/package/opkg.rb +6 -6
  430. data/lib/puppet/provider/package/pacman.rb +2 -2
  431. data/lib/puppet/provider/package/pip.rb +8 -8
  432. data/lib/puppet/provider/package/pkg.rb +19 -19
  433. data/lib/puppet/provider/package/pkgdmg.rb +5 -5
  434. data/lib/puppet/provider/package/pkgin.rb +6 -6
  435. data/lib/puppet/provider/package/pkgng.rb +1 -1
  436. data/lib/puppet/provider/package/pkgutil.rb +11 -11
  437. data/lib/puppet/provider/package/portage.rb +3 -3
  438. data/lib/puppet/provider/package/portupgrade.rb +5 -7
  439. data/lib/puppet/provider/package/puppet_gem.rb +2 -2
  440. data/lib/puppet/provider/package/puppetserver_gem.rb +4 -4
  441. data/lib/puppet/provider/package/rpm.rb +9 -9
  442. data/lib/puppet/provider/package/sun.rb +2 -2
  443. data/lib/puppet/provider/package/tdnf.rb +6 -1
  444. data/lib/puppet/provider/package/windows/exe_package.rb +2 -2
  445. data/lib/puppet/provider/package/windows/package.rb +3 -3
  446. data/lib/puppet/provider/package/windows.rb +1 -1
  447. data/lib/puppet/provider/package/yum.rb +25 -14
  448. data/lib/puppet/provider/package/zypper.rb +7 -7
  449. data/lib/puppet/provider/package.rb +1 -1
  450. data/lib/puppet/provider/package_targetable.rb +2 -2
  451. data/lib/puppet/provider/parsedfile.rb +5 -7
  452. data/lib/puppet/provider/service/base.rb +0 -1
  453. data/lib/puppet/provider/service/daemontools.rb +10 -10
  454. data/lib/puppet/provider/service/debian.rb +2 -2
  455. data/lib/puppet/provider/service/freebsd.rb +15 -17
  456. data/lib/puppet/provider/service/init.rb +2 -3
  457. data/lib/puppet/provider/service/launchd.rb +3 -3
  458. data/lib/puppet/provider/service/openrc.rb +1 -1
  459. data/lib/puppet/provider/service/redhat.rb +2 -1
  460. data/lib/puppet/provider/service/runit.rb +2 -3
  461. data/lib/puppet/provider/service/service.rb +0 -1
  462. data/lib/puppet/provider/service/smf.rb +4 -4
  463. data/lib/puppet/provider/service/src.rb +3 -4
  464. data/lib/puppet/provider/service/systemd.rb +3 -2
  465. data/lib/puppet/provider/service/upstart.rb +6 -8
  466. data/lib/puppet/provider/service/windows.rb +15 -15
  467. data/lib/puppet/provider/user/aix.rb +14 -14
  468. data/lib/puppet/provider/user/directoryservice.rb +8 -8
  469. data/lib/puppet/provider/user/hpux.rb +9 -9
  470. data/lib/puppet/provider/user/ldap.rb +4 -4
  471. data/lib/puppet/provider/user/openbsd.rb +1 -1
  472. data/lib/puppet/provider/user/pw.rb +1 -2
  473. data/lib/puppet/provider/user/user_role_add.rb +9 -9
  474. data/lib/puppet/provider/user/useradd.rb +4 -4
  475. data/lib/puppet/provider/user/windows_adsi.rb +6 -6
  476. data/lib/puppet/provider.rb +2 -2
  477. data/lib/puppet/reference/configuration.rb +15 -14
  478. data/lib/puppet/reference/indirection.rb +14 -14
  479. data/lib/puppet/reference/providers.rb +2 -2
  480. data/lib/puppet/reference/type.rb +1 -1
  481. data/lib/puppet/relationship.rb +2 -2
  482. data/lib/puppet/reports/log.rb +0 -1
  483. data/lib/puppet/reports/store.rb +2 -2
  484. data/lib/puppet/resource/catalog.rb +26 -30
  485. data/lib/puppet/resource/status.rb +4 -3
  486. data/lib/puppet/resource/type.rb +10 -11
  487. data/lib/puppet/resource/type_collection.rb +5 -5
  488. data/lib/puppet/resource.rb +35 -30
  489. data/lib/puppet/scheduler/scheduler.rb +1 -1
  490. data/lib/puppet/scheduler.rb +1 -1
  491. data/lib/puppet/settings/base_setting.rb +2 -2
  492. data/lib/puppet/settings/boolean_setting.rb +1 -1
  493. data/lib/puppet/settings/config_file.rb +2 -2
  494. data/lib/puppet/settings/duration_setting.rb +2 -3
  495. data/lib/puppet/settings/environment_conf.rb +6 -4
  496. data/lib/puppet/settings/errors.rb +3 -3
  497. data/lib/puppet/settings/integer_setting.rb +1 -1
  498. data/lib/puppet/settings/priority_setting.rb +3 -4
  499. data/lib/puppet/settings/server_list_setting.rb +4 -4
  500. data/lib/puppet/settings/ttl_setting.rb +3 -4
  501. data/lib/puppet/settings/value_translator.rb +1 -1
  502. data/lib/puppet/settings.rb +39 -36
  503. data/lib/puppet/ssl/base.rb +2 -2
  504. data/lib/puppet/ssl/certificate.rb +2 -2
  505. data/lib/puppet/ssl/certificate_request.rb +10 -10
  506. data/lib/puppet/ssl/certificate_request_attributes.rb +1 -1
  507. data/lib/puppet/ssl/oids.rb +4 -4
  508. data/lib/puppet/ssl/ssl_provider.rb +8 -6
  509. data/lib/puppet/ssl/state_machine.rb +11 -11
  510. data/lib/puppet/syntax_checkers/base64.rb +1 -1
  511. data/lib/puppet/syntax_checkers/epp.rb +2 -2
  512. data/lib/puppet/syntax_checkers/json.rb +2 -2
  513. data/lib/puppet/syntax_checkers/pp.rb +2 -2
  514. data/lib/puppet/syntax_checkers.rb +1 -1
  515. data/lib/puppet/test/test_helper.rb +10 -9
  516. data/lib/puppet/transaction/additional_resource_generator.rb +5 -5
  517. data/lib/puppet/transaction/event_manager.rb +2 -3
  518. data/lib/puppet/transaction/persistence.rb +1 -1
  519. data/lib/puppet/transaction/report.rb +14 -16
  520. data/lib/puppet/transaction/resource_harness.rb +2 -2
  521. data/lib/puppet/transaction.rb +11 -11
  522. data/lib/puppet/trusted_external.rb +1 -1
  523. data/lib/puppet/type/exec.rb +7 -11
  524. data/lib/puppet/type/file/checksum_value.rb +2 -2
  525. data/lib/puppet/type/file/content.rb +5 -5
  526. data/lib/puppet/type/file/ctime.rb +0 -1
  527. data/lib/puppet/type/file/data_sync.rb +2 -2
  528. data/lib/puppet/type/file/ensure.rb +6 -9
  529. data/lib/puppet/type/file/owner.rb +0 -1
  530. data/lib/puppet/type/file/selcontext.rb +0 -1
  531. data/lib/puppet/type/file/source.rb +2 -2
  532. data/lib/puppet/type/file/target.rb +2 -3
  533. data/lib/puppet/type/file/type.rb +0 -1
  534. data/lib/puppet/type/file.rb +22 -26
  535. data/lib/puppet/type/group.rb +2 -2
  536. data/lib/puppet/type/package.rb +8 -8
  537. data/lib/puppet/type/resources.rb +8 -8
  538. data/lib/puppet/type/schedule.rb +4 -4
  539. data/lib/puppet/type/service.rb +4 -4
  540. data/lib/puppet/type/tidy.rb +7 -7
  541. data/lib/puppet/type/user.rb +20 -19
  542. data/lib/puppet/type.rb +44 -49
  543. data/lib/puppet/util/at_fork/solaris.rb +4 -4
  544. data/lib/puppet/util/autoload.rb +2 -2
  545. data/lib/puppet/util/backups.rb +3 -3
  546. data/lib/puppet/util/checksums.rb +1 -1
  547. data/lib/puppet/util/classgen.rb +2 -3
  548. data/lib/puppet/util/colors.rb +33 -33
  549. data/lib/puppet/util/command_line/puppet_option_parser.rb +5 -4
  550. data/lib/puppet/util/command_line/trollop.rb +38 -34
  551. data/lib/puppet/util/command_line.rb +1 -1
  552. data/lib/puppet/util/diff.rb +4 -4
  553. data/lib/puppet/util/docs.rb +3 -3
  554. data/lib/puppet/util/errors.rb +2 -2
  555. data/lib/puppet/util/execution.rb +12 -11
  556. data/lib/puppet/util/feature.rb +6 -8
  557. data/lib/puppet/util/fileparsing.rb +9 -12
  558. data/lib/puppet/util/filetype.rb +3 -3
  559. data/lib/puppet/util/inifile.rb +1 -1
  560. data/lib/puppet/util/ldap/manager.rb +6 -7
  561. data/lib/puppet/util/libuser.rb +1 -1
  562. data/lib/puppet/util/log/destination.rb +0 -1
  563. data/lib/puppet/util/log/destinations.rb +2 -4
  564. data/lib/puppet/util/log.rb +7 -6
  565. data/lib/puppet/util/logging.rb +6 -7
  566. data/lib/puppet/util/metaid.rb +0 -1
  567. data/lib/puppet/util/metric.rb +3 -3
  568. data/lib/puppet/util/monkey_patches.rb +1 -1
  569. data/lib/puppet/util/multi_match.rb +4 -4
  570. data/lib/puppet/util/network_device/base.rb +1 -1
  571. data/lib/puppet/util/network_device/config.rb +2 -2
  572. data/lib/puppet/util/package/version/pip.rb +2 -2
  573. data/lib/puppet/util/package/version/range/lt.rb +1 -1
  574. data/lib/puppet/util/package/version/range.rb +5 -5
  575. data/lib/puppet/util/package.rb +1 -1
  576. data/lib/puppet/util/pidlock.rb +1 -1
  577. data/lib/puppet/util/plist.rb +6 -5
  578. data/lib/puppet/util/posix.rb +3 -4
  579. data/lib/puppet/util/profiler/aggregate.rb +2 -3
  580. data/lib/puppet/util/profiler/logging.rb +1 -1
  581. data/lib/puppet/util/profiler/wall_clock.rb +2 -3
  582. data/lib/puppet/util/provider_features.rb +1 -2
  583. data/lib/puppet/util/rdoc/code_objects.rb +11 -10
  584. data/lib/puppet/util/rdoc/generators/puppet_generator.rb +37 -34
  585. data/lib/puppet/util/rdoc/parser/puppet_parser_core.rb +17 -15
  586. data/lib/puppet/util/rdoc.rb +8 -8
  587. data/lib/puppet/util/reference.rb +2 -2
  588. data/lib/puppet/util/resource_template.rb +0 -1
  589. data/lib/puppet/util/retry_action.rb +2 -2
  590. data/lib/puppet/util/rpm_compare.rb +7 -7
  591. data/lib/puppet/util/rubygems.rb +0 -1
  592. data/lib/puppet/util/run_mode.rb +3 -3
  593. data/lib/puppet/util/selinux.rb +3 -3
  594. data/lib/puppet/util/storage.rb +1 -1
  595. data/lib/puppet/util/suidmanager.rb +13 -15
  596. data/lib/puppet/util/symbolic_file_mode.rb +8 -7
  597. data/lib/puppet/util/tagging.rb +2 -2
  598. data/lib/puppet/util/user_attr.rb +1 -1
  599. data/lib/puppet/util/watched_file.rb +2 -1
  600. data/lib/puppet/util/watcher/periodic_watcher.rb +0 -1
  601. data/lib/puppet/util/windows/access_control_list.rb +5 -4
  602. data/lib/puppet/util/windows/adsi.rb +14 -14
  603. data/lib/puppet/util/windows/com.rb +2 -2
  604. data/lib/puppet/util/windows/daemon.rb +8 -8
  605. data/lib/puppet/util/windows/eventlog.rb +4 -4
  606. data/lib/puppet/util/windows/file.rb +16 -12
  607. data/lib/puppet/util/windows/monkey_patches/process.rb +1 -1
  608. data/lib/puppet/util/windows/principal.rb +8 -6
  609. data/lib/puppet/util/windows/process.rb +28 -22
  610. data/lib/puppet/util/windows/registry.rb +47 -14
  611. data/lib/puppet/util/windows/root_certs.rb +1 -1
  612. data/lib/puppet/util/windows/security.rb +20 -18
  613. data/lib/puppet/util/windows/service.rb +4 -4
  614. data/lib/puppet/util/windows/sid.rb +8 -7
  615. data/lib/puppet/util/windows/user.rb +4 -2
  616. data/lib/puppet/util/windows.rb +1 -1
  617. data/lib/puppet/util.rb +14 -16
  618. data/lib/puppet/version.rb +1 -1
  619. data/lib/puppet/x509/cert_provider.rb +12 -12
  620. data/lib/puppet.rb +8 -7
  621. data/locales/puppet.pot +2008 -2004
  622. data/man/man5/puppet.conf.5 +2 -2
  623. data/man/man8/puppet-agent.8 +1 -1
  624. data/man/man8/puppet-apply.8 +1 -1
  625. data/man/man8/puppet-catalog.8 +1 -1
  626. data/man/man8/puppet-config.8 +1 -1
  627. data/man/man8/puppet-describe.8 +1 -1
  628. data/man/man8/puppet-device.8 +1 -1
  629. data/man/man8/puppet-doc.8 +1 -1
  630. data/man/man8/puppet-epp.8 +1 -1
  631. data/man/man8/puppet-facts.8 +1 -1
  632. data/man/man8/puppet-filebucket.8 +1 -1
  633. data/man/man8/puppet-generate.8 +1 -1
  634. data/man/man8/puppet-help.8 +1 -1
  635. data/man/man8/puppet-lookup.8 +1 -1
  636. data/man/man8/puppet-module.8 +1 -1
  637. data/man/man8/puppet-node.8 +1 -1
  638. data/man/man8/puppet-parser.8 +1 -1
  639. data/man/man8/puppet-plugin.8 +1 -1
  640. data/man/man8/puppet-report.8 +1 -1
  641. data/man/man8/puppet-resource.8 +1 -1
  642. data/man/man8/puppet-script.8 +1 -1
  643. data/man/man8/puppet-ssl.8 +1 -1
  644. data/man/man8/puppet.8 +2 -2
  645. data/tasks/generate_cert_fixtures.rake +1 -0
  646. metadata +3 -2455
  647. data/spec/fixtures/faulty_face/puppet/face/syntax.rb +0 -8
  648. data/spec/fixtures/hiera.yaml +0 -9
  649. data/spec/fixtures/integration/application/agent/cached_deferred_catalog.json +0 -92
  650. data/spec/fixtures/integration/application/agent/lib/facter/agent_spec_role.rb +0 -3
  651. data/spec/fixtures/integration/application/apply/environments/spec/modules/amod/lib/puppet/provider/applytest/applytest.rb +0 -2
  652. data/spec/fixtures/integration/application/apply/environments/spec/modules/amod/lib/puppet/type/applytest.rb +0 -25
  653. data/spec/fixtures/integration/application/module/environments/direnv/modules/nginx/README +0 -3
  654. data/spec/fixtures/integration/application/module/environments/direnv/modules/nginx/manifests/init.pp +0 -17
  655. data/spec/fixtures/integration/application/module/environments/direnv/modules/nginx/metadata.json +0 -20
  656. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Gemfile +0 -4
  657. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Rakefile +0 -3
  658. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/lib/puppet/functions/l10n.rb +0 -8
  659. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/config.yaml +0 -25
  660. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/ja/puppet-l10n.po +0 -19
  661. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/puppet-l10n.pot +0 -20
  662. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/metadata.json +0 -8
  663. data/spec/fixtures/integration/node/environment/sitedir/00_a.pp +0 -2
  664. data/spec/fixtures/integration/node/environment/sitedir/01_b.pp +0 -6
  665. data/spec/fixtures/integration/node/environment/sitedir/03_empty.pp +0 -0
  666. data/spec/fixtures/integration/node/environment/sitedir/04_include.pp +0 -2
  667. data/spec/fixtures/integration/node/environment/sitedir2/00_a.pp +0 -2
  668. data/spec/fixtures/integration/node/environment/sitedir2/02_folder/01_b.pp +0 -6
  669. data/spec/fixtures/integration/node/environment/sitedir2/03_c.pp +0 -1
  670. data/spec/fixtures/integration/node/environment/sitedir2/04_include.pp +0 -2
  671. data/spec/fixtures/java.tgz +0 -0
  672. data/spec/fixtures/manifests/site.pp +0 -0
  673. data/spec/fixtures/module.tar.gz +0 -0
  674. data/spec/fixtures/releases/jamtur01-apache/Modulefile +0 -2
  675. data/spec/fixtures/releases/jamtur01-apache/files/httpd +0 -24
  676. data/spec/fixtures/releases/jamtur01-apache/files/test.vhost +0 -18
  677. data/spec/fixtures/releases/jamtur01-apache/lib/puppet/provider/a2mod/debian.rb +0 -21
  678. data/spec/fixtures/releases/jamtur01-apache/lib/puppet/type/a2mod.rb +0 -12
  679. data/spec/fixtures/releases/jamtur01-apache/manifests/dev.pp +0 -5
  680. data/spec/fixtures/releases/jamtur01-apache/manifests/init.pp +0 -34
  681. data/spec/fixtures/releases/jamtur01-apache/manifests/params.pp +0 -17
  682. data/spec/fixtures/releases/jamtur01-apache/manifests/php.pp +0 -5
  683. data/spec/fixtures/releases/jamtur01-apache/manifests/ssl.pp +0 -15
  684. data/spec/fixtures/releases/jamtur01-apache/manifests/vhost.pp +0 -15
  685. data/spec/fixtures/releases/jamtur01-apache/metadata.json +0 -1
  686. data/spec/fixtures/releases/jamtur01-apache/templates/vhost-default.conf.erb +0 -20
  687. data/spec/fixtures/releases/jamtur01-apache/tests/apache.pp +0 -1
  688. data/spec/fixtures/releases/jamtur01-apache/tests/dev.pp +0 -1
  689. data/spec/fixtures/releases/jamtur01-apache/tests/init.pp +0 -1
  690. data/spec/fixtures/releases/jamtur01-apache/tests/php.pp +0 -1
  691. data/spec/fixtures/releases/jamtur01-apache/tests/ssl.pp +0 -1
  692. data/spec/fixtures/releases/jamtur01-apache/tests/vhost.pp +0 -2
  693. data/spec/fixtures/ssl/127.0.0.1-key.pem +0 -117
  694. data/spec/fixtures/ssl/127.0.0.1.pem +0 -70
  695. data/spec/fixtures/ssl/bad-basic-constraints.pem +0 -81
  696. data/spec/fixtures/ssl/bad-int-basic-constraints.pem +0 -81
  697. data/spec/fixtures/ssl/ca.pem +0 -81
  698. data/spec/fixtures/ssl/crl.pem +0 -40
  699. data/spec/fixtures/ssl/ec-key-openssl.pem +0 -8
  700. data/spec/fixtures/ssl/ec-key-pk8.pem +0 -5
  701. data/spec/fixtures/ssl/ec-key.pem +0 -18
  702. data/spec/fixtures/ssl/ec.pem +0 -50
  703. data/spec/fixtures/ssl/encrypted-ec-key.pem +0 -21
  704. data/spec/fixtures/ssl/encrypted-key.pem +0 -120
  705. data/spec/fixtures/ssl/intermediate-agent-crl.pem +0 -40
  706. data/spec/fixtures/ssl/intermediate-agent.pem +0 -81
  707. data/spec/fixtures/ssl/intermediate-crl.pem +0 -46
  708. data/spec/fixtures/ssl/intermediate.pem +0 -81
  709. data/spec/fixtures/ssl/netlock-arany-utf8.pem +0 -23
  710. data/spec/fixtures/ssl/oid-key.pem +0 -117
  711. data/spec/fixtures/ssl/oid.pem +0 -70
  712. data/spec/fixtures/ssl/pluto-key.pem +0 -117
  713. data/spec/fixtures/ssl/pluto.pem +0 -67
  714. data/spec/fixtures/ssl/renewed.pem +0 -67
  715. data/spec/fixtures/ssl/request-key.pem +0 -117
  716. data/spec/fixtures/ssl/request.pem +0 -62
  717. data/spec/fixtures/ssl/revoked-key.pem +0 -117
  718. data/spec/fixtures/ssl/revoked.pem +0 -67
  719. data/spec/fixtures/ssl/signed-key.pem +0 -117
  720. data/spec/fixtures/ssl/signed.pem +0 -67
  721. data/spec/fixtures/ssl/tampered-cert.pem +0 -67
  722. data/spec/fixtures/ssl/tampered-csr.pem +0 -62
  723. data/spec/fixtures/ssl/trusted_oid_mapping.yaml +0 -5
  724. data/spec/fixtures/ssl/unknown-127.0.0.1-key.pem +0 -117
  725. data/spec/fixtures/ssl/unknown-127.0.0.1.pem +0 -70
  726. data/spec/fixtures/ssl/unknown-ca-key.pem +0 -117
  727. data/spec/fixtures/ssl/unknown-ca.pem +0 -81
  728. data/spec/fixtures/stdlib.tgz +0 -0
  729. data/spec/fixtures/unit/application/environments/production/data/common.yaml +0 -24
  730. data/spec/fixtures/unit/application/environments/production/environment.conf +0 -1
  731. data/spec/fixtures/unit/application/environments/production/manifests/site.pp +0 -1
  732. data/spec/fixtures/unit/application/environments/puppet_func_provider/environment.conf +0 -1
  733. data/spec/fixtures/unit/application/environments/puppet_func_provider/functions/environment/data.pp +0 -10
  734. data/spec/fixtures/unit/application/environments/puppet_func_provider/manifests/site.pp +0 -1
  735. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/data/bad.json +0 -3
  736. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/environment.conf +0 -2
  737. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/hiera.yaml +0 -5
  738. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/manifests/site.pp +0 -5
  739. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/data/bad.yaml +0 -3
  740. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/environment.conf +0 -2
  741. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/hiera.yaml +0 -5
  742. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/manifests/site.pp +0 -5
  743. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/data/common.yaml +0 -2
  744. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/environment.conf +0 -2
  745. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/manifests/site.pp +0 -1
  746. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/data/common.yaml +0 -2
  747. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/manifests/init.pp +0 -5
  748. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/metadata.json +0 -9
  749. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/first.json +0 -3
  750. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/name.yaml +0 -2
  751. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/second.json +0 -3
  752. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/single.yaml +0 -2
  753. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/third_utf8.json +0 -3
  754. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/utf8.yaml +0 -3
  755. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data2/single.yaml +0 -2
  756. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/environment.conf +0 -2
  757. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/hiera.yaml +0 -22
  758. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/manifests/site.pp +0 -5
  759. data/spec/fixtures/unit/data_providers/environments/hiera_misc/data/common.yaml +0 -48
  760. data/spec/fixtures/unit/data_providers/environments/hiera_misc/environment.conf +0 -2
  761. data/spec/fixtures/unit/data_providers/environments/hiera_misc/manifests/site.pp +0 -1
  762. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/data/common.yaml +0 -30
  763. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/manifests/init.pp +0 -13
  764. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/metadata.json +0 -9
  765. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/data/common.yaml +0 -4
  766. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/data/specific.yaml +0 -4
  767. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/environment.conf +0 -2
  768. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/hiera.yaml +0 -7
  769. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/manifests/site.pp +0 -1
  770. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/first.json +0 -3
  771. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/name.yaml +0 -2
  772. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/second.json +0 -3
  773. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/server1.yaml +0 -1
  774. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/server2.yaml +0 -1
  775. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/single.yaml +0 -2
  776. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data2/single.yaml +0 -2
  777. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/hiera.yaml +0 -20
  778. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/manifests/init.pp +0 -5
  779. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/metadata.json +0 -9
  780. data/spec/fixtures/unit/data_providers/environments/hiera_modules/data/common.yaml +0 -4
  781. data/spec/fixtures/unit/data_providers/environments/hiera_modules/data/specific.yaml +0 -4
  782. data/spec/fixtures/unit/data_providers/environments/hiera_modules/environment.conf +0 -2
  783. data/spec/fixtures/unit/data_providers/environments/hiera_modules/hiera.yaml +0 -7
  784. data/spec/fixtures/unit/data_providers/environments/hiera_modules/manifests/site.pp +0 -1
  785. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/data/common.yaml +0 -6
  786. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/hiera.yaml +0 -5
  787. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/manifests/init.pp +0 -2
  788. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/metadata.json +0 -9
  789. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/data/common.yaml +0 -4
  790. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/hiera.yaml +0 -5
  791. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/manifests/init.pp +0 -3
  792. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/metadata.json +0 -9
  793. data/spec/fixtures/unit/data_providers/environments/production/environment.conf +0 -2
  794. data/spec/fixtures/unit/data_providers/environments/production/lib/puppet/functions/environment/data.rb +0 -9
  795. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/lib/puppet/functions/abc/data.rb +0 -9
  796. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/manifests/init.pp +0 -10
  797. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/metadata.json +0 -9
  798. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/functions/data.pp +0 -6
  799. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/manifests/init.pp +0 -9
  800. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/metadata.json +0 -9
  801. data/spec/fixtures/unit/forge/bacula-releases.json +0 -128
  802. data/spec/fixtures/unit/forge/bacula.json +0 -76
  803. data/spec/fixtures/unit/forge/bacula.tar.gz +0 -0
  804. data/spec/fixtures/unit/functions/hiera/hiera/backend/hieraspec_backend.rb +0 -22
  805. data/spec/fixtures/unit/functions/lookup/data/common.yaml +0 -19
  806. data/spec/fixtures/unit/functions/lookup/hiera/backend/custom_backend.rb +0 -18
  807. data/spec/fixtures/unit/functions/lookup/hiera/backend/other_backend.rb +0 -7
  808. data/spec/fixtures/unit/functions/lookup_fixture/data/common.yaml +0 -19
  809. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/environment.conf +0 -2
  810. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/lib/puppet/functions/environment/data.rb +0 -13
  811. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/abc/lib/puppet/functions/abc/data.rb +0 -9
  812. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/abc/manifests/init.pp +0 -8
  813. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/abc/metadata.json +0 -9
  814. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bad_data/lib/puppet/functions/bad_data/data.rb +0 -7
  815. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bad_data/manifests/init.pp +0 -2
  816. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bad_data/metadata.json +0 -9
  817. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bca/lib/puppet/functions/bca/data.rb +0 -9
  818. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bca/manifests/init.pp +0 -2
  819. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bca/metadata.json +0 -9
  820. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/data/empty.json +0 -0
  821. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/hiera.yaml +0 -5
  822. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/manifests/init.pp +0 -2
  823. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/metadata.json +0 -9
  824. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/data/empty_key.json +0 -1
  825. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/hiera.yaml +0 -5
  826. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/manifests/init.pp +0 -2
  827. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/metadata.json +0 -9
  828. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/data/empty_key.yaml +0 -1
  829. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/hiera.yaml +0 -5
  830. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/manifests/init.pp +0 -2
  831. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/metadata.json +0 -9
  832. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/data/empty.yaml +0 -2
  833. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/hiera.yaml +0 -5
  834. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/manifests/init.pp +0 -2
  835. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/metadata.json +0 -9
  836. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/data/first.json +0 -4
  837. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/hiera.yaml +0 -8
  838. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/manifests/init.pp +0 -5
  839. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/metadata.json +0 -9
  840. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/lib/puppet/functions/meta/data.rb +0 -9
  841. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/manifests/init.pp +0 -3
  842. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/metadata.json +0 -9
  843. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/no_provider/manifests/init.pp +0 -2
  844. data/spec/fixtures/unit/indirector/data_binding/hiera/global.yaml +0 -10
  845. data/spec/fixtures/unit/indirector/data_binding/hiera/invalid.yaml +0 -1
  846. data/spec/fixtures/unit/indirector/hiera/global.yaml +0 -10
  847. data/spec/fixtures/unit/indirector/hiera/invalid.yaml +0 -1
  848. data/spec/fixtures/unit/module/trailing-comma.json +0 -24
  849. data/spec/fixtures/unit/parser/functions/create_resources/foo/manifests/init.pp +0 -3
  850. data/spec/fixtures/unit/parser/functions/create_resources/foo/manifests/wrongdefine.pp +0 -3
  851. data/spec/fixtures/unit/parser/lexer/aliastest.pp +0 -16
  852. data/spec/fixtures/unit/parser/lexer/append.pp +0 -11
  853. data/spec/fixtures/unit/parser/lexer/argumentdefaults.pp +0 -14
  854. data/spec/fixtures/unit/parser/lexer/arithmetic_expression.pp +0 -8
  855. data/spec/fixtures/unit/parser/lexer/arraytrailingcomma.pp +0 -3
  856. data/spec/fixtures/unit/parser/lexer/casestatement.pp +0 -65
  857. data/spec/fixtures/unit/parser/lexer/classheirarchy.pp +0 -15
  858. data/spec/fixtures/unit/parser/lexer/classincludes.pp +0 -17
  859. data/spec/fixtures/unit/parser/lexer/classpathtest.pp +0 -11
  860. data/spec/fixtures/unit/parser/lexer/collection.pp +0 -10
  861. data/spec/fixtures/unit/parser/lexer/collection_override.pp +0 -8
  862. data/spec/fixtures/unit/parser/lexer/collection_within_virtual_definitions.pp +0 -20
  863. data/spec/fixtures/unit/parser/lexer/componentmetaparams.pp +0 -11
  864. data/spec/fixtures/unit/parser/lexer/componentrequire.pp +0 -8
  865. data/spec/fixtures/unit/parser/lexer/deepclassheirarchy.pp +0 -23
  866. data/spec/fixtures/unit/parser/lexer/defineoverrides.pp +0 -17
  867. data/spec/fixtures/unit/parser/lexer/emptyclass.pp +0 -9
  868. data/spec/fixtures/unit/parser/lexer/emptyexec.pp +0 -3
  869. data/spec/fixtures/unit/parser/lexer/emptyifelse.pp +0 -9
  870. data/spec/fixtures/unit/parser/lexer/falsevalues.pp +0 -3
  871. data/spec/fixtures/unit/parser/lexer/filecreate.pp +0 -11
  872. data/spec/fixtures/unit/parser/lexer/fqdefinition.pp +0 -5
  873. data/spec/fixtures/unit/parser/lexer/fqparents.pp +0 -11
  874. data/spec/fixtures/unit/parser/lexer/funccomma.pp +0 -5
  875. data/spec/fixtures/unit/parser/lexer/hash.pp +0 -33
  876. data/spec/fixtures/unit/parser/lexer/ifexpression.pp +0 -12
  877. data/spec/fixtures/unit/parser/lexer/implicititeration.pp +0 -15
  878. data/spec/fixtures/unit/parser/lexer/multilinecomments.pp +0 -10
  879. data/spec/fixtures/unit/parser/lexer/multipleclass.pp +0 -9
  880. data/spec/fixtures/unit/parser/lexer/multipleinstances.pp +0 -7
  881. data/spec/fixtures/unit/parser/lexer/multisubs.pp +0 -13
  882. data/spec/fixtures/unit/parser/lexer/namevartest.pp +0 -9
  883. data/spec/fixtures/unit/parser/lexer/scopetest.pp +0 -13
  884. data/spec/fixtures/unit/parser/lexer/selectorvalues.pp +0 -49
  885. data/spec/fixtures/unit/parser/lexer/simpledefaults.pp +0 -5
  886. data/spec/fixtures/unit/parser/lexer/simpleselector.pp +0 -38
  887. data/spec/fixtures/unit/parser/lexer/singleary.pp +0 -19
  888. data/spec/fixtures/unit/parser/lexer/singlequote.pp +0 -11
  889. data/spec/fixtures/unit/parser/lexer/singleselector.pp +0 -22
  890. data/spec/fixtures/unit/parser/lexer/subclass_name_duplication.pp +0 -11
  891. data/spec/fixtures/unit/parser/lexer/tag.pp +0 -9
  892. data/spec/fixtures/unit/parser/lexer/tagged.pp +0 -35
  893. data/spec/fixtures/unit/parser/lexer/virtualresources.pp +0 -14
  894. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/binder_config.yaml +0 -10
  895. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/lib/puppet/bindings/confdirtest.rb +0 -10
  896. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/awesome2/lib/puppet/bindings/awesome2/default.rb +0 -20
  897. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/awesome2/lib/puppet_x/awesome2/echo_scheme_handler.rb +0 -18
  898. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/bad/lib/puppet/bindings/bad/default.rb +0 -5
  899. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/good/lib/puppet/bindings/good/default.rb +0 -6
  900. data/spec/fixtures/unit/pops/binder/config/binder_config/nolayer/binder_config.yaml +0 -6
  901. data/spec/fixtures/unit/pops/binder/config/binder_config/ok/binder_config.yaml +0 -9
  902. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/functions/usee_puppet.pp +0 -3
  903. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/functions/usee/callee.rb +0 -5
  904. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/functions/usee/usee_ruby.rb +0 -6
  905. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/type/usee_type.rb +0 -5
  906. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/manifests/init.pp +0 -8
  907. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/types/zero.pp +0 -1
  908. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee2/lib/puppet/functions/usee2/callee.rb +0 -5
  909. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_puppet.pp +0 -5
  910. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_puppet_init.pp +0 -5
  911. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_ruby.pp +0 -5
  912. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/caller.rb +0 -5
  913. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/caller2.rb +0 -5
  914. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_puppet.rb +0 -5
  915. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_puppet_init.rb +0 -5
  916. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_ruby.rb +0 -5
  917. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/manifests/init.pp +0 -87
  918. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/metadata.json +0 -10
  919. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseeone.pp +0 -1
  920. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseezero.pp +0 -1
  921. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load.rb +0 -11
  922. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load2.rb +0 -11
  923. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load3.rb +0 -11
  924. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load4.rb +0 -11
  925. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load5.rb +0 -12
  926. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/callee.rb +0 -8
  927. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/callee_ws.rb +0 -8
  928. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/func_with_syntax_error.rb +0 -9
  929. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/good_func_load.rb +0 -9
  930. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/metadata.json +0 -9
  931. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcalled.pp +0 -3
  932. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcaller.pp +0 -3
  933. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcaller4.pp +0 -3
  934. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/lib/puppet/functions/user/caller.rb +0 -5
  935. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/lib/puppet/functions/user/caller_ws.rb +0 -12
  936. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/lib/puppet/functions/user/callingpuppet.rb +0 -5
  937. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/metadata.json +0 -9
  938. data/spec/fixtures/unit/pops/loaders/loaders/module_no_lib/modules/modulea/functions/hello.pp +0 -3
  939. data/spec/fixtures/unit/pops/loaders/loaders/module_no_lib/modules/modulea/manifests/init.pp +0 -3
  940. data/spec/fixtures/unit/pops/loaders/loaders/module_no_lib/modules/modulea/metadata.json +0 -10
  941. data/spec/fixtures/unit/pops/loaders/loaders/no_modules/manifests/site.pp +0 -10
  942. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/functions/hello.pp +0 -3
  943. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/functions/subspace/hello.pp +0 -3
  944. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/lib/puppet/functions/modulea/rb_func_a.rb +0 -5
  945. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/lib/puppet/functions/rb_func_a.rb +0 -5
  946. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/manifests/init.pp +0 -3
  947. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/metadata.json +0 -10
  948. data/spec/fixtures/unit/pops/loaders/loaders/wo_metadata_module/modules/moduleb/lib/puppet/functions/moduleb/rb_func_b.rb +0 -6
  949. data/spec/fixtures/unit/pops/loaders/loaders/wo_metadata_module/modules/moduleb/manifests/init.pp +0 -3
  950. data/spec/fixtures/unit/pops/parser/lexer/aliastest.pp +0 -16
  951. data/spec/fixtures/unit/pops/parser/lexer/append.pp +0 -11
  952. data/spec/fixtures/unit/pops/parser/lexer/argumentdefaults.pp +0 -14
  953. data/spec/fixtures/unit/pops/parser/lexer/arithmetic_expression.pp +0 -8
  954. data/spec/fixtures/unit/pops/parser/lexer/arraytrailingcomma.pp +0 -3
  955. data/spec/fixtures/unit/pops/parser/lexer/casestatement.pp +0 -65
  956. data/spec/fixtures/unit/pops/parser/lexer/classheirarchy.pp +0 -15
  957. data/spec/fixtures/unit/pops/parser/lexer/classincludes.pp +0 -17
  958. data/spec/fixtures/unit/pops/parser/lexer/classpathtest.pp +0 -11
  959. data/spec/fixtures/unit/pops/parser/lexer/collection.pp +0 -10
  960. data/spec/fixtures/unit/pops/parser/lexer/collection_override.pp +0 -8
  961. data/spec/fixtures/unit/pops/parser/lexer/collection_within_virtual_definitions.pp +0 -20
  962. data/spec/fixtures/unit/pops/parser/lexer/componentmetaparams.pp +0 -11
  963. data/spec/fixtures/unit/pops/parser/lexer/componentrequire.pp +0 -8
  964. data/spec/fixtures/unit/pops/parser/lexer/deepclassheirarchy.pp +0 -23
  965. data/spec/fixtures/unit/pops/parser/lexer/defineoverrides.pp +0 -17
  966. data/spec/fixtures/unit/pops/parser/lexer/emptyclass.pp +0 -9
  967. data/spec/fixtures/unit/pops/parser/lexer/emptyexec.pp +0 -3
  968. data/spec/fixtures/unit/pops/parser/lexer/emptyifelse.pp +0 -9
  969. data/spec/fixtures/unit/pops/parser/lexer/falsevalues.pp +0 -3
  970. data/spec/fixtures/unit/pops/parser/lexer/filecreate.pp +0 -11
  971. data/spec/fixtures/unit/pops/parser/lexer/fqdefinition.pp +0 -5
  972. data/spec/fixtures/unit/pops/parser/lexer/fqparents.pp +0 -11
  973. data/spec/fixtures/unit/pops/parser/lexer/funccomma.pp +0 -5
  974. data/spec/fixtures/unit/pops/parser/lexer/hash.pp +0 -33
  975. data/spec/fixtures/unit/pops/parser/lexer/ifexpression.pp +0 -12
  976. data/spec/fixtures/unit/pops/parser/lexer/implicititeration.pp +0 -15
  977. data/spec/fixtures/unit/pops/parser/lexer/multilinecomments.pp +0 -10
  978. data/spec/fixtures/unit/pops/parser/lexer/multipleclass.pp +0 -9
  979. data/spec/fixtures/unit/pops/parser/lexer/multipleinstances.pp +0 -7
  980. data/spec/fixtures/unit/pops/parser/lexer/multisubs.pp +0 -13
  981. data/spec/fixtures/unit/pops/parser/lexer/namevartest.pp +0 -9
  982. data/spec/fixtures/unit/pops/parser/lexer/scopetest.pp +0 -13
  983. data/spec/fixtures/unit/pops/parser/lexer/selectorvalues.pp +0 -49
  984. data/spec/fixtures/unit/pops/parser/lexer/simpledefaults.pp +0 -5
  985. data/spec/fixtures/unit/pops/parser/lexer/simpleselector.pp +0 -38
  986. data/spec/fixtures/unit/pops/parser/lexer/singleary.pp +0 -19
  987. data/spec/fixtures/unit/pops/parser/lexer/singlequote.pp +0 -11
  988. data/spec/fixtures/unit/pops/parser/lexer/singleselector.pp +0 -22
  989. data/spec/fixtures/unit/pops/parser/lexer/subclass_name_duplication.pp +0 -11
  990. data/spec/fixtures/unit/pops/parser/lexer/tag.pp +0 -9
  991. data/spec/fixtures/unit/pops/parser/lexer/tagged.pp +0 -35
  992. data/spec/fixtures/unit/pops/parser/lexer/virtualresources.pp +0 -14
  993. data/spec/fixtures/unit/provider/aix_object/aix_colon_list_real_world_input.out +0 -1
  994. data/spec/fixtures/unit/provider/aix_object/aix_colon_list_real_world_output.out +0 -1
  995. data/spec/fixtures/unit/provider/cron/crontab/single_line.yaml +0 -272
  996. data/spec/fixtures/unit/provider/cron/crontab/vixie_header.txt +0 -3
  997. data/spec/fixtures/unit/provider/cron/parsed/managed +0 -6
  998. data/spec/fixtures/unit/provider/cron/parsed/simple +0 -9
  999. data/spec/fixtures/unit/provider/package/dnfmodule/dnf-module-list.txt +0 -19
  1000. data/spec/fixtures/unit/provider/package/gem/gem-list-single-package +0 -4
  1001. data/spec/fixtures/unit/provider/package/gem/line-with-1.8.5-warning +0 -14
  1002. data/spec/fixtures/unit/provider/package/openbsd/pkginfo.detail +0 -19
  1003. data/spec/fixtures/unit/provider/package/openbsd/pkginfo.list +0 -10
  1004. data/spec/fixtures/unit/provider/package/openbsd/pkginfo.query +0 -1
  1005. data/spec/fixtures/unit/provider/package/openbsd/pkginfo_flavors.list +0 -2
  1006. data/spec/fixtures/unit/provider/package/pkg/dummy_implicit_version +0 -3
  1007. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris10 +0 -1
  1008. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.certificate_warning +0 -2
  1009. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.ifo.installed +0 -1
  1010. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.ifo.known +0 -1
  1011. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.installed +0 -1
  1012. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.known +0 -1
  1013. data/spec/fixtures/unit/provider/package/pkg/incomplete +0 -1
  1014. data/spec/fixtures/unit/provider/package/pkg/solaris11 +0 -2
  1015. data/spec/fixtures/unit/provider/package/pkg/unknown_status +0 -12
  1016. data/spec/fixtures/unit/provider/package/pkgng/pkg.query +0 -7
  1017. data/spec/fixtures/unit/provider/package/pkgng/pkg.query.zsh +0 -1
  1018. data/spec/fixtures/unit/provider/package/pkgng/pkg.version +0 -5
  1019. data/spec/fixtures/unit/provider/package/puppetserver_gem/gem-list-local-packages +0 -30
  1020. data/spec/fixtures/unit/provider/package/sun/dummy.server +0 -12
  1021. data/spec/fixtures/unit/provider/package/sun/simple +0 -24
  1022. data/spec/fixtures/unit/provider/package/yum/yum-check-update-broken-notices.txt +0 -187
  1023. data/spec/fixtures/unit/provider/package/yum/yum-check-update-multiline.txt +0 -201
  1024. data/spec/fixtures/unit/provider/package/yum/yum-check-update-obsoletes.txt +0 -195
  1025. data/spec/fixtures/unit/provider/package/yum/yum-check-update-plugin-output.txt +0 -36
  1026. data/spec/fixtures/unit/provider/package/yum/yum-check-update-security.txt +0 -184
  1027. data/spec/fixtures/unit/provider/package/yum/yum-check-update-simple.txt +0 -13
  1028. data/spec/fixtures/unit/provider/package/yum/yum-check-update-subscription-manager.txt +0 -9
  1029. data/spec/fixtures/unit/provider/package/zypper/zypper-list-updates-SLES11sp1.out +0 -369
  1030. data/spec/fixtures/unit/provider/package/zypper/zypper-list-updates-empty.out +0 -3
  1031. data/spec/fixtures/unit/provider/package/zypper/zypper-search-uninstalled.out +0 -13
  1032. data/spec/fixtures/unit/provider/parsedfile/aliases.txt +0 -2
  1033. data/spec/fixtures/unit/provider/parsedfile/simple.txt +0 -7
  1034. data/spec/fixtures/unit/provider/service/base/ps_ef.mixed_encoding +0 -3
  1035. data/spec/fixtures/unit/provider/service/gentoo/rc_update_show +0 -30
  1036. data/spec/fixtures/unit/provider/service/openbsd/rcctl_getall +0 -6
  1037. data/spec/fixtures/unit/provider/service/openrc/rcservice_list +0 -8
  1038. data/spec/fixtures/unit/provider/service/openrc/rcstatus +0 -43
  1039. data/spec/fixtures/unit/provider/service/smf/svcs_fmri.out +0 -6
  1040. data/spec/fixtures/unit/provider/service/smf/svcs_instances.out +0 -4
  1041. data/spec/fixtures/unit/provider/service/smf/svcs_multiple_fmris.out +0 -13
  1042. data/spec/fixtures/unit/provider/service/systemd/list_unit_files_services +0 -16
  1043. data/spec/fixtures/unit/provider/service/systemd/list_unit_files_services_vendor_preset +0 -9
  1044. data/spec/fixtures/unit/provider/user/aix/aix_passwd_file.out +0 -36
  1045. data/spec/fixtures/unit/reports/tagmail/tagmail_email.conf +0 -2
  1046. data/spec/fixtures/unit/reports/tagmail/tagmail_failers.conf +0 -3
  1047. data/spec/fixtures/unit/reports/tagmail/tagmail_passers.conf +0 -30
  1048. data/spec/fixtures/unit/ssl/certificate/old-style-cert-exts.pem +0 -33
  1049. data/spec/fixtures/unit/ssl/certificate_request/old-style-cert-request.pem +0 -28
  1050. data/spec/fixtures/unit/type/user/authorized_keys +0 -6
  1051. data/spec/fixtures/unit/util/filetype/aixtab_output +0 -44
  1052. data/spec/fixtures/unit/util/filetype/suntab_output +0 -9
  1053. data/spec/fixtures/unit/util/monkey_patches/x509.pem +0 -32
  1054. data/spec/fixtures/unit/util/rdoc/basic.pp +0 -16
  1055. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_md5/should_fetch_if_not_on_the_local_disk.yml +0 -104
  1056. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_md5/should_not_update_if_content_on_disk_is_up-to-date.yml +0 -108
  1057. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_md5/should_update_if_content_differs_on_disk.yml +0 -108
  1058. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_mtime/should_fetch_if_mtime_is_older_on_disk.yml +0 -104
  1059. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_mtime/should_fetch_if_no_header_specified.yml +0 -100
  1060. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_mtime/should_fetch_if_not_on_the_local_disk.yml +0 -104
  1061. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_mtime/should_not_update_if_mtime_is_newer_on_disk.yml +0 -104
  1062. data/spec/fixtures/yaml/report2.6.x.yaml +0 -190
  1063. data/spec/fixtures/yaml/test.local.yaml +0 -16
  1064. data/spec/integration/agent/logging_spec.rb +0 -179
  1065. data/spec/integration/application/agent_spec.rb +0 -1067
  1066. data/spec/integration/application/apply_spec.rb +0 -781
  1067. data/spec/integration/application/doc_spec.rb +0 -24
  1068. data/spec/integration/application/filebucket_spec.rb +0 -255
  1069. data/spec/integration/application/help_spec.rb +0 -44
  1070. data/spec/integration/application/lookup_spec.rb +0 -275
  1071. data/spec/integration/application/module_spec.rb +0 -230
  1072. data/spec/integration/application/plugin_spec.rb +0 -145
  1073. data/spec/integration/application/resource_spec.rb +0 -68
  1074. data/spec/integration/application/ssl_spec.rb +0 -20
  1075. data/spec/integration/configurer_spec.rb +0 -166
  1076. data/spec/integration/data_binding_spec.rb +0 -278
  1077. data/spec/integration/defaults_spec.rb +0 -279
  1078. data/spec/integration/directory_environments_spec.rb +0 -67
  1079. data/spec/integration/environments/default_manifest_spec.rb +0 -215
  1080. data/spec/integration/environments/setting_hooks_spec.rb +0 -27
  1081. data/spec/integration/environments/settings_interpolation_spec.rb +0 -106
  1082. data/spec/integration/environments/settings_spec.rb +0 -128
  1083. data/spec/integration/http/client_spec.rb +0 -229
  1084. data/spec/integration/indirector/catalog/compiler_spec.rb +0 -75
  1085. data/spec/integration/indirector/direct_file_server_spec.rb +0 -90
  1086. data/spec/integration/indirector/facts/facter_spec.rb +0 -168
  1087. data/spec/integration/indirector/file_content/file_server_spec.rb +0 -106
  1088. data/spec/integration/indirector/file_metadata/file_server_spec.rb +0 -75
  1089. data/spec/integration/l10n/compiler_spec.rb +0 -37
  1090. data/spec/integration/network/formats_spec.rb +0 -90
  1091. data/spec/integration/network/http/api/indirected_routes_spec.rb +0 -60
  1092. data/spec/integration/network/http_pool_spec.rb +0 -275
  1093. data/spec/integration/node/environment_spec.rb +0 -170
  1094. data/spec/integration/node/facts_spec.rb +0 -40
  1095. data/spec/integration/node_spec.rb +0 -77
  1096. data/spec/integration/parser/catalog_spec.rb +0 -68
  1097. data/spec/integration/parser/class_spec.rb +0 -33
  1098. data/spec/integration/parser/collection_spec.rb +0 -362
  1099. data/spec/integration/parser/compiler_spec.rb +0 -1221
  1100. data/spec/integration/parser/conditionals_spec.rb +0 -95
  1101. data/spec/integration/parser/dynamic_scoping_spec.rb +0 -66
  1102. data/spec/integration/parser/environment_spec.rb +0 -47
  1103. data/spec/integration/parser/node_spec.rb +0 -163
  1104. data/spec/integration/parser/parameter_defaults_spec.rb +0 -358
  1105. data/spec/integration/parser/pcore_resource_spec.rb +0 -243
  1106. data/spec/integration/parser/resource_expressions_spec.rb +0 -222
  1107. data/spec/integration/parser/scope_spec.rb +0 -735
  1108. data/spec/integration/parser/script_compiler_spec.rb +0 -113
  1109. data/spec/integration/parser/undef_param_spec.rb +0 -95
  1110. data/spec/integration/provider/file/windows_spec.rb +0 -162
  1111. data/spec/integration/resource/catalog_spec.rb +0 -47
  1112. data/spec/integration/resource/type_collection_spec.rb +0 -88
  1113. data/spec/integration/transaction/report_spec.rb +0 -706
  1114. data/spec/integration/transaction_spec.rb +0 -553
  1115. data/spec/integration/type/exec_spec.rb +0 -114
  1116. data/spec/integration/type/file_spec.rb +0 -2012
  1117. data/spec/integration/type/notify_spec.rb +0 -46
  1118. data/spec/integration/type/package_spec.rb +0 -200
  1119. data/spec/integration/type/tidy_spec.rb +0 -45
  1120. data/spec/integration/type_spec.rb +0 -30
  1121. data/spec/integration/util/autoload_spec.rb +0 -104
  1122. data/spec/integration/util/execution_spec.rb +0 -104
  1123. data/spec/integration/util/rdoc/parser_spec.rb +0 -171
  1124. data/spec/integration/util/settings_spec.rb +0 -115
  1125. data/spec/integration/util/windows/adsi_spec.rb +0 -207
  1126. data/spec/integration/util/windows/monkey_patches/process_spec.rb +0 -231
  1127. data/spec/integration/util/windows/principal_spec.rb +0 -279
  1128. data/spec/integration/util/windows/process_spec.rb +0 -96
  1129. data/spec/integration/util/windows/registry_spec.rb +0 -334
  1130. data/spec/integration/util/windows/security_spec.rb +0 -1010
  1131. data/spec/integration/util/windows/user_spec.rb +0 -226
  1132. data/spec/integration/util_spec.rb +0 -104
  1133. data/spec/lib/matchers/containment_matchers.rb +0 -52
  1134. data/spec/lib/matchers/include_in_order.rb +0 -20
  1135. data/spec/lib/matchers/include_in_order_spec.rb +0 -30
  1136. data/spec/lib/matchers/json.rb +0 -132
  1137. data/spec/lib/matchers/match_tokens2.rb +0 -74
  1138. data/spec/lib/matchers/relationship_graph_matchers.rb +0 -48
  1139. data/spec/lib/matchers/resource.rb +0 -74
  1140. data/spec/lib/puppet/certificate_factory.rb +0 -218
  1141. data/spec/lib/puppet/face/1.0.0/huzzah.rb +0 -8
  1142. data/spec/lib/puppet/face/basetest.rb +0 -51
  1143. data/spec/lib/puppet/face/huzzah/obsolete.rb +0 -6
  1144. data/spec/lib/puppet/face/huzzah.rb +0 -8
  1145. data/spec/lib/puppet/face/version_matching.rb +0 -12
  1146. data/spec/lib/puppet/indirector/indirector_testing/json.rb +0 -6
  1147. data/spec/lib/puppet/indirector/indirector_testing/memory.rb +0 -7
  1148. data/spec/lib/puppet/indirector/indirector_testing/msgpack.rb +0 -6
  1149. data/spec/lib/puppet/indirector_proxy.rb +0 -34
  1150. data/spec/lib/puppet/indirector_testing.rb +0 -31
  1151. data/spec/lib/puppet/test_ca.rb +0 -157
  1152. data/spec/lib/puppet_spec/character_encoding.rb +0 -12
  1153. data/spec/lib/puppet_spec/compiler.rb +0 -112
  1154. data/spec/lib/puppet_spec/files.rb +0 -107
  1155. data/spec/lib/puppet_spec/fixtures.rb +0 -52
  1156. data/spec/lib/puppet_spec/handler.rb +0 -53
  1157. data/spec/lib/puppet_spec/https.rb +0 -95
  1158. data/spec/lib/puppet_spec/language.rb +0 -75
  1159. data/spec/lib/puppet_spec/matchers.rb +0 -68
  1160. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +0 -56
  1161. data/spec/lib/puppet_spec/module_tool/stub_source.rb +0 -136
  1162. data/spec/lib/puppet_spec/modules.rb +0 -82
  1163. data/spec/lib/puppet_spec/network.rb +0 -127
  1164. data/spec/lib/puppet_spec/pops.rb +0 -29
  1165. data/spec/lib/puppet_spec/puppetserver.rb +0 -180
  1166. data/spec/lib/puppet_spec/scope.rb +0 -13
  1167. data/spec/lib/puppet_spec/settings.rb +0 -39
  1168. data/spec/lib/puppet_spec/ssl.rb +0 -265
  1169. data/spec/lib/puppet_spec/unindent.rb +0 -5
  1170. data/spec/lib/puppet_spec/verbose.rb +0 -20
  1171. data/spec/shared_behaviours/all_parsedfile_providers.rb +0 -21
  1172. data/spec/shared_behaviours/an_indirector_face.rb +0 -6
  1173. data/spec/shared_behaviours/documentation_on_faces.rb +0 -261
  1174. data/spec/shared_behaviours/file_server_terminus.rb +0 -38
  1175. data/spec/shared_behaviours/file_serving.rb +0 -73
  1176. data/spec/shared_behaviours/hiera_indirections.rb +0 -98
  1177. data/spec/shared_behaviours/iterative_functions.rb +0 -68
  1178. data/spec/shared_behaviours/memory_terminus.rb +0 -28
  1179. data/spec/shared_behaviours/path_parameters.rb +0 -160
  1180. data/spec/shared_behaviours/store_configs_terminus.rb +0 -21
  1181. data/spec/shared_behaviours/things_that_declare_options.rb +0 -262
  1182. data/spec/shared_contexts/checksum.rb +0 -65
  1183. data/spec/shared_contexts/digests.rb +0 -100
  1184. data/spec/shared_contexts/https.rb +0 -29
  1185. data/spec/shared_contexts/l10n.rb +0 -32
  1186. data/spec/shared_contexts/provider.rb +0 -16
  1187. data/spec/shared_contexts/types_setup.rb +0 -204
  1188. data/spec/shared_examples/rhel_package_provider.rb +0 -398
  1189. data/spec/spec_helper.rb +0 -240
  1190. data/spec/unit/agent/disabler_spec.rb +0 -63
  1191. data/spec/unit/agent/locker_spec.rb +0 -99
  1192. data/spec/unit/agent_spec.rb +0 -411
  1193. data/spec/unit/application/agent_spec.rb +0 -640
  1194. data/spec/unit/application/apply_spec.rb +0 -559
  1195. data/spec/unit/application/config_spec.rb +0 -232
  1196. data/spec/unit/application/describe_spec.rb +0 -135
  1197. data/spec/unit/application/device_spec.rb +0 -616
  1198. data/spec/unit/application/doc_spec.rb +0 -333
  1199. data/spec/unit/application/face_base_spec.rb +0 -454
  1200. data/spec/unit/application/facts_spec.rb +0 -139
  1201. data/spec/unit/application/filebucket_spec.rb +0 -319
  1202. data/spec/unit/application/indirection_base_spec.rb +0 -50
  1203. data/spec/unit/application/lookup_spec.rb +0 -698
  1204. data/spec/unit/application/resource_spec.rb +0 -229
  1205. data/spec/unit/application/ssl_spec.rb +0 -507
  1206. data/spec/unit/application_spec.rb +0 -730
  1207. data/spec/unit/certificate_factory_spec.rb +0 -170
  1208. data/spec/unit/concurrent/lock_spec.rb +0 -29
  1209. data/spec/unit/concurrent/thread_local_singleton_spec.rb +0 -39
  1210. data/spec/unit/configurer/downloader_spec.rb +0 -252
  1211. data/spec/unit/configurer/fact_handler_spec.rb +0 -147
  1212. data/spec/unit/configurer/plugin_handler_spec.rb +0 -152
  1213. data/spec/unit/configurer_spec.rb +0 -1488
  1214. data/spec/unit/confine/exists_spec.rb +0 -82
  1215. data/spec/unit/confine/false_spec.rb +0 -78
  1216. data/spec/unit/confine/feature_spec.rb +0 -59
  1217. data/spec/unit/confine/true_spec.rb +0 -78
  1218. data/spec/unit/confine/variable_spec.rb +0 -105
  1219. data/spec/unit/confine_collection_spec.rb +0 -132
  1220. data/spec/unit/confine_spec.rb +0 -99
  1221. data/spec/unit/confiner_spec.rb +0 -61
  1222. data/spec/unit/context/trusted_information_spec.rb +0 -213
  1223. data/spec/unit/context_spec.rb +0 -217
  1224. data/spec/unit/daemon_spec.rb +0 -176
  1225. data/spec/unit/data_binding_spec.rb +0 -11
  1226. data/spec/unit/data_providers/function_data_provider_spec.rb +0 -122
  1227. data/spec/unit/data_providers/hiera_data_provider_spec.rb +0 -362
  1228. data/spec/unit/datatypes_spec.rb +0 -352
  1229. data/spec/unit/defaults_spec.rb +0 -182
  1230. data/spec/unit/environments_spec.rb +0 -1186
  1231. data/spec/unit/etc_spec.rb +0 -465
  1232. data/spec/unit/external/pson_spec.rb +0 -58
  1233. data/spec/unit/face/config_spec.rb +0 -402
  1234. data/spec/unit/face/epp_face_spec.rb +0 -385
  1235. data/spec/unit/face/facts_spec.rb +0 -78
  1236. data/spec/unit/face/generate_spec.rb +0 -293
  1237. data/spec/unit/face/help_spec.rb +0 -208
  1238. data/spec/unit/face/module/install_spec.rb +0 -40
  1239. data/spec/unit/face/module/list_spec.rb +0 -256
  1240. data/spec/unit/face/module/uninstall_spec.rb +0 -45
  1241. data/spec/unit/face/module/upgrade_spec.rb +0 -26
  1242. data/spec/unit/face/node_spec.rb +0 -129
  1243. data/spec/unit/face/parser_spec.rb +0 -310
  1244. data/spec/unit/face/plugin_spec.rb +0 -158
  1245. data/spec/unit/face_spec.rb +0 -1
  1246. data/spec/unit/facter_impl_spec.rb +0 -31
  1247. data/spec/unit/file_bucket/dipper_spec.rb +0 -405
  1248. data/spec/unit/file_bucket/file_spec.rb +0 -58
  1249. data/spec/unit/file_serving/base_spec.rb +0 -164
  1250. data/spec/unit/file_serving/configuration/parser_spec.rb +0 -206
  1251. data/spec/unit/file_serving/configuration_spec.rb +0 -240
  1252. data/spec/unit/file_serving/content_spec.rb +0 -98
  1253. data/spec/unit/file_serving/fileset_spec.rb +0 -417
  1254. data/spec/unit/file_serving/http_metadata_spec.rb +0 -109
  1255. data/spec/unit/file_serving/metadata_spec.rb +0 -551
  1256. data/spec/unit/file_serving/mount/file_spec.rb +0 -188
  1257. data/spec/unit/file_serving/mount/locales_spec.rb +0 -72
  1258. data/spec/unit/file_serving/mount/modules_spec.rb +0 -69
  1259. data/spec/unit/file_serving/mount/pluginfacts_spec.rb +0 -72
  1260. data/spec/unit/file_serving/mount/plugins_spec.rb +0 -72
  1261. data/spec/unit/file_serving/mount/scripts_spec.rb +0 -69
  1262. data/spec/unit/file_serving/mount/tasks_spec.rb +0 -71
  1263. data/spec/unit/file_serving/mount_spec.rb +0 -30
  1264. data/spec/unit/file_serving/terminus_helper_spec.rb +0 -114
  1265. data/spec/unit/file_serving/terminus_selector_spec.rb +0 -84
  1266. data/spec/unit/file_system/path_pattern_spec.rb +0 -153
  1267. data/spec/unit/file_system/uniquefile_spec.rb +0 -245
  1268. data/spec/unit/file_system_spec.rb +0 -1198
  1269. data/spec/unit/forge/errors_spec.rb +0 -80
  1270. data/spec/unit/forge/forge_spec.rb +0 -69
  1271. data/spec/unit/forge/module_release_spec.rb +0 -331
  1272. data/spec/unit/forge/repository_spec.rb +0 -154
  1273. data/spec/unit/forge_spec.rb +0 -210
  1274. data/spec/unit/functions/abs_spec.rb +0 -70
  1275. data/spec/unit/functions/all_spec.rb +0 -97
  1276. data/spec/unit/functions/annotate_spec.rb +0 -175
  1277. data/spec/unit/functions/any_spec.rb +0 -109
  1278. data/spec/unit/functions/assert_type_spec.rb +0 -97
  1279. data/spec/unit/functions/binary_file_spec.rb +0 -46
  1280. data/spec/unit/functions/break_spec.rb +0 -207
  1281. data/spec/unit/functions/call_spec.rb +0 -131
  1282. data/spec/unit/functions/camelcase_spec.rb +0 -34
  1283. data/spec/unit/functions/capitalize_spec.rb +0 -34
  1284. data/spec/unit/functions/ceiling_spec.rb +0 -65
  1285. data/spec/unit/functions/chomp_spec.rb +0 -46
  1286. data/spec/unit/functions/chop_spec.rb +0 -38
  1287. data/spec/unit/functions/compare_spec.rb +0 -147
  1288. data/spec/unit/functions/contain_spec.rb +0 -297
  1289. data/spec/unit/functions/convert_to_spec.rb +0 -25
  1290. data/spec/unit/functions/defined_spec.rb +0 -288
  1291. data/spec/unit/functions/dig_spec.rb +0 -58
  1292. data/spec/unit/functions/downcase_spec.rb +0 -34
  1293. data/spec/unit/functions/each_spec.rb +0 -107
  1294. data/spec/unit/functions/empty_spec.rb +0 -87
  1295. data/spec/unit/functions/epp_spec.rb +0 -178
  1296. data/spec/unit/functions/filter_spec.rb +0 -145
  1297. data/spec/unit/functions/find_file_spec.rb +0 -69
  1298. data/spec/unit/functions/find_template_spec.rb +0 -69
  1299. data/spec/unit/functions/flatten_spec.rb +0 -31
  1300. data/spec/unit/functions/floor_spec.rb +0 -65
  1301. data/spec/unit/functions/get_spec.rb +0 -135
  1302. data/spec/unit/functions/getvar_spec.rb +0 -121
  1303. data/spec/unit/functions/group_by_spec.rb +0 -40
  1304. data/spec/unit/functions/hiera_spec.rb +0 -495
  1305. data/spec/unit/functions/include_spec.rb +0 -186
  1306. data/spec/unit/functions/index_spec.rb +0 -184
  1307. data/spec/unit/functions/inline_epp_spec.rb +0 -120
  1308. data/spec/unit/functions/join_spec.rb +0 -33
  1309. data/spec/unit/functions/keys_spec.rb +0 -31
  1310. data/spec/unit/functions/length_spec.rb +0 -50
  1311. data/spec/unit/functions/lest_spec.rb +0 -34
  1312. data/spec/unit/functions/logging_spec.rb +0 -62
  1313. data/spec/unit/functions/lookup_fixture_spec.rb +0 -687
  1314. data/spec/unit/functions/lookup_spec.rb +0 -3415
  1315. data/spec/unit/functions/lstrip_spec.rb +0 -30
  1316. data/spec/unit/functions/map_spec.rb +0 -163
  1317. data/spec/unit/functions/match_spec.rb +0 -74
  1318. data/spec/unit/functions/max_spec.rb +0 -158
  1319. data/spec/unit/functions/min_spec.rb +0 -158
  1320. data/spec/unit/functions/module_directory_spec.rb +0 -43
  1321. data/spec/unit/functions/new_spec.rb +0 -776
  1322. data/spec/unit/functions/next_spec.rb +0 -93
  1323. data/spec/unit/functions/partition_spec.rb +0 -40
  1324. data/spec/unit/functions/reduce_spec.rb +0 -85
  1325. data/spec/unit/functions/regsubst_spec.rb +0 -114
  1326. data/spec/unit/functions/require_spec.rb +0 -82
  1327. data/spec/unit/functions/return_spec.rb +0 -109
  1328. data/spec/unit/functions/reverse_each_spec.rb +0 -108
  1329. data/spec/unit/functions/round_spec.rb +0 -41
  1330. data/spec/unit/functions/rstrip_spec.rb +0 -30
  1331. data/spec/unit/functions/scanf_spec.rb +0 -32
  1332. data/spec/unit/functions/shared.rb +0 -94
  1333. data/spec/unit/functions/size_spec.rb +0 -50
  1334. data/spec/unit/functions/slice_spec.rb +0 -136
  1335. data/spec/unit/functions/sort_spec.rb +0 -79
  1336. data/spec/unit/functions/split_spec.rb +0 -59
  1337. data/spec/unit/functions/step_spec.rb +0 -113
  1338. data/spec/unit/functions/strftime_spec.rb +0 -152
  1339. data/spec/unit/functions/strip_spec.rb +0 -30
  1340. data/spec/unit/functions/then_spec.rb +0 -40
  1341. data/spec/unit/functions/tree_each_spec.rb +0 -493
  1342. data/spec/unit/functions/type_spec.rb +0 -35
  1343. data/spec/unit/functions/unique_spec.rb +0 -111
  1344. data/spec/unit/functions/unwrap_spec.rb +0 -37
  1345. data/spec/unit/functions/upcase_spec.rb +0 -34
  1346. data/spec/unit/functions/values_spec.rb +0 -30
  1347. data/spec/unit/functions/versioncmp_spec.rb +0 -70
  1348. data/spec/unit/functions/with_spec.rb +0 -31
  1349. data/spec/unit/functions4_spec.rb +0 -1046
  1350. data/spec/unit/gettext/config_spec.rb +0 -156
  1351. data/spec/unit/gettext/module_loading_spec.rb +0 -53
  1352. data/spec/unit/graph/key_spec.rb +0 -41
  1353. data/spec/unit/graph/rb_tree_map_spec.rb +0 -570
  1354. data/spec/unit/graph/relationship_graph_spec.rb +0 -401
  1355. data/spec/unit/graph/sequential_prioritizer_spec.rb +0 -32
  1356. data/spec/unit/graph/simple_graph_spec.rb +0 -759
  1357. data/spec/unit/hiera/scope_spec.rb +0 -105
  1358. data/spec/unit/hiera_puppet_spec.rb +0 -159
  1359. data/spec/unit/http/client_spec.rb +0 -937
  1360. data/spec/unit/http/dns_spec.rb +0 -281
  1361. data/spec/unit/http/external_client_spec.rb +0 -201
  1362. data/spec/unit/http/factory_spec.rb +0 -160
  1363. data/spec/unit/http/pool_entry_spec.rb +0 -49
  1364. data/spec/unit/http/pool_spec.rb +0 -401
  1365. data/spec/unit/http/proxy_spec.rb +0 -347
  1366. data/spec/unit/http/resolver_spec.rb +0 -133
  1367. data/spec/unit/http/response_spec.rb +0 -75
  1368. data/spec/unit/http/service/ca_spec.rb +0 -281
  1369. data/spec/unit/http/service/compiler_spec.rb +0 -746
  1370. data/spec/unit/http/service/file_server_spec.rb +0 -309
  1371. data/spec/unit/http/service/puppetserver_spec.rb +0 -112
  1372. data/spec/unit/http/service/report_spec.rb +0 -107
  1373. data/spec/unit/http/service_spec.rb +0 -137
  1374. data/spec/unit/http/session_spec.rb +0 -309
  1375. data/spec/unit/http/site_spec.rb +0 -96
  1376. data/spec/unit/indirector/catalog/compiler_spec.rb +0 -1238
  1377. data/spec/unit/indirector/catalog/json_spec.rb +0 -66
  1378. data/spec/unit/indirector/catalog/msgpack_spec.rb +0 -11
  1379. data/spec/unit/indirector/catalog/rest_spec.rb +0 -91
  1380. data/spec/unit/indirector/catalog/store_configs_spec.rb +0 -16
  1381. data/spec/unit/indirector/catalog/yaml_spec.rb +0 -23
  1382. data/spec/unit/indirector/data_binding/hiera_spec.rb +0 -19
  1383. data/spec/unit/indirector/data_binding/none_spec.rb +0 -28
  1384. data/spec/unit/indirector/direct_file_server_spec.rb +0 -87
  1385. data/spec/unit/indirector/envelope_spec.rb +0 -32
  1386. data/spec/unit/indirector/exec_spec.rb +0 -63
  1387. data/spec/unit/indirector/face_spec.rb +0 -80
  1388. data/spec/unit/indirector/facts/facter_spec.rb +0 -290
  1389. data/spec/unit/indirector/facts/json_spec.rb +0 -255
  1390. data/spec/unit/indirector/facts/network_device_spec.rb +0 -77
  1391. data/spec/unit/indirector/facts/rest_spec.rb +0 -99
  1392. data/spec/unit/indirector/facts/store_configs_spec.rb +0 -16
  1393. data/spec/unit/indirector/facts/yaml_spec.rb +0 -255
  1394. data/spec/unit/indirector/file_bucket_file/file_spec.rb +0 -426
  1395. data/spec/unit/indirector/file_bucket_file/rest_spec.rb +0 -89
  1396. data/spec/unit/indirector/file_bucket_file/selector_spec.rb +0 -46
  1397. data/spec/unit/indirector/file_content/file_server_spec.rb +0 -13
  1398. data/spec/unit/indirector/file_content/file_spec.rb +0 -13
  1399. data/spec/unit/indirector/file_content/rest_spec.rb +0 -60
  1400. data/spec/unit/indirector/file_content/selector_spec.rb +0 -9
  1401. data/spec/unit/indirector/file_metadata/file_server_spec.rb +0 -13
  1402. data/spec/unit/indirector/file_metadata/file_spec.rb +0 -57
  1403. data/spec/unit/indirector/file_metadata/http_spec.rb +0 -194
  1404. data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -116
  1405. data/spec/unit/indirector/file_metadata/selector_spec.rb +0 -10
  1406. data/spec/unit/indirector/file_server_spec.rb +0 -288
  1407. data/spec/unit/indirector/hiera_spec.rb +0 -22
  1408. data/spec/unit/indirector/indirection_spec.rb +0 -916
  1409. data/spec/unit/indirector/json_spec.rb +0 -200
  1410. data/spec/unit/indirector/memory_spec.rb +0 -26
  1411. data/spec/unit/indirector/msgpack_spec.rb +0 -199
  1412. data/spec/unit/indirector/node/exec_spec.rb +0 -107
  1413. data/spec/unit/indirector/node/json_spec.rb +0 -33
  1414. data/spec/unit/indirector/node/memory_spec.rb +0 -16
  1415. data/spec/unit/indirector/node/msgpack_spec.rb +0 -23
  1416. data/spec/unit/indirector/node/plain_spec.rb +0 -34
  1417. data/spec/unit/indirector/node/rest_spec.rb +0 -66
  1418. data/spec/unit/indirector/node/store_configs_spec.rb +0 -16
  1419. data/spec/unit/indirector/node/yaml_spec.rb +0 -23
  1420. data/spec/unit/indirector/none_spec.rb +0 -33
  1421. data/spec/unit/indirector/plain_spec.rb +0 -26
  1422. data/spec/unit/indirector/report/json_spec.rb +0 -72
  1423. data/spec/unit/indirector/report/msgpack_spec.rb +0 -27
  1424. data/spec/unit/indirector/report/processor_spec.rb +0 -99
  1425. data/spec/unit/indirector/report/rest_spec.rb +0 -58
  1426. data/spec/unit/indirector/report/yaml_spec.rb +0 -91
  1427. data/spec/unit/indirector/request_spec.rb +0 -295
  1428. data/spec/unit/indirector/resource/ral_spec.rb +0 -89
  1429. data/spec/unit/indirector/resource/store_configs_spec.rb +0 -20
  1430. data/spec/unit/indirector/rest_spec.rb +0 -149
  1431. data/spec/unit/indirector/terminus_spec.rb +0 -264
  1432. data/spec/unit/indirector/yaml_spec.rb +0 -188
  1433. data/spec/unit/indirector_spec.rb +0 -148
  1434. data/spec/unit/info_service_spec.rb +0 -575
  1435. data/spec/unit/interface/action_builder_spec.rb +0 -216
  1436. data/spec/unit/interface/action_manager_spec.rb +0 -254
  1437. data/spec/unit/interface/action_spec.rb +0 -670
  1438. data/spec/unit/interface/documentation_spec.rb +0 -32
  1439. data/spec/unit/interface/face_collection_spec.rb +0 -219
  1440. data/spec/unit/interface/option_builder_spec.rb +0 -86
  1441. data/spec/unit/interface/option_spec.rb +0 -156
  1442. data/spec/unit/interface_spec.rb +0 -305
  1443. data/spec/unit/module_spec.rb +0 -985
  1444. data/spec/unit/module_tool/application_spec.rb +0 -25
  1445. data/spec/unit/module_tool/applications/checksummer_spec.rb +0 -115
  1446. data/spec/unit/module_tool/applications/installer_spec.rb +0 -473
  1447. data/spec/unit/module_tool/applications/uninstaller_spec.rb +0 -181
  1448. data/spec/unit/module_tool/applications/unpacker_spec.rb +0 -75
  1449. data/spec/unit/module_tool/applications/upgrader_spec.rb +0 -337
  1450. data/spec/unit/module_tool/install_directory_spec.rb +0 -70
  1451. data/spec/unit/module_tool/installed_modules_spec.rb +0 -49
  1452. data/spec/unit/module_tool/metadata_spec.rb +0 -330
  1453. data/spec/unit/module_tool/tar/gnu_spec.rb +0 -23
  1454. data/spec/unit/module_tool/tar/mini_spec.rb +0 -109
  1455. data/spec/unit/module_tool/tar_spec.rb +0 -36
  1456. data/spec/unit/module_tool_spec.rb +0 -304
  1457. data/spec/unit/network/authconfig_spec.rb +0 -8
  1458. data/spec/unit/network/authorization_spec.rb +0 -8
  1459. data/spec/unit/network/format_handler_spec.rb +0 -93
  1460. data/spec/unit/network/format_spec.rb +0 -205
  1461. data/spec/unit/network/format_support_spec.rb +0 -199
  1462. data/spec/unit/network/formats_spec.rb +0 -584
  1463. data/spec/unit/network/http/api/indirected_routes_spec.rb +0 -425
  1464. data/spec/unit/network/http/api/master_spec.rb +0 -38
  1465. data/spec/unit/network/http/api/server/v3/environments_spec.rb +0 -51
  1466. data/spec/unit/network/http/api/server/v3_spec.rb +0 -78
  1467. data/spec/unit/network/http/api_spec.rb +0 -109
  1468. data/spec/unit/network/http/connection_spec.rb +0 -636
  1469. data/spec/unit/network/http/error_spec.rb +0 -30
  1470. data/spec/unit/network/http/handler_spec.rb +0 -164
  1471. data/spec/unit/network/http/request_spec.rb +0 -108
  1472. data/spec/unit/network/http/response_spec.rb +0 -106
  1473. data/spec/unit/network/http/route_spec.rb +0 -90
  1474. data/spec/unit/network/http_pool_spec.rb +0 -145
  1475. data/spec/unit/network/uri_spec.rb +0 -47
  1476. data/spec/unit/node/environment_spec.rb +0 -612
  1477. data/spec/unit/node/facts_spec.rb +0 -225
  1478. data/spec/unit/node_spec.rb +0 -434
  1479. data/spec/unit/other/selinux_spec.rb +0 -27
  1480. data/spec/unit/parameter/boolean_spec.rb +0 -35
  1481. data/spec/unit/parameter/package_options_spec.rb +0 -43
  1482. data/spec/unit/parameter/path_spec.rb +0 -23
  1483. data/spec/unit/parameter/value_collection_spec.rb +0 -160
  1484. data/spec/unit/parameter/value_spec.rb +0 -82
  1485. data/spec/unit/parameter_spec.rb +0 -272
  1486. data/spec/unit/parser/ast/block_expression_spec.rb +0 -66
  1487. data/spec/unit/parser/ast/leaf_spec.rb +0 -136
  1488. data/spec/unit/parser/compiler_spec.rb +0 -1020
  1489. data/spec/unit/parser/files_spec.rb +0 -101
  1490. data/spec/unit/parser/functions/create_resources_spec.rb +0 -326
  1491. data/spec/unit/parser/functions/digest_spec.rb +0 -26
  1492. data/spec/unit/parser/functions/fail_spec.rb +0 -23
  1493. data/spec/unit/parser/functions/file_spec.rb +0 -99
  1494. data/spec/unit/parser/functions/fqdn_rand_spec.rb +0 -87
  1495. data/spec/unit/parser/functions/generate_spec.rb +0 -124
  1496. data/spec/unit/parser/functions/hiera_array_spec.rb +0 -12
  1497. data/spec/unit/parser/functions/hiera_hash_spec.rb +0 -12
  1498. data/spec/unit/parser/functions/hiera_include_spec.rb +0 -12
  1499. data/spec/unit/parser/functions/hiera_spec.rb +0 -12
  1500. data/spec/unit/parser/functions/inline_template_spec.rb +0 -36
  1501. data/spec/unit/parser/functions/lookup_spec.rb +0 -14
  1502. data/spec/unit/parser/functions/realize_spec.rb +0 -70
  1503. data/spec/unit/parser/functions/regsubst_spec.rb +0 -19
  1504. data/spec/unit/parser/functions/scanf_spec.rb +0 -25
  1505. data/spec/unit/parser/functions/shellquote_spec.rb +0 -66
  1506. data/spec/unit/parser/functions/split_spec.rb +0 -13
  1507. data/spec/unit/parser/functions/sprintf_spec.rb +0 -68
  1508. data/spec/unit/parser/functions/tag_spec.rb +0 -30
  1509. data/spec/unit/parser/functions/tagged_spec.rb +0 -36
  1510. data/spec/unit/parser/functions/template_spec.rb +0 -93
  1511. data/spec/unit/parser/functions/versioncmp_spec.rb +0 -28
  1512. data/spec/unit/parser/functions_spec.rb +0 -156
  1513. data/spec/unit/parser/relationship_spec.rb +0 -74
  1514. data/spec/unit/parser/resource/param_spec.rb +0 -32
  1515. data/spec/unit/parser/resource_spec.rb +0 -657
  1516. data/spec/unit/parser/scope_spec.rb +0 -698
  1517. data/spec/unit/parser/templatewrapper_spec.rb +0 -111
  1518. data/spec/unit/parser/type_loader_spec.rb +0 -202
  1519. data/spec/unit/plan_spec.rb +0 -65
  1520. data/spec/unit/pops/adaptable_spec.rb +0 -139
  1521. data/spec/unit/pops/benchmark_spec.rb +0 -123
  1522. data/spec/unit/pops/containment_spec.rb +0 -0
  1523. data/spec/unit/pops/evaluator/access_ops_spec.rb +0 -560
  1524. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +0 -317
  1525. data/spec/unit/pops/evaluator/basic_expressions_spec.rb +0 -101
  1526. data/spec/unit/pops/evaluator/collections_ops_spec.rb +0 -108
  1527. data/spec/unit/pops/evaluator/comparison_ops_spec.rb +0 -267
  1528. data/spec/unit/pops/evaluator/conditionals_spec.rb +0 -189
  1529. data/spec/unit/pops/evaluator/deferred_resolver_spec.rb +0 -46
  1530. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +0 -1639
  1531. data/spec/unit/pops/evaluator/evaluator_rspec_helper.rb +0 -75
  1532. data/spec/unit/pops/evaluator/json_strict_literal_evaluator_spec.rb +0 -63
  1533. data/spec/unit/pops/evaluator/literal_evaluator_spec.rb +0 -43
  1534. data/spec/unit/pops/evaluator/logical_ops_spec.rb +0 -89
  1535. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +0 -181
  1536. data/spec/unit/pops/evaluator/string_interpolation_spec.rb +0 -43
  1537. data/spec/unit/pops/evaluator/variables_spec.rb +0 -88
  1538. data/spec/unit/pops/factory_rspec_helper.rb +0 -65
  1539. data/spec/unit/pops/factory_spec.rb +0 -309
  1540. data/spec/unit/pops/issues_spec.rb +0 -210
  1541. data/spec/unit/pops/label_provider_spec.rb +0 -46
  1542. data/spec/unit/pops/loaders/dependency_loader_spec.rb +0 -122
  1543. data/spec/unit/pops/loaders/environment_loader_spec.rb +0 -172
  1544. data/spec/unit/pops/loaders/loader_paths_spec.rb +0 -43
  1545. data/spec/unit/pops/loaders/loader_spec.rb +0 -516
  1546. data/spec/unit/pops/loaders/loaders_spec.rb +0 -863
  1547. data/spec/unit/pops/loaders/module_loaders_spec.rb +0 -268
  1548. data/spec/unit/pops/loaders/static_loader_spec.rb +0 -85
  1549. data/spec/unit/pops/lookup/context_spec.rb +0 -333
  1550. data/spec/unit/pops/lookup/interpolation_spec.rb +0 -389
  1551. data/spec/unit/pops/lookup/lookup_spec.rb +0 -375
  1552. data/spec/unit/pops/merge_strategy_spec.rb +0 -17
  1553. data/spec/unit/pops/migration_spec.rb +0 -51
  1554. data/spec/unit/pops/model/model_spec.rb +0 -41
  1555. data/spec/unit/pops/model/pn_transformer_spec.rb +0 -56
  1556. data/spec/unit/pops/parser/epp_parser_spec.rb +0 -115
  1557. data/spec/unit/pops/parser/evaluating_parser_spec.rb +0 -89
  1558. data/spec/unit/pops/parser/lexer2_spec.rb +0 -942
  1559. data/spec/unit/pops/parser/locator_spec.rb +0 -86
  1560. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -380
  1561. data/spec/unit/pops/parser/parse_calls_spec.rb +0 -171
  1562. data/spec/unit/pops/parser/parse_conditionals_spec.rb +0 -184
  1563. data/spec/unit/pops/parser/parse_containers_spec.rb +0 -247
  1564. data/spec/unit/pops/parser/parse_functions_spec.rb +0 -19
  1565. data/spec/unit/pops/parser/parse_heredoc_spec.rb +0 -276
  1566. data/spec/unit/pops/parser/parse_lambda_spec.rb +0 -19
  1567. data/spec/unit/pops/parser/parse_plan_spec.rb +0 -47
  1568. data/spec/unit/pops/parser/parse_resource_spec.rb +0 -328
  1569. data/spec/unit/pops/parser/parser_rspec_helper.rb +0 -17
  1570. data/spec/unit/pops/parser/parser_spec.rb +0 -211
  1571. data/spec/unit/pops/parser/parsing_typed_parameters_spec.rb +0 -65
  1572. data/spec/unit/pops/parser/pn_parser_spec.rb +0 -100
  1573. data/spec/unit/pops/pn_spec.rb +0 -147
  1574. data/spec/unit/pops/puppet_stack_spec.rb +0 -108
  1575. data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -37
  1576. data/spec/unit/pops/serialization/packer_spec.rb +0 -162
  1577. data/spec/unit/pops/serialization/serialization_spec.rb +0 -458
  1578. data/spec/unit/pops/serialization/to_from_hr_spec.rb +0 -649
  1579. data/spec/unit/pops/serialization/to_stringified_spec.rb +0 -162
  1580. data/spec/unit/pops/time/timespan_spec.rb +0 -121
  1581. data/spec/unit/pops/time/timestamp_spec.rb +0 -13
  1582. data/spec/unit/pops/types/class_loader_spec.rb +0 -10
  1583. data/spec/unit/pops/types/deferred_spec.rb +0 -87
  1584. data/spec/unit/pops/types/error_spec.rb +0 -207
  1585. data/spec/unit/pops/types/iterable_spec.rb +0 -262
  1586. data/spec/unit/pops/types/p_binary_type_spec.rb +0 -243
  1587. data/spec/unit/pops/types/p_init_type_spec.rb +0 -383
  1588. data/spec/unit/pops/types/p_object_type_spec.rb +0 -1730
  1589. data/spec/unit/pops/types/p_sem_ver_type_spec.rb +0 -340
  1590. data/spec/unit/pops/types/p_sensitive_type_spec.rb +0 -191
  1591. data/spec/unit/pops/types/p_timespan_type_spec.rb +0 -323
  1592. data/spec/unit/pops/types/p_timestamp_type_spec.rb +0 -391
  1593. data/spec/unit/pops/types/p_type_set_type_spec.rb +0 -549
  1594. data/spec/unit/pops/types/p_uri_type_spec.rb +0 -191
  1595. data/spec/unit/pops/types/recursion_guard_spec.rb +0 -93
  1596. data/spec/unit/pops/types/ruby_generator_spec.rb +0 -874
  1597. data/spec/unit/pops/types/string_converter_spec.rb +0 -1202
  1598. data/spec/unit/pops/types/task_spec.rb +0 -411
  1599. data/spec/unit/pops/types/type_acceptor_spec.rb +0 -106
  1600. data/spec/unit/pops/types/type_asserter_spec.rb +0 -43
  1601. data/spec/unit/pops/types/type_calculator_spec.rb +0 -2504
  1602. data/spec/unit/pops/types/type_factory_spec.rb +0 -322
  1603. data/spec/unit/pops/types/type_formatter_spec.rb +0 -427
  1604. data/spec/unit/pops/types/type_mismatch_describer_spec.rb +0 -424
  1605. data/spec/unit/pops/types/type_parser_spec.rb +0 -445
  1606. data/spec/unit/pops/types/types_spec.rb +0 -755
  1607. data/spec/unit/pops/utils_spec.rb +0 -70
  1608. data/spec/unit/pops/validation_spec.rb +0 -66
  1609. data/spec/unit/pops/validator/validator_spec.rb +0 -1029
  1610. data/spec/unit/pops/visitor_spec.rb +0 -93
  1611. data/spec/unit/property/boolean_spec.rb +0 -24
  1612. data/spec/unit/property/ensure_spec.rb +0 -11
  1613. data/spec/unit/property/keyvalue_spec.rb +0 -259
  1614. data/spec/unit/property/list_spec.rb +0 -172
  1615. data/spec/unit/property/ordered_list_spec.rb +0 -59
  1616. data/spec/unit/property_spec.rb +0 -563
  1617. data/spec/unit/provider/README.markdown +0 -4
  1618. data/spec/unit/provider/aix_object_spec.rb +0 -821
  1619. data/spec/unit/provider/command_spec.rb +0 -62
  1620. data/spec/unit/provider/exec/posix_spec.rb +0 -232
  1621. data/spec/unit/provider/exec/shell_spec.rb +0 -53
  1622. data/spec/unit/provider/exec/windows_spec.rb +0 -105
  1623. data/spec/unit/provider/exec_spec.rb +0 -244
  1624. data/spec/unit/provider/file/posix_spec.rb +0 -230
  1625. data/spec/unit/provider/file/windows_spec.rb +0 -152
  1626. data/spec/unit/provider/group/aix_spec.rb +0 -91
  1627. data/spec/unit/provider/group/directoryservice_spec.rb +0 -33
  1628. data/spec/unit/provider/group/groupadd_spec.rb +0 -284
  1629. data/spec/unit/provider/group/ldap_spec.rb +0 -98
  1630. data/spec/unit/provider/group/pw_spec.rb +0 -78
  1631. data/spec/unit/provider/group/windows_adsi_spec.rb +0 -398
  1632. data/spec/unit/provider/ldap_spec.rb +0 -242
  1633. data/spec/unit/provider/nameservice/directoryservice_spec.rb +0 -157
  1634. data/spec/unit/provider/nameservice_spec.rb +0 -398
  1635. data/spec/unit/provider/package/aix_spec.rb +0 -158
  1636. data/spec/unit/provider/package/appdmg_spec.rb +0 -42
  1637. data/spec/unit/provider/package/apt_spec.rb +0 -302
  1638. data/spec/unit/provider/package/aptitude_spec.rb +0 -46
  1639. data/spec/unit/provider/package/aptrpm_spec.rb +0 -42
  1640. data/spec/unit/provider/package/base_spec.rb +0 -19
  1641. data/spec/unit/provider/package/dnf_spec.rb +0 -62
  1642. data/spec/unit/provider/package/dnfmodule_spec.rb +0 -276
  1643. data/spec/unit/provider/package/dpkg_spec.rb +0 -444
  1644. data/spec/unit/provider/package/freebsd_spec.rb +0 -51
  1645. data/spec/unit/provider/package/gem_spec.rb +0 -487
  1646. data/spec/unit/provider/package/hpux_spec.rb +0 -48
  1647. data/spec/unit/provider/package/macports_spec.rb +0 -142
  1648. data/spec/unit/provider/package/nim_spec.rb +0 -267
  1649. data/spec/unit/provider/package/openbsd_spec.rb +0 -417
  1650. data/spec/unit/provider/package/opkg_spec.rb +0 -180
  1651. data/spec/unit/provider/package/pacman_spec.rb +0 -438
  1652. data/spec/unit/provider/package/pip2_spec.rb +0 -38
  1653. data/spec/unit/provider/package/pip3_spec.rb +0 -38
  1654. data/spec/unit/provider/package/pip_spec.rb +0 -504
  1655. data/spec/unit/provider/package/pkg_spec.rb +0 -473
  1656. data/spec/unit/provider/package/pkgdmg_spec.rb +0 -166
  1657. data/spec/unit/provider/package/pkgin_spec.rb +0 -185
  1658. data/spec/unit/provider/package/pkgng_spec.rb +0 -228
  1659. data/spec/unit/provider/package/pkgutil_spec.rb +0 -231
  1660. data/spec/unit/provider/package/portage_spec.rb +0 -226
  1661. data/spec/unit/provider/package/puppet_gem_spec.rb +0 -130
  1662. data/spec/unit/provider/package/puppetserver_gem_spec.rb +0 -139
  1663. data/spec/unit/provider/package/rpm_spec.rb +0 -674
  1664. data/spec/unit/provider/package/sun_spec.rb +0 -112
  1665. data/spec/unit/provider/package/tdnf_spec.rb +0 -15
  1666. data/spec/unit/provider/package/up2date_spec.rb +0 -22
  1667. data/spec/unit/provider/package/urpmi_spec.rb +0 -84
  1668. data/spec/unit/provider/package/windows/exe_package_spec.rb +0 -114
  1669. data/spec/unit/provider/package/windows/msi_package_spec.rb +0 -111
  1670. data/spec/unit/provider/package/windows/package_spec.rb +0 -180
  1671. data/spec/unit/provider/package/windows_spec.rb +0 -272
  1672. data/spec/unit/provider/package/yum_spec.rb +0 -512
  1673. data/spec/unit/provider/package/zypper_spec.rb +0 -327
  1674. data/spec/unit/provider/package_targetable_spec.rb +0 -60
  1675. data/spec/unit/provider/parsedfile_spec.rb +0 -263
  1676. data/spec/unit/provider/service/base_spec.rb +0 -109
  1677. data/spec/unit/provider/service/bsd_spec.rb +0 -127
  1678. data/spec/unit/provider/service/daemontools_spec.rb +0 -190
  1679. data/spec/unit/provider/service/debian_spec.rb +0 -158
  1680. data/spec/unit/provider/service/freebsd_spec.rb +0 -92
  1681. data/spec/unit/provider/service/gentoo_spec.rb +0 -250
  1682. data/spec/unit/provider/service/init_spec.rb +0 -316
  1683. data/spec/unit/provider/service/launchd_spec.rb +0 -425
  1684. data/spec/unit/provider/service/openbsd_spec.rb +0 -196
  1685. data/spec/unit/provider/service/openrc_spec.rb +0 -231
  1686. data/spec/unit/provider/service/openwrt_spec.rb +0 -101
  1687. data/spec/unit/provider/service/rcng_spec.rb +0 -40
  1688. data/spec/unit/provider/service/redhat_spec.rb +0 -190
  1689. data/spec/unit/provider/service/runit_spec.rb +0 -164
  1690. data/spec/unit/provider/service/smf_spec.rb +0 -526
  1691. data/spec/unit/provider/service/src_spec.rb +0 -186
  1692. data/spec/unit/provider/service/systemd_spec.rb +0 -578
  1693. data/spec/unit/provider/service/upstart_spec.rb +0 -681
  1694. data/spec/unit/provider/service/windows_spec.rb +0 -475
  1695. data/spec/unit/provider/user/aix_spec.rb +0 -320
  1696. data/spec/unit/provider/user/directoryservice_spec.rb +0 -1256
  1697. data/spec/unit/provider/user/hpux_spec.rb +0 -72
  1698. data/spec/unit/provider/user/ldap_spec.rb +0 -286
  1699. data/spec/unit/provider/user/openbsd_spec.rb +0 -76
  1700. data/spec/unit/provider/user/pw_spec.rb +0 -252
  1701. data/spec/unit/provider/user/user_role_add_spec.rb +0 -374
  1702. data/spec/unit/provider/user/useradd_spec.rb +0 -849
  1703. data/spec/unit/provider/user/windows_adsi_spec.rb +0 -407
  1704. data/spec/unit/provider_spec.rb +0 -904
  1705. data/spec/unit/puppet_pal_2pec.rb +0 -1033
  1706. data/spec/unit/puppet_pal_catalog_spec.rb +0 -962
  1707. data/spec/unit/puppet_pal_spec.rb +0 -3
  1708. data/spec/unit/puppet_spec.rb +0 -127
  1709. data/spec/unit/relationship_spec.rb +0 -202
  1710. data/spec/unit/reports/http_spec.rb +0 -119
  1711. data/spec/unit/reports/store_spec.rb +0 -69
  1712. data/spec/unit/reports_spec.rb +0 -68
  1713. data/spec/unit/resource/catalog_spec.rb +0 -1160
  1714. data/spec/unit/resource/status_spec.rb +0 -216
  1715. data/spec/unit/resource/type_collection_spec.rb +0 -332
  1716. data/spec/unit/resource/type_spec.rb +0 -876
  1717. data/spec/unit/resource_spec.rb +0 -1189
  1718. data/spec/unit/scheduler/job_spec.rb +0 -78
  1719. data/spec/unit/scheduler/scheduler_spec.rb +0 -115
  1720. data/spec/unit/scheduler/splay_job_spec.rb +0 -34
  1721. data/spec/unit/settings/array_setting_spec.rb +0 -39
  1722. data/spec/unit/settings/autosign_setting_spec.rb +0 -104
  1723. data/spec/unit/settings/certificate_revocation_setting_spec.rb +0 -37
  1724. data/spec/unit/settings/config_file_spec.rb +0 -147
  1725. data/spec/unit/settings/directory_setting_spec.rb +0 -27
  1726. data/spec/unit/settings/duration_setting_spec.rb +0 -48
  1727. data/spec/unit/settings/enum_setting_spec.rb +0 -27
  1728. data/spec/unit/settings/environment_conf_spec.rb +0 -133
  1729. data/spec/unit/settings/file_setting_spec.rb +0 -344
  1730. data/spec/unit/settings/http_extra_headers_spec.rb +0 -62
  1731. data/spec/unit/settings/ini_file_spec.rb +0 -550
  1732. data/spec/unit/settings/integer_setting_spec.rb +0 -42
  1733. data/spec/unit/settings/path_setting_spec.rb +0 -29
  1734. data/spec/unit/settings/port_setting_spec.rb +0 -31
  1735. data/spec/unit/settings/priority_setting_spec.rb +0 -65
  1736. data/spec/unit/settings/server_list_setting_spec.rb +0 -21
  1737. data/spec/unit/settings/string_setting_spec.rb +0 -74
  1738. data/spec/unit/settings/terminus_setting_spec.rb +0 -27
  1739. data/spec/unit/settings/value_translator_spec.rb +0 -75
  1740. data/spec/unit/settings_spec.rb +0 -2343
  1741. data/spec/unit/ssl/base_spec.rb +0 -125
  1742. data/spec/unit/ssl/certificate_request_attributes_spec.rb +0 -80
  1743. data/spec/unit/ssl/certificate_request_spec.rb +0 -373
  1744. data/spec/unit/ssl/certificate_signer_spec.rb +0 -17
  1745. data/spec/unit/ssl/certificate_spec.rb +0 -183
  1746. data/spec/unit/ssl/digest_spec.rb +0 -34
  1747. data/spec/unit/ssl/oids_spec.rb +0 -73
  1748. data/spec/unit/ssl/ssl_provider_spec.rb +0 -657
  1749. data/spec/unit/ssl/state_machine_spec.rb +0 -1117
  1750. data/spec/unit/ssl/verifier_spec.rb +0 -102
  1751. data/spec/unit/task_spec.rb +0 -345
  1752. data/spec/unit/test/test_helper_spec.rb +0 -17
  1753. data/spec/unit/transaction/additional_resource_generator_spec.rb +0 -534
  1754. data/spec/unit/transaction/event_manager_spec.rb +0 -365
  1755. data/spec/unit/transaction/event_spec.rb +0 -198
  1756. data/spec/unit/transaction/persistence_spec.rb +0 -276
  1757. data/spec/unit/transaction/report_spec.rb +0 -772
  1758. data/spec/unit/transaction/resource_harness_spec.rb +0 -625
  1759. data/spec/unit/transaction_spec.rb +0 -1037
  1760. data/spec/unit/type/README.markdown +0 -4
  1761. data/spec/unit/type/component_spec.rb +0 -52
  1762. data/spec/unit/type/exec_spec.rb +0 -937
  1763. data/spec/unit/type/file/checksum_spec.rb +0 -104
  1764. data/spec/unit/type/file/checksum_value_spec.rb +0 -285
  1765. data/spec/unit/type/file/content_spec.rb +0 -440
  1766. data/spec/unit/type/file/ctime_spec.rb +0 -33
  1767. data/spec/unit/type/file/ensure_spec.rb +0 -121
  1768. data/spec/unit/type/file/group_spec.rb +0 -65
  1769. data/spec/unit/type/file/mode_spec.rb +0 -220
  1770. data/spec/unit/type/file/mtime_spec.rb +0 -33
  1771. data/spec/unit/type/file/owner_spec.rb +0 -63
  1772. data/spec/unit/type/file/selinux_spec.rb +0 -86
  1773. data/spec/unit/type/file/source_spec.rb +0 -730
  1774. data/spec/unit/type/file/type_spec.rb +0 -18
  1775. data/spec/unit/type/file_spec.rb +0 -1746
  1776. data/spec/unit/type/filebucket_spec.rb +0 -104
  1777. data/spec/unit/type/group_spec.rb +0 -105
  1778. data/spec/unit/type/noop_metaparam_spec.rb +0 -37
  1779. data/spec/unit/type/package/package_settings_spec.rb +0 -156
  1780. data/spec/unit/type/package_spec.rb +0 -396
  1781. data/spec/unit/type/resources_spec.rb +0 -362
  1782. data/spec/unit/type/schedule_spec.rb +0 -621
  1783. data/spec/unit/type/service_spec.rb +0 -458
  1784. data/spec/unit/type/stage_spec.rb +0 -7
  1785. data/spec/unit/type/tidy_spec.rb +0 -493
  1786. data/spec/unit/type/user_spec.rb +0 -553
  1787. data/spec/unit/type/whit_spec.rb +0 -9
  1788. data/spec/unit/type_spec.rb +0 -1473
  1789. data/spec/unit/util/at_fork_spec.rb +0 -150
  1790. data/spec/unit/util/autoload_spec.rb +0 -330
  1791. data/spec/unit/util/backups_spec.rb +0 -130
  1792. data/spec/unit/util/character_encoding_spec.rb +0 -186
  1793. data/spec/unit/util/checksums_spec.rb +0 -223
  1794. data/spec/unit/util/colors_spec.rb +0 -44
  1795. data/spec/unit/util/command_line_spec.rb +0 -200
  1796. data/spec/unit/util/command_line_utils/puppet_option_parser_spec.rb +0 -129
  1797. data/spec/unit/util/constant_inflector_spec.rb +0 -55
  1798. data/spec/unit/util/diff_spec.rb +0 -46
  1799. data/spec/unit/util/docs_spec.rb +0 -100
  1800. data/spec/unit/util/errors_spec.rb +0 -36
  1801. data/spec/unit/util/execution_spec.rb +0 -943
  1802. data/spec/unit/util/execution_stub_spec.rb +0 -38
  1803. data/spec/unit/util/feature_spec.rb +0 -129
  1804. data/spec/unit/util/filetype_spec.rb +0 -223
  1805. data/spec/unit/util/inifile_spec.rb +0 -510
  1806. data/spec/unit/util/json_lockfile_spec.rb +0 -48
  1807. data/spec/unit/util/json_spec.rb +0 -126
  1808. data/spec/unit/util/ldap/connection_spec.rb +0 -162
  1809. data/spec/unit/util/ldap/generator_spec.rb +0 -49
  1810. data/spec/unit/util/ldap/manager_spec.rb +0 -612
  1811. data/spec/unit/util/lockfile_spec.rb +0 -117
  1812. data/spec/unit/util/log/destinations_spec.rb +0 -258
  1813. data/spec/unit/util/log_spec.rb +0 -479
  1814. data/spec/unit/util/logging_spec.rb +0 -618
  1815. data/spec/unit/util/metric_spec.rb +0 -89
  1816. data/spec/unit/util/monkey_patches_spec.rb +0 -161
  1817. data/spec/unit/util/multi_match_spec.rb +0 -38
  1818. data/spec/unit/util/network_device/config_spec.rb +0 -91
  1819. data/spec/unit/util/network_device/transport/base_spec.rb +0 -40
  1820. data/spec/unit/util/network_device_spec.rb +0 -43
  1821. data/spec/unit/util/package/version/debian_spec.rb +0 -83
  1822. data/spec/unit/util/package/version/pip_spec.rb +0 -464
  1823. data/spec/unit/util/package/version/range_spec.rb +0 -175
  1824. data/spec/unit/util/package/version/rpm_spec.rb +0 -121
  1825. data/spec/unit/util/package_spec.rb +0 -19
  1826. data/spec/unit/util/pidlock_spec.rb +0 -333
  1827. data/spec/unit/util/plist_spec.rb +0 -168
  1828. data/spec/unit/util/posix_spec.rb +0 -630
  1829. data/spec/unit/util/profiler/aggregate_spec.rb +0 -55
  1830. data/spec/unit/util/profiler/around_profiler_spec.rb +0 -61
  1831. data/spec/unit/util/profiler/logging_spec.rb +0 -70
  1832. data/spec/unit/util/profiler/object_counts_spec.rb +0 -13
  1833. data/spec/unit/util/profiler/wall_clock_spec.rb +0 -13
  1834. data/spec/unit/util/profiler_spec.rb +0 -47
  1835. data/spec/unit/util/rdoc_spec.rb +0 -55
  1836. data/spec/unit/util/reference_spec.rb +0 -38
  1837. data/spec/unit/util/resource_template_spec.rb +0 -57
  1838. data/spec/unit/util/retry_action_spec.rb +0 -84
  1839. data/spec/unit/util/rpm_compare_spec.rb +0 -196
  1840. data/spec/unit/util/rubygems_spec.rb +0 -47
  1841. data/spec/unit/util/run_mode_spec.rb +0 -185
  1842. data/spec/unit/util/selinux_spec.rb +0 -422
  1843. data/spec/unit/util/skip_tags_spec.rb +0 -14
  1844. data/spec/unit/util/splayer_spec.rb +0 -44
  1845. data/spec/unit/util/storage_spec.rb +0 -330
  1846. data/spec/unit/util/suidmanager_spec.rb +0 -278
  1847. data/spec/unit/util/symbolic_file_mode_spec.rb +0 -180
  1848. data/spec/unit/util/tag_set_spec.rb +0 -52
  1849. data/spec/unit/util/tagging_spec.rb +0 -246
  1850. data/spec/unit/util/terminal_spec.rb +0 -41
  1851. data/spec/unit/util/user_attr_spec.rb +0 -45
  1852. data/spec/unit/util/warnings_spec.rb +0 -45
  1853. data/spec/unit/util/watched_file_spec.rb +0 -52
  1854. data/spec/unit/util/watcher/periodic_watcher_spec.rb +0 -52
  1855. data/spec/unit/util/watcher_spec.rb +0 -86
  1856. data/spec/unit/util/windows/access_control_entry_spec.rb +0 -66
  1857. data/spec/unit/util/windows/access_control_list_spec.rb +0 -132
  1858. data/spec/unit/util/windows/adsi_spec.rb +0 -704
  1859. data/spec/unit/util/windows/api_types_spec.rb +0 -184
  1860. data/spec/unit/util/windows/eventlog_spec.rb +0 -120
  1861. data/spec/unit/util/windows/file_spec.rb +0 -88
  1862. data/spec/unit/util/windows/root_certs_spec.rb +0 -16
  1863. data/spec/unit/util/windows/security_descriptor_spec.rb +0 -115
  1864. data/spec/unit/util/windows/service_spec.rb +0 -677
  1865. data/spec/unit/util/windows/sid_spec.rb +0 -338
  1866. data/spec/unit/util/windows/string_spec.rb +0 -55
  1867. data/spec/unit/util/windows_spec.rb +0 -23
  1868. data/spec/unit/util/yaml_spec.rb +0 -171
  1869. data/spec/unit/util_spec.rb +0 -960
  1870. data/spec/unit/version_spec.rb +0 -61
  1871. data/spec/unit/x509/cert_provider_spec.rb +0 -663
  1872. data/spec/unit/x509/pem_store_spec.rb +0 -160
@@ -1,1746 +0,0 @@
1
- # coding: utf-8
2
- require 'spec_helper'
3
-
4
- describe Puppet::Type.type(:file) do
5
- include PuppetSpec::Files
6
-
7
- # precomputed checksum values for FILE_CONTENT
8
- FILE_CONTENT = 'file content'.freeze
9
- CHECKSUM_VALUES = {
10
- md5: 'd10b4c3ff123b26dc068d43a8bef2d23',
11
- md5lite: 'd10b4c3ff123b26dc068d43a8bef2d23',
12
- sha256: 'e0ac3601005dfa1864f5392aabaf7d898b1b5bab854f1acb4491bcd806b76b0c',
13
- sha256lite: 'e0ac3601005dfa1864f5392aabaf7d898b1b5bab854f1acb4491bcd806b76b0c',
14
- sha1: '87758871f598e1a3b4679953589ae2f57a0bb43c',
15
- sha1lite: '87758871f598e1a3b4679953589ae2f57a0bb43c',
16
- sha224: '2aefaaa5f4d8f17f82f3e1bb407e190cede9aa1311fa4533ce505531',
17
- sha384: '61c7783501ebd90233650357fefbe5a141b7618f907b8f043bbaa92c0f610c785a641ddd479fa81d650cd86e29aa6858',
18
- sha512: '2fb1877301854ac92dd518018f97407a0a88bb696bfef0a51e9efbd39917353500009e15bd72c3f0e4bf690115870bfab926565d5ad97269d922dbbb41261221',
19
- mtime: 'Jan 26 13:59:49 2016',
20
- ctime: 'Jan 26 13:59:49 2016'
21
- }.freeze
22
-
23
- INVALID_CHECKSUM_VALUES = {
24
- md5: '00000000000000000000000000000000',
25
- md5lite: '00000000000000000000000000000000',
26
- sha256: '0000000000000000000000000000000000000000000000000000000000000000',
27
- sha256lite: '0000000000000000000000000000000000000000000000000000000000000000',
28
- sha1: '0000000000000000000000000000000000000000',
29
- sha1lite: '0000000000000000000000000000000000000000',
30
- sha224: '00000000000000000000000000000000000000000000000000000000',
31
- sha384: '000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000',
32
- sha512: '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
33
- }.freeze
34
-
35
- let(:path) { tmpfile('file_testing') }
36
- let(:file) { described_class.new(:path => path, :catalog => catalog) }
37
- let(:provider) { file.provider }
38
- let(:catalog) { Puppet::Resource::Catalog.new }
39
-
40
- before do
41
- allow(Puppet.features).to receive("posix?").and_return(true)
42
- end
43
-
44
- describe "the path parameter" do
45
- describe "on POSIX systems", :if => Puppet.features.posix? do
46
- it "should remove trailing slashes" do
47
- file[:path] = "/foo/bar/baz/"
48
- expect(file[:path]).to eq("/foo/bar/baz")
49
- end
50
-
51
- it "should remove double slashes" do
52
- file[:path] = "/foo/bar//baz"
53
- expect(file[:path]).to eq("/foo/bar/baz")
54
- end
55
-
56
- it "should remove triple slashes" do
57
- file[:path] = "/foo/bar///baz"
58
- expect(file[:path]).to eq("/foo/bar/baz")
59
- end
60
-
61
- it "should remove trailing double slashes" do
62
- file[:path] = "/foo/bar/baz//"
63
- expect(file[:path]).to eq("/foo/bar/baz")
64
- end
65
-
66
- it "should leave a single slash alone" do
67
- file[:path] = "/"
68
- expect(file[:path]).to eq("/")
69
- end
70
-
71
- it "should accept and collapse a double-slash at the start of the path" do
72
- file[:path] = "//tmp/xxx"
73
- expect(file[:path]).to eq('/tmp/xxx')
74
- end
75
-
76
- it "should accept and collapse a triple-slash at the start of the path" do
77
- file[:path] = "///tmp/xxx"
78
- expect(file[:path]).to eq('/tmp/xxx')
79
- end
80
- end
81
-
82
- describe "on Windows systems", :if => Puppet::Util::Platform.windows? do
83
- it "should remove trailing slashes" do
84
- file[:path] = "X:/foo/bar/baz/"
85
- expect(file[:path]).to eq("X:/foo/bar/baz")
86
- end
87
-
88
- it "should remove double slashes" do
89
- file[:path] = "X:/foo/bar//baz"
90
- expect(file[:path]).to eq("X:/foo/bar/baz")
91
- end
92
-
93
- it "should remove trailing double slashes" do
94
- file[:path] = "X:/foo/bar/baz//"
95
- expect(file[:path]).to eq("X:/foo/bar/baz")
96
- end
97
-
98
- it "should leave a drive letter with a slash alone" do
99
- file[:path] = "X:/"
100
- expect(file[:path]).to eq("X:/")
101
- end
102
-
103
- it "should not accept a drive letter without a slash" do
104
- expect { file[:path] = "X:" }.to raise_error(/File paths must be fully qualified/)
105
- end
106
-
107
- describe "when using UNC filenames", :if => Puppet::Util::Platform.windows? do
108
- it "should remove trailing slashes" do
109
- file[:path] = "//localhost/foo/bar/baz/"
110
- expect(file[:path]).to eq("//localhost/foo/bar/baz")
111
- end
112
-
113
- it "should remove double slashes" do
114
- file[:path] = "//localhost/foo/bar//baz"
115
- expect(file[:path]).to eq("//localhost/foo/bar/baz")
116
- end
117
-
118
- it "should remove trailing double slashes" do
119
- file[:path] = "//localhost/foo/bar/baz//"
120
- expect(file[:path]).to eq("//localhost/foo/bar/baz")
121
- end
122
-
123
- it "should remove a trailing slash from a sharename" do
124
- file[:path] = "//localhost/foo/"
125
- expect(file[:path]).to eq("//localhost/foo")
126
- end
127
-
128
- it "should not modify a sharename" do
129
- file[:path] = "//localhost/foo"
130
- expect(file[:path]).to eq("//localhost/foo")
131
- end
132
- end
133
- end
134
- end
135
-
136
- describe "the backup parameter" do
137
- it 'should be disabled by default' do
138
- expect(file[:backup]).to eq(nil)
139
- end
140
-
141
- [false, 'false', :false].each do |value|
142
- it "should disable backup if the value is #{value.inspect}" do
143
- file[:backup] = value
144
- expect(file[:backup]).to eq(false)
145
- end
146
- end
147
-
148
- [true, 'true', '.puppet-bak'].each do |value|
149
- it "should use .puppet-bak if the value is #{value.inspect}" do
150
- file[:backup] = value
151
- expect(file[:backup]).to eq('.puppet-bak')
152
- end
153
- end
154
-
155
- it "should use the provided value if it's any other string" do
156
- file[:backup] = "over there"
157
- expect(file[:backup]).to eq("over there")
158
- end
159
-
160
- it "should fail if backup is set to anything else" do
161
- expect do
162
- file[:backup] = 97
163
- end.to raise_error(Puppet::Error, /Invalid backup type 97/)
164
- end
165
- end
166
-
167
- describe "the recurse parameter" do
168
- it "should default to recursion being disabled" do
169
- expect(file[:recurse]).to be_falsey
170
- end
171
-
172
- [true, "true", "remote"].each do |value|
173
- it "should consider #{value} to enable recursion" do
174
- file[:recurse] = value
175
- expect(file[:recurse]).to be_truthy
176
- end
177
- end
178
-
179
- it "should not allow numbers" do
180
- expect { file[:recurse] = 10 }.to raise_error(
181
- Puppet::Error, /Parameter recurse failed on File\[[^\]]+\]: Invalid recurse value 10/)
182
- end
183
-
184
- [false, "false"].each do |value|
185
- it "should consider #{value} to disable recursion" do
186
- file[:recurse] = value
187
- expect(file[:recurse]).to be_falsey
188
- end
189
- end
190
- end
191
-
192
- describe "the recurselimit parameter" do
193
- it "should accept integers" do
194
- file[:recurselimit] = 12
195
- expect(file[:recurselimit]).to eq(12)
196
- end
197
-
198
- it "should munge string numbers to number numbers" do
199
- file[:recurselimit] = '12'
200
- expect(file[:recurselimit]).to eq(12)
201
- end
202
-
203
- it "should fail if given a non-number" do
204
- expect do
205
- file[:recurselimit] = 'twelve'
206
- end.to raise_error(Puppet::Error, /Invalid value "twelve"/)
207
- end
208
- end
209
-
210
- describe "the replace parameter" do
211
- [true, :true, :yes].each do |value|
212
- it "should consider #{value} to be true" do
213
- file[:replace] = value
214
- expect(file[:replace]).to be_truthy
215
- end
216
- end
217
-
218
- [false, :false, :no].each do |value|
219
- it "should consider #{value} to be false" do
220
- file[:replace] = value
221
- expect(file[:replace]).to be_falsey
222
- end
223
- end
224
- end
225
-
226
- describe ".instances" do
227
- it "should return an empty array" do
228
- expect(described_class.instances).to eq([])
229
- end
230
- end
231
-
232
- describe "#bucket" do
233
- it "should return nil if backup is off" do
234
- file[:backup] = false
235
- expect(file.bucket).to eq(nil)
236
- end
237
-
238
- it "should not return a bucket if using a file extension for backup" do
239
- file[:backup] = '.backup'
240
-
241
- expect(file.bucket).to eq(nil)
242
- end
243
-
244
- it "should return the default filebucket if using the 'puppet' filebucket" do
245
- file[:backup] = 'puppet'
246
- bucket = double('bucket')
247
- allow(file).to receive(:default_bucket).and_return(bucket)
248
-
249
- expect(file.bucket).to eq(bucket)
250
- end
251
-
252
- it "should fail if using a remote filebucket and no catalog exists" do
253
- file.catalog = nil
254
- file[:backup] = 'my_bucket'
255
-
256
- expect { file.bucket }.to raise_error(Puppet::Error, "Can not find filebucket for backups without a catalog")
257
- end
258
-
259
- it "should fail if the specified filebucket isn't in the catalog" do
260
- file[:backup] = 'my_bucket'
261
-
262
- expect { file.bucket }.to raise_error(Puppet::Error, "Could not find filebucket my_bucket specified in backup")
263
- end
264
-
265
- it "should use the specified filebucket if it is in the catalog" do
266
- file[:backup] = 'my_bucket'
267
- filebucket = Puppet::Type.type(:filebucket).new(:name => 'my_bucket')
268
- catalog.add_resource(filebucket)
269
-
270
- expect(file.bucket).to eq(filebucket.bucket)
271
- end
272
- end
273
-
274
- describe "#asuser" do
275
- before :each do
276
- # Mocha won't let me just stub SUIDManager.asuser to yield and return,
277
- # but it will do exactly that if we're not root.
278
- allow(Puppet::Util::SUIDManager).to receive(:root?).and_return(false)
279
- end
280
-
281
- it "should return the desired owner if they can write to the parent directory" do
282
- file[:owner] = 1001
283
- allow(FileTest).to receive(:writable?).with(File.dirname file[:path]).and_return(true)
284
-
285
- expect(file.asuser).to eq(1001)
286
- end
287
-
288
- it "should return nil if the desired owner can't write to the parent directory" do
289
- file[:owner] = 1001
290
- allow(FileTest).to receive(:writable?).with(File.dirname file[:path]).and_return(false)
291
-
292
- expect(file.asuser).to eq(nil)
293
- end
294
-
295
- it "should return nil if not managing owner" do
296
- expect(file.asuser).to eq(nil)
297
- end
298
- end
299
-
300
- describe "#exist?" do
301
- it "should be considered existent if it can be stat'ed" do
302
- expect(file).to receive(:stat).and_return(double('stat'))
303
- expect(file).to be_exist
304
- end
305
-
306
- it "should be considered nonexistent if it can not be stat'ed" do
307
- expect(file).to receive(:stat).and_return(nil)
308
- expect(file).to_not be_exist
309
- end
310
- end
311
-
312
- describe "#eval_generate" do
313
- before do
314
- @graph = double('graph', :add_edge => nil)
315
- allow(catalog).to receive(:relationship_graph).and_return(@graph)
316
- end
317
-
318
- it "should recurse if recursion is enabled" do
319
- resource = double('resource', :[] => 'resource')
320
- expect(file).to receive(:recurse).and_return([resource])
321
-
322
- file[:recurse] = true
323
-
324
- expect(file.eval_generate).to eq([resource])
325
- end
326
-
327
- it "should not recurse if recursion is disabled" do
328
- expect(file).not_to receive(:recurse)
329
-
330
- file[:recurse] = false
331
-
332
- expect(file.eval_generate).to eq([])
333
- end
334
- end
335
-
336
- describe "#ancestors" do
337
- it "should return the ancestors of the file, in ascending order" do
338
- file = described_class.new(:path => make_absolute("/tmp/foo/bar/baz/qux"))
339
-
340
- pieces = %W[#{make_absolute('/')} tmp foo bar baz]
341
-
342
- ancestors = file.ancestors
343
-
344
- expect(ancestors).not_to be_empty
345
- ancestors.reverse.each_with_index do |path,i|
346
- expect(path).to eq(File.join(*pieces[0..i]))
347
- end
348
- end
349
- end
350
-
351
- describe "#flush" do
352
- it "should reset its stat reference" do
353
- FileUtils.touch(path)
354
- stat1 = file.stat
355
-
356
- expect(file.stat).to equal(stat1)
357
-
358
- file.flush
359
-
360
- expect(file.stat).not_to equal(stat1)
361
- end
362
- end
363
-
364
- describe "#initialize" do
365
- it "should remove a trailing slash from the title to create the path" do
366
- title = File.expand_path("/abc/\n\tdef/")
367
- file = described_class.new(:title => title)
368
- expect(file[:path]).to eq(title)
369
- end
370
-
371
- it "should allow a single slash for a title and create the path" do
372
- title = File.expand_path("/")
373
- file = described_class.new(:title => title)
374
- expect(file[:path]).to eq(title)
375
- end
376
-
377
- it "should allow multiple slashes for a title and create the path" do
378
- title = File.expand_path("/") + "//"
379
- file = described_class.new(:title => title)
380
- expect(file[:path]).to eq(File.expand_path("/"))
381
- end
382
-
383
- it "should set a desired 'ensure' value if none is set and 'content' is set" do
384
- file = described_class.new(:path => path, :content => "/foo/bar")
385
- expect(file[:ensure]).to eq(:file)
386
- end
387
-
388
- it "should set a desired 'ensure' value if none is set and 'target' is set", :if => described_class.defaultprovider.feature?(:manages_symlinks) do
389
- file = described_class.new(:path => path, :target => File.expand_path(__FILE__))
390
- expect(file[:ensure]).to eq(:link)
391
- end
392
-
393
- describe "marking parameters as sensitive" do
394
- it "marks sensitive, content, and ensure as sensitive when source is sensitive" do
395
- resource = Puppet::Resource.new(:file, make_absolute("/tmp/foo"), :parameters => {:source => make_absolute('/tmp/bar')}, :sensitive_parameters => [:source])
396
- file = described_class.new(resource)
397
- expect(file.parameter(:source).sensitive).to eq true
398
- expect(file.property(:content).sensitive).to eq true
399
- expect(file.property(:ensure).sensitive).to eq true
400
- end
401
-
402
- it "marks ensure as sensitive when content is sensitive" do
403
- resource = Puppet::Resource.new(:file, make_absolute("/tmp/foo"), :parameters => {:content => 'hello world!'}, :sensitive_parameters => [:content])
404
- file = described_class.new(resource)
405
- expect(file.property(:ensure).sensitive).to eq true
406
- end
407
- end
408
- end
409
-
410
- describe "#mark_children_for_purging" do
411
- it "should set each child's ensure to absent" do
412
- paths = %w[foo bar baz]
413
- children = {}
414
- paths.each do |child|
415
- children[child] = described_class.new(:path => File.join(path, child), :ensure => :present)
416
- end
417
-
418
- file.mark_children_for_purging(children)
419
-
420
- expect(children.length).to eq(3)
421
- children.values.each do |child|
422
- expect(child[:ensure]).to eq(:absent)
423
- end
424
- end
425
-
426
- it "should skip children which have a source" do
427
- child = described_class.new(:path => path, :ensure => :present, :source => File.expand_path(__FILE__))
428
-
429
- file.mark_children_for_purging('foo' => child)
430
-
431
- expect(child[:ensure]).to eq(:present)
432
- end
433
- end
434
-
435
- describe "#newchild" do
436
- it "should create a new resource relative to the parent" do
437
- child = file.newchild('bar')
438
-
439
- expect(child).to be_a(described_class)
440
- expect(child[:path]).to eq(File.join(file[:path], 'bar'))
441
- end
442
-
443
- {
444
- :ensure => :present,
445
- :recurse => true,
446
- :recurselimit => 5,
447
- :target => "some_target",
448
- :source => File.expand_path("some_source"),
449
- }.each do |param, value|
450
- it "should omit the #{param} parameter", :if => described_class.defaultprovider.feature?(:manages_symlinks) do
451
- # Make a new file, because we have to set the param at initialization
452
- # or it wouldn't be copied regardless.
453
- file = described_class.new(:path => path, param => value)
454
- child = file.newchild('bar')
455
- expect(child[param]).not_to eq(value)
456
- end
457
- end
458
-
459
- it "should copy all of the parent resource's 'should' values that were set at initialization" do
460
- parent = described_class.new(:path => path, :owner => 'root', :group => 'wheel')
461
-
462
- child = parent.newchild("my/path")
463
-
464
- expect(child[:owner]).to eq('root')
465
- expect(child[:group]).to eq('wheel')
466
- end
467
-
468
- it "should not copy default values to the new child" do
469
- child = file.newchild("my/path")
470
- expect(child.original_parameters).not_to include(:backup)
471
- end
472
-
473
- it "should not copy values to the child which were set by the source" do
474
- source = File.expand_path(__FILE__)
475
- file[:source] = source
476
- metadata = double('metadata', :owner => "root", :group => "root", :mode => '0755', :ftype => "file", :checksum => "{md5}whatever", :checksum_type => "md5", :source => source)
477
- allow(file.parameter(:source)).to receive(:metadata).and_return(metadata)
478
-
479
- file.parameter(:source).copy_source_values
480
-
481
- expect(file.class).to receive(:new) do |arg|
482
- expect(arg[:group]).to be_nil
483
- end
484
- file.newchild("my/path")
485
- end
486
- end
487
-
488
- describe "#purge?" do
489
- it "should return false if purge is not set" do
490
- expect(file).to_not be_purge
491
- end
492
-
493
- it "should return true if purge is set to true" do
494
- file[:purge] = true
495
-
496
- expect(file).to be_purge
497
- end
498
-
499
- it "should return false if purge is set to false" do
500
- file[:purge] = false
501
-
502
- expect(file).to_not be_purge
503
- end
504
- end
505
-
506
- describe "#recurse" do
507
- let(:name) { 'bar' }
508
- let(:child) { double('puppet_type_file') }
509
-
510
- before do
511
- file[:recurse] = true
512
- @metadata = Puppet::FileServing::Metadata
513
- end
514
-
515
- describe "and a source is set" do
516
- it "should pass the already-discovered resources to recurse_remote" do
517
- file[:source] = File.expand_path(__FILE__)
518
- allow(child).to receive(:[]).with(:path).and_return(name)
519
- allow(file).to receive(:recurse_local).and_return({name => child})
520
- expect(file).to receive(:recurse_remote).with({name => child}).and_return([])
521
- file.recurse
522
- end
523
- end
524
-
525
- describe "and a target is set" do
526
- it "should use recurse_link" do
527
- file[:target] = File.expand_path(__FILE__)
528
- allow(child).to receive(:[]).with(:path).and_return(name)
529
- allow(file).to receive(:recurse_local).and_return({name => child})
530
- expect(file).to receive(:recurse_link).with({name => child}).and_return([])
531
- file.recurse
532
- end
533
- end
534
-
535
- it "should use recurse_local if recurse is not remote" do
536
- expect(file).to receive(:recurse_local).and_return({})
537
- file.recurse
538
- end
539
-
540
- it "should not use recurse_local if recurse is remote" do
541
- file[:recurse] = :remote
542
- expect(file).not_to receive(:recurse_local)
543
- file.recurse
544
- end
545
-
546
- it "should return the generated resources as an array sorted by file path" do
547
- one = double('one', :[] => "/one")
548
- two = double('two', :[] => "/one/two")
549
- three = double('three', :[] => "/three")
550
- expect(file).to receive(:recurse_local).and_return(:one => one, :two => two, :three => three)
551
- expect(file.recurse).to eq([one, two, three])
552
- end
553
-
554
- describe "and purging is enabled" do
555
- before do
556
- file[:purge] = true
557
- end
558
-
559
- it "should mark each file for removal" do
560
- local = described_class.new(:path => path, :ensure => :present)
561
- expect(file).to receive(:recurse_local).and_return("local" => local)
562
-
563
- file.recurse
564
- expect(local[:ensure]).to eq(:absent)
565
- end
566
-
567
- it "should not remove files that exist in the remote repository" do
568
- pending("FIXME: This test has been broken since it was introduced in c189b46e3f1 because of = vs ==")
569
- file[:source] = File.expand_path(__FILE__)
570
- expect(file).to receive(:recurse_local).and_return({})
571
-
572
- remote = described_class.new(:path => path, :source => File.expand_path(__FILE__), :ensure => :present)
573
-
574
- expect(file).to receive(:recurse_remote).with(hash_including("remote" => remote))
575
-
576
- file.recurse
577
-
578
- expect(remote[:ensure]).not_to eq(:absent)
579
- end
580
- end
581
-
582
- end
583
-
584
- describe "#remove_less_specific_files" do
585
- it "should remove any nested files that are already in the catalog" do
586
- foo = described_class.new :path => File.join(file[:path], 'foo')
587
- bar = described_class.new :path => File.join(file[:path], 'bar')
588
- baz = described_class.new :path => File.join(file[:path], 'baz')
589
-
590
- catalog.add_resource(foo)
591
- catalog.add_resource(bar)
592
-
593
- expect(file.remove_less_specific_files([foo, bar, baz])).to eq([baz])
594
- end
595
-
596
- end
597
-
598
- describe "#recurse?" do
599
- it "should be true if recurse is true" do
600
- file[:recurse] = true
601
- expect(file).to be_recurse
602
- end
603
-
604
- it "should be true if recurse is remote" do
605
- file[:recurse] = :remote
606
- expect(file).to be_recurse
607
- end
608
-
609
- it "should be false if recurse is false" do
610
- file[:recurse] = false
611
- expect(file).to_not be_recurse
612
- end
613
- end
614
-
615
- describe "#recurse_link" do
616
- before do
617
- @first = double('first', :relative_path => "first", :full_path => "/my/first", :ftype => "directory")
618
- @second = double('second', :relative_path => "second", :full_path => "/my/second", :ftype => "file")
619
-
620
- @resource = double('file', :[]= => nil)
621
- end
622
-
623
- it "should pass its target to the :perform_recursion method" do
624
- file[:target] = "mylinks"
625
- expect(file).to receive(:perform_recursion).with("mylinks").and_return([@first])
626
- allow(file).to receive(:newchild).and_return(@resource)
627
- file.recurse_link({})
628
- end
629
-
630
- it "should ignore the recursively-found '.' file and configure the top-level file to create a directory" do
631
- allow(@first).to receive(:relative_path).and_return(".")
632
- file[:target] = "mylinks"
633
- expect(file).to receive(:perform_recursion).with("mylinks").and_return([@first])
634
- expect(file).not_to receive(:newchild)
635
- expect(file).to receive(:[]=).with(:ensure, :directory)
636
- file.recurse_link({})
637
- end
638
-
639
- it "should create a new child resource for each generated metadata instance's relative path that doesn't already exist in the children hash" do
640
- expect(file).to receive(:perform_recursion).and_return([@first, @second])
641
- expect(file).to receive(:newchild).with(@first.relative_path).and_return(@resource)
642
- file.recurse_link("second" => @resource)
643
- end
644
-
645
- it "should not create a new child resource for paths that already exist in the children hash" do
646
- expect(file).to receive(:perform_recursion).and_return([@first])
647
- expect(file).not_to receive(:newchild)
648
- file.recurse_link("first" => @resource)
649
- end
650
-
651
- it "should set the target to the full path of discovered file and set :ensure to :link if the file is not a directory", :if => described_class.defaultprovider.feature?(:manages_symlinks) do
652
- allow(file).to receive(:perform_recursion).and_return([@first, @second])
653
- file.recurse_link("first" => @resource, "second" => file)
654
-
655
- expect(file[:ensure]).to eq(:link)
656
- expect(file[:target]).to eq("/my/second")
657
- end
658
-
659
- it "should :ensure to :directory if the file is a directory" do
660
- allow(file).to receive(:perform_recursion).and_return([@first, @second])
661
- file.recurse_link("first" => file, "second" => @resource)
662
-
663
- expect(file[:ensure]).to eq(:directory)
664
- end
665
-
666
- it "should return a hash with both created and existing resources with the relative paths as the hash keys" do
667
- expect(file).to receive(:perform_recursion).and_return([@first, @second])
668
- allow(file).to receive(:newchild).and_return(file)
669
- expect(file.recurse_link("second" => @resource)).to eq({"second" => @resource, "first" => file})
670
- end
671
- end
672
-
673
- describe "#recurse_local" do
674
- before do
675
- @metadata = double('metadata', :relative_path => "my/file")
676
- end
677
-
678
- it "should pass its path to the :perform_recursion method" do
679
- expect(file).to receive(:perform_recursion).with(file[:path]).and_return([@metadata])
680
- allow(file).to receive(:newchild)
681
- file.recurse_local
682
- end
683
-
684
- it "should return an empty hash if the recursion returns nothing" do
685
- expect(file).to receive(:perform_recursion).and_return(nil)
686
- expect(file.recurse_local).to eq({})
687
- end
688
-
689
- it "should create a new child resource with each generated metadata instance's relative path" do
690
- expect(file).to receive(:perform_recursion).and_return([@metadata])
691
- expect(file).to receive(:newchild).with(@metadata.relative_path).and_return("fiebar")
692
- file.recurse_local
693
- end
694
-
695
- it "should not create a new child resource for the '.' directory" do
696
- allow(@metadata).to receive(:relative_path).and_return(".")
697
-
698
- expect(file).to receive(:perform_recursion).and_return([@metadata])
699
- expect(file).not_to receive(:newchild)
700
- file.recurse_local
701
- end
702
-
703
- it "should return a hash of the created resources with the relative paths as the hash keys" do
704
- expect(file).to receive(:perform_recursion).and_return([@metadata])
705
- expect(file).to receive(:newchild).with("my/file").and_return("fiebar")
706
- expect(file.recurse_local).to eq({"my/file" => "fiebar"})
707
- end
708
-
709
- it "should set checksum_type to none if this file checksum is none" do
710
- file[:checksum] = :none
711
- expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(anything, hash_including(checksum_type: :none)).and_return([@metadata])
712
- expect(file).to receive(:newchild).with("my/file").and_return("fiebar")
713
- file.recurse_local
714
- end
715
- end
716
-
717
- describe "#recurse_remote" do
718
- let(:my) { File.expand_path('/my') }
719
-
720
- before do
721
- file[:source] = "puppet://foo/bar"
722
-
723
- @first = Puppet::FileServing::Metadata.new(my, :relative_path => "first")
724
- @second = Puppet::FileServing::Metadata.new(my, :relative_path => "second")
725
- allow(@first).to receive(:ftype).and_return("directory")
726
- allow(@second).to receive(:ftype).and_return("directory")
727
-
728
- @parameter = double('property', :metadata= => nil)
729
- @resource = double('file', :[]= => nil, :parameter => @parameter)
730
- end
731
-
732
- it "should pass its source to the :perform_recursion method" do
733
- data = Puppet::FileServing::Metadata.new(File.expand_path("/whatever"), :relative_path => "foobar")
734
- expect(file).to receive(:perform_recursion).with("puppet://foo/bar").and_return([data])
735
- allow(file).to receive(:newchild).and_return(@resource)
736
- file.recurse_remote({})
737
- end
738
-
739
- it "should not recurse when the remote file is not a directory" do
740
- data = Puppet::FileServing::Metadata.new(File.expand_path("/whatever"), :relative_path => ".")
741
- allow(data).to receive(:ftype).and_return("file")
742
- expect(file).to receive(:perform_recursion).with("puppet://foo/bar").and_return([data])
743
- expect(file).not_to receive(:newchild)
744
- file.recurse_remote({})
745
- end
746
-
747
- it "should set the source of each returned file to the searched-for URI plus the found relative path" do
748
- expect(@first).to receive(:source=).with(File.join("puppet://foo/bar", @first.relative_path))
749
- expect(file).to receive(:perform_recursion).and_return([@first])
750
- allow(file).to receive(:newchild).and_return(@resource)
751
- file.recurse_remote({})
752
- end
753
-
754
- it "should create a new resource for any relative file paths that do not already have a resource" do
755
- allow(file).to receive(:perform_recursion).and_return([@first])
756
- expect(file).to receive(:newchild).with("first").and_return(@resource)
757
- expect(file.recurse_remote({})).to eq({"first" => @resource})
758
- end
759
-
760
- it "should not create a new resource for any relative file paths that do already have a resource" do
761
- allow(file).to receive(:perform_recursion).and_return([@first])
762
- expect(file).not_to receive(:newchild)
763
- file.recurse_remote("first" => @resource)
764
- end
765
-
766
- it "should set the source of each resource to the source of the metadata" do
767
- allow(file).to receive(:perform_recursion).and_return([@first])
768
- allow(@resource).to receive(:[]=)
769
- expect(@resource).to receive(:[]=).with(:source, File.join("puppet://foo/bar", @first.relative_path))
770
- file.recurse_remote("first" => @resource)
771
- end
772
-
773
- it "should set the checksum parameter based on the metadata" do
774
- allow(file).to receive(:perform_recursion).and_return([@first])
775
- allow(@resource).to receive(:[]=)
776
- expect(@resource).to receive(:[]=).with(:checksum, "sha256")
777
- file.recurse_remote("first" => @resource)
778
- end
779
-
780
- it "should store the metadata in the source property for each resource so the source does not have to requery the metadata" do
781
- allow(file).to receive(:perform_recursion).and_return([@first])
782
- expect(@resource).to receive(:parameter).with(:source).and_return(@parameter)
783
-
784
- expect(@parameter).to receive(:metadata=).with(@first)
785
-
786
- file.recurse_remote("first" => @resource)
787
- end
788
-
789
- it "should not create a new resource for the '.' file" do
790
- allow(@first).to receive(:relative_path).and_return(".")
791
- allow(file).to receive(:perform_recursion).and_return([@first])
792
-
793
- expect(file).not_to receive(:newchild)
794
-
795
- file.recurse_remote({})
796
- end
797
-
798
- it "should store the metadata in the main file's source property if the relative path is '.'" do
799
- allow(@first).to receive(:relative_path).and_return(".")
800
- allow(file).to receive(:perform_recursion).and_return([@first])
801
-
802
- expect(file.parameter(:source)).to receive(:metadata=).with(@first)
803
-
804
- file.recurse_remote("first" => @resource)
805
- end
806
-
807
- it "should update the main file's checksum parameter if the relative path is '.'" do
808
- allow(@first).to receive(:relative_path).and_return(".")
809
- allow(file).to receive(:perform_recursion).and_return([@first])
810
-
811
- allow(file).to receive(:[]=)
812
- expect(file). to receive(:[]=).with(:checksum, "sha256")
813
-
814
- file.recurse_remote("first" => @resource)
815
- end
816
-
817
- describe "and multiple sources are provided" do
818
- let(:sources) do
819
- h = {}
820
- %w{/a /b /c /d}.each do |key|
821
- h[key] = Puppet::Util.uri_unescape(Puppet::Util.path_to_uri(File.expand_path(key)).to_s)
822
- end
823
- h
824
- end
825
-
826
- describe "and :sourceselect is set to :first" do
827
- it "should create file instances for the results for the first source to return any values" do
828
- data = Puppet::FileServing::Metadata.new(File.expand_path("/whatever"), :relative_path => "foobar")
829
- file[:source] = sources.keys.sort.map { |key| File.expand_path(key) }
830
- expect(file).to receive(:perform_recursion).with(sources['/a']).and_return(nil)
831
- expect(file).to receive(:perform_recursion).with(sources['/b']).and_return([])
832
- expect(file).to receive(:perform_recursion).with(sources['/c']).and_return([data])
833
- expect(file).not_to receive(:perform_recursion).with(sources['/d'])
834
- expect(file).to receive(:newchild).with("foobar").and_return(@resource)
835
- file.recurse_remote({})
836
- end
837
- end
838
-
839
- describe "and :sourceselect is set to :all" do
840
- before do
841
- file[:sourceselect] = :all
842
- end
843
-
844
- it "should return every found file that is not in a previous source" do
845
- klass = Puppet::FileServing::Metadata
846
-
847
- file[:source] = abs_path = %w{/a /b /c /d}.map {|f| File.expand_path(f) }
848
- allow(file).to receive(:newchild).and_return(@resource)
849
-
850
- one = [klass.new(abs_path[0], :relative_path => "a")]
851
- expect(file).to receive(:perform_recursion).with(sources['/a']).and_return(one)
852
- expect(file).to receive(:newchild).with("a").and_return(@resource)
853
-
854
- two = [klass.new(abs_path[1], :relative_path => "a"), klass.new(abs_path[1], :relative_path => "b")]
855
- expect(file).to receive(:perform_recursion).with(sources['/b']).and_return(two)
856
- expect(file).to receive(:newchild).with("b").and_return(@resource)
857
-
858
- three = [klass.new(abs_path[2], :relative_path => "a"), klass.new(abs_path[2], :relative_path => "c")]
859
- expect(file).to receive(:perform_recursion).with(sources['/c']).and_return(three)
860
- expect(file).to receive(:newchild).with("c").and_return(@resource)
861
- expect(file).to receive(:perform_recursion).with(sources['/d']).and_return([])
862
-
863
- file.recurse_remote({})
864
- end
865
- end
866
- end
867
- end
868
-
869
- describe "#perform_recursion", :uses_checksums => true do
870
- it "should use Metadata to do its recursion" do
871
- expect(Puppet::FileServing::Metadata.indirection).to receive(:search)
872
- file.perform_recursion(file[:path])
873
- end
874
-
875
- it "should use the provided path as the key to the search" do
876
- expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with("/foo", anything)
877
- file.perform_recursion("/foo")
878
- end
879
-
880
- it "should return the results of the metadata search" do
881
- expect(Puppet::FileServing::Metadata.indirection).to receive(:search).and_return("foobar")
882
- expect(file.perform_recursion(file[:path])).to eq("foobar")
883
- end
884
-
885
- it "should pass its recursion value to the search" do
886
- file[:recurse] = true
887
- expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(anything, hash_including(recurse: true))
888
- file.perform_recursion(file[:path])
889
- end
890
-
891
- it "should pass true if recursion is remote" do
892
- file[:recurse] = :remote
893
- expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(anything, hash_including(recurse: true))
894
- file.perform_recursion(file[:path])
895
- end
896
-
897
- it "should pass its recursion limit value to the search" do
898
- file[:recurselimit] = 10
899
- expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(anything, hash_including(recurselimit: 10))
900
- file.perform_recursion(file[:path])
901
- end
902
-
903
- it "should configure the search to ignore or manage links" do
904
- file[:links] = :manage
905
- expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(anything, hash_including(links: :manage))
906
- file.perform_recursion(file[:path])
907
- end
908
-
909
- it "should pass its 'ignore' setting to the search if it has one" do
910
- file[:ignore] = %w{.svn CVS}
911
- expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(anything, hash_including(ignore: %w{.svn CVS}))
912
- file.perform_recursion(file[:path])
913
- end
914
-
915
- with_digest_algorithms do
916
- it "it should pass its 'checksum' setting #{metadata[:digest_algorithm]} to the search" do
917
- file[:source] = File.expand_path('/foo')
918
- expect(Puppet::FileServing::Metadata.indirection).to receive(:search).with(anything, hash_including(checksum_type: digest_algorithm.intern))
919
- file.perform_recursion(file[:path])
920
- end
921
- end
922
- end
923
-
924
- describe "#remove_existing" do
925
- it "should do nothing if the file doesn't exist" do
926
- expect(file.remove_existing(:file)).to eq(false)
927
- end
928
-
929
- it "should fail if it can't backup the file" do
930
- file[:backup] = true
931
- allow(file).to receive(:stat).and_return(double('stat', :ftype => 'file'))
932
- allow(file).to receive(:perform_backup).and_return(false)
933
-
934
- expect { file.remove_existing(:file) }.to raise_error(Puppet::Error, /Could not back up; will not remove/)
935
- end
936
-
937
- describe "backing up directories" do
938
- it "should not backup directories if backup is true and force is false" do
939
- file[:backup] = true
940
- file[:force] = false
941
- allow(file).to receive(:stat).and_return(double('stat', :ftype => 'directory'))
942
-
943
- expect(file).not_to receive(:perform_backup)
944
- expect(file).to receive(:warning).with("Could not back up file of type directory")
945
- expect(file.remove_existing(:file)).to eq(false)
946
- end
947
-
948
- it "should backup directories if backup is true and force is true" do
949
- file[:backup] = true
950
- file[:force] = true
951
- allow(file).to receive(:stat).and_return(double('stat', :ftype => 'directory'))
952
-
953
- expect(FileUtils).to receive(:rmtree).with(file[:path])
954
- expect(file).to receive(:perform_backup).and_return(true)
955
-
956
- expect(file.remove_existing(:file)).to eq(true)
957
- end
958
- end
959
-
960
- it "should not do anything if the file is already the right type and not a link" do
961
- allow(file).to receive(:stat).and_return(double('stat', :ftype => 'file'))
962
-
963
- expect(file.remove_existing(:file)).to eq(false)
964
- end
965
-
966
- it "should not remove directories and should not invalidate the stat unless force is true" do
967
- file[:force] = false
968
- # Actually call stat to set @needs_stat to nil
969
- file.stat
970
- allow(file).to receive(:stat).and_return(double('stat', :ftype => 'directory'))
971
-
972
- expect(file.instance_variable_get(:@stat)).to eq(nil)
973
- end
974
-
975
- it "should remove a directory if backup is true and force is true" do
976
- file[:backup] = true
977
- file[:force] = true
978
- allow(file).to receive(:stat).and_return(double('stat', :ftype => 'directory'))
979
-
980
- expect(FileUtils).to receive(:rmtree).with(file[:path])
981
-
982
- expect(file.remove_existing(:file)).to eq(true)
983
- end
984
-
985
- it "should remove an existing file" do
986
- allow(file).to receive(:perform_backup).and_return(true)
987
- FileUtils.touch(path)
988
-
989
- expect(file.remove_existing(:directory)).to eq(true)
990
-
991
- expect(Puppet::FileSystem.exist?(file[:path])).to eq(false)
992
- end
993
-
994
- it "should remove an existing link", :if => described_class.defaultprovider.feature?(:manages_symlinks) do
995
- allow(file).to receive(:perform_backup).and_return(true)
996
-
997
- target = tmpfile('link_target')
998
- FileUtils.touch(target)
999
- Puppet::FileSystem.symlink(target, path)
1000
- file[:target] = target
1001
-
1002
- expect(file.remove_existing(:directory)).to eq(true)
1003
-
1004
- expect(Puppet::FileSystem.exist?(file[:path])).to eq(false)
1005
- end
1006
-
1007
- it "should fail if the file is not a directory, link, file, fifo, socket, or is unknown" do
1008
- file[:backup] = 'puppet'
1009
- allow(file).to receive(:stat).and_return(double('stat', :ftype => 'blockSpecial'))
1010
-
1011
- expect(file).to receive(:warning).with("Could not back up file of type blockSpecial")
1012
- expect { file.remove_existing(:file) }.to raise_error(Puppet::Error, /Could not remove files of type blockSpecial/)
1013
- end
1014
-
1015
- it "should invalidate the existing stat of the file" do
1016
- # Actually call stat to set @needs_stat to nil
1017
- file.stat
1018
- allow(file).to receive(:stat).and_return(double('stat', :ftype => 'file'))
1019
-
1020
- allow(Puppet::FileSystem).to receive(:unlink)
1021
-
1022
- expect(file.remove_existing(:directory)).to eq(true)
1023
- expect(file.instance_variable_get(:@stat)).to eq(:needs_stat)
1024
- end
1025
- end
1026
-
1027
- describe "#retrieve" do
1028
- it "should copy the source values if the 'source' parameter is set" do
1029
- file[:source] = File.expand_path('/foo/bar')
1030
- expect(file.parameter(:source)).to receive(:copy_source_values)
1031
- file.retrieve
1032
- end
1033
- end
1034
-
1035
- describe "#should_be_file?" do
1036
- it "should have a method for determining if the file should be a normal file" do
1037
- expect(file).to respond_to(:should_be_file?)
1038
- end
1039
-
1040
- it "should be a file if :ensure is set to :file" do
1041
- file[:ensure] = :file
1042
- expect(file).to be_should_be_file
1043
- end
1044
-
1045
- it "should be a file if :ensure is set to :present and the file exists as a normal file" do
1046
- allow(file).to receive(:stat).and_return(double('stat', :ftype => "file"))
1047
- file[:ensure] = :present
1048
- expect(file).to be_should_be_file
1049
- end
1050
-
1051
- it "should not be a file if :ensure is set to something other than :file" do
1052
- file[:ensure] = :directory
1053
- expect(file).to_not be_should_be_file
1054
- end
1055
-
1056
- it "should not be a file if :ensure is set to :present and the file exists but is not a normal file" do
1057
- allow(file).to receive(:stat).and_return(double('stat', :ftype => "directory"))
1058
- file[:ensure] = :present
1059
- expect(file).to_not be_should_be_file
1060
- end
1061
-
1062
- it "should be a file if :ensure is not set and :content is" do
1063
- file[:content] = "foo"
1064
- expect(file).to be_should_be_file
1065
- end
1066
-
1067
- it "should be a file if neither :ensure nor :content is set but the file exists as a normal file" do
1068
- allow(file).to receive(:stat).and_return(double("stat", :ftype => "file"))
1069
- expect(file).to be_should_be_file
1070
- end
1071
-
1072
- it "should not be a file if neither :ensure nor :content is set but the file exists but not as a normal file" do
1073
- allow(file).to receive(:stat).and_return(double("stat", :ftype => "directory"))
1074
- expect(file).to_not be_should_be_file
1075
- end
1076
- end
1077
-
1078
- describe "#stat", :if => described_class.defaultprovider.feature?(:manages_symlinks) do
1079
- before do
1080
- target = tmpfile('link_target')
1081
- FileUtils.touch(target)
1082
- Puppet::FileSystem.symlink(target, path)
1083
-
1084
- file[:target] = target
1085
- file[:links] = :manage # so we always use :lstat
1086
- end
1087
-
1088
- it "should stat the target if it is following links" do
1089
- file[:links] = :follow
1090
-
1091
- expect(file.stat.ftype).to eq('file')
1092
- end
1093
-
1094
- it "should stat the link if is it not following links" do
1095
- file[:links] = :manage
1096
-
1097
- expect(file.stat.ftype).to eq('link')
1098
- end
1099
-
1100
- it "should return nil if the file does not exist" do
1101
- file[:path] = make_absolute('/foo/bar/baz/non-existent')
1102
-
1103
- expect(file.stat).to be_nil
1104
- end
1105
-
1106
- it "should return nil if the file cannot be stat'ed" do
1107
- dir = tmpfile('link_test_dir')
1108
- child = File.join(dir, 'some_file')
1109
- Dir.mkdir(dir)
1110
- File.chmod(0, dir)
1111
-
1112
- file[:path] = child
1113
-
1114
- expect(file.stat).to be_nil
1115
-
1116
- # chmod it back so we can clean it up
1117
- File.chmod(0777, dir)
1118
- end
1119
-
1120
- it "should return nil if parts of path are no directories" do
1121
- regular_file = tmpfile('ENOTDIR_test')
1122
- FileUtils.touch(regular_file)
1123
- impossible_child = File.join(regular_file, 'some_file')
1124
-
1125
- file[:path] = impossible_child
1126
- expect(file.stat).to be_nil
1127
- end
1128
-
1129
- it "should return the stat instance" do
1130
- expect(file.stat).to be_a(File::Stat)
1131
- end
1132
-
1133
- it "should cache the stat instance" do
1134
- expect(file.stat.object_id).to eql(file.stat.object_id)
1135
- end
1136
- end
1137
-
1138
- describe "#write" do
1139
- describe "when resource mode is supplied" do
1140
- before do
1141
- allow(file).to receive(:property_fix)
1142
- end
1143
-
1144
- context "and writing temporary files" do
1145
- before do
1146
- allow(file).to receive(:write_temporary_file?).and_return(true)
1147
- end
1148
-
1149
- it "should convert symbolic mode to int" do
1150
- file[:mode] = 'oga=r'
1151
- expect(Puppet::Util).to receive(:replace_file).with(file[:path], 0444, { :staging_location => nil, :validate_callback => nil })
1152
- file.write
1153
- end
1154
-
1155
- it "should support int modes" do
1156
- file[:mode] = '0444'
1157
- expect(Puppet::Util).to receive(:replace_file).with(file[:path], 0444, { :staging_location => nil, :validate_callback => nil })
1158
- file.write
1159
- end
1160
- end
1161
-
1162
- context "and not writing temporary files" do
1163
- before do
1164
- allow(file).to receive(:write_temporary_file?).and_return(false)
1165
- end
1166
-
1167
- it "should set a umask of 0" do
1168
- file[:mode] = 'oga=r'
1169
- expect(Puppet::Util).to receive(:withumask).with(0)
1170
- file.write
1171
- end
1172
-
1173
- it "should convert symbolic mode to int" do
1174
- file[:mode] = 'oga=r'
1175
- expect(File).to receive(:open).with(file[:path], anything, 0444)
1176
- file.write
1177
- end
1178
-
1179
- it "should support int modes" do
1180
- file[:mode] = '0444'
1181
- expect(File).to receive(:open).with(file[:path], anything, 0444)
1182
- file.write
1183
- end
1184
- end
1185
- end
1186
-
1187
- describe "when resource mode is not supplied" do
1188
- context "and content is supplied" do
1189
- it "should default to 0644 mode" do
1190
- file = described_class.new(:path => path, :content => FILE_CONTENT)
1191
-
1192
- file.write file.parameter(:content)
1193
-
1194
- expect(File.stat(file[:path]).mode & 0777).to eq(0644)
1195
- end
1196
- end
1197
-
1198
- context "and no content is supplied" do
1199
- it "should use puppet's default umask of 022" do
1200
- file = described_class.new(:path => path)
1201
-
1202
- umask_from_the_user = 0777
1203
- Puppet::Util.withumask(umask_from_the_user) do
1204
- file.write
1205
- end
1206
-
1207
- expect(File.stat(file[:path]).mode & 0777).to eq(0644)
1208
- end
1209
- end
1210
- end
1211
- end
1212
-
1213
- describe "#write_temporary_file?" do
1214
- it "should be true if the file has specified content" do
1215
- file[:content] = 'some content'
1216
-
1217
- expect(file.send(:write_temporary_file?)).to be_truthy
1218
- end
1219
-
1220
- it "should be true if the file has specified source" do
1221
- file[:source] = File.expand_path('/tmp/foo')
1222
-
1223
- expect(file.send(:write_temporary_file?)).to be_truthy
1224
- end
1225
-
1226
- it "should be false if the file has neither content nor source" do
1227
- expect(file.send(:write_temporary_file?)).to be_falsey
1228
- end
1229
-
1230
- context "and staging_location is provided" do
1231
- it "should write the file first to the staging location" do
1232
- file[:content] = 'some content'
1233
- file[:staging_location] = Dir.tmpdir()
1234
- expect(Puppet::Util).to receive(:replace_file).with(file[:path], nil, { staging_location: Dir.tmpdir(), validate_callback: nil })
1235
- file.write
1236
- end
1237
- end
1238
- end
1239
-
1240
- describe "#property_fix" do
1241
- {
1242
- :mode => '0777',
1243
- :owner => 'joeuser',
1244
- :group => 'joeusers',
1245
- :seluser => 'seluser',
1246
- :selrole => 'selrole',
1247
- :seltype => 'seltype',
1248
- :selrange => 'selrange'
1249
- }.each do |name,value|
1250
- it "should sync the #{name} property if it's not in sync" do
1251
- file[name] = value
1252
-
1253
- prop = file.property(name)
1254
- expect(prop).to receive(:retrieve)
1255
- expect(prop).to receive(:safe_insync?).and_return(false)
1256
- expect(prop).to receive(:sync)
1257
-
1258
- file.send(:property_fix)
1259
- end
1260
- end
1261
- end
1262
-
1263
- describe "when autorequiring" do
1264
- describe "target" do
1265
- it "should require file resource when specified with the target property", :if => described_class.defaultprovider.feature?(:manages_symlinks) do
1266
- file = described_class.new(:path => File.expand_path("/foo"), :ensure => :directory)
1267
- link = described_class.new(:path => File.expand_path("/bar"), :ensure => :link, :target => File.expand_path("/foo"))
1268
- catalog.add_resource file
1269
- catalog.add_resource link
1270
- reqs = link.autorequire
1271
- expect(reqs.size).to eq(1)
1272
- expect(reqs[0].source).to eq(file)
1273
- expect(reqs[0].target).to eq(link)
1274
- end
1275
-
1276
- it "should require file resource when specified with the ensure property" do
1277
- file = described_class.new(:path => File.expand_path("/foo"), :ensure => :directory)
1278
- link = described_class.new(:path => File.expand_path("/bar"), :ensure => File.expand_path("/foo"))
1279
- catalog.add_resource file
1280
- catalog.add_resource link
1281
- reqs = link.autorequire
1282
- expect(reqs.size).to eq(1)
1283
- expect(reqs[0].source).to eq(file)
1284
- expect(reqs[0].target).to eq(link)
1285
- end
1286
-
1287
- it "should not require target if target is not managed", :if => described_class.defaultprovider.feature?(:manages_symlinks) do
1288
- link = described_class.new(:path => File.expand_path('/foo'), :ensure => :link, :target => '/bar')
1289
- catalog.add_resource link
1290
- expect(link.autorequire.size).to eq(0)
1291
- end
1292
- end
1293
-
1294
- describe "directories" do
1295
- it "should autorequire its parent directory" do
1296
- dir = described_class.new(:path => File.dirname(path))
1297
- catalog.add_resource file
1298
- catalog.add_resource dir
1299
- reqs = file.autorequire
1300
- expect(reqs[0].source).to eq(dir)
1301
- expect(reqs[0].target).to eq(file)
1302
- end
1303
-
1304
- it "should autorequire its nearest ancestor directory" do
1305
- dir = described_class.new(:path => File.dirname(path))
1306
- grandparent = described_class.new(:path => File.dirname(File.dirname(path)))
1307
- catalog.add_resource file
1308
- catalog.add_resource dir
1309
- catalog.add_resource grandparent
1310
- reqs = file.autorequire
1311
- expect(reqs.length).to eq(1)
1312
- expect(reqs[0].source).to eq(dir)
1313
- expect(reqs[0].target).to eq(file)
1314
- end
1315
-
1316
- it "should not autorequire anything when there is no nearest ancestor directory" do
1317
- catalog.add_resource file
1318
- expect(file.autorequire).to be_empty
1319
- end
1320
-
1321
- it "should not autorequire its parent dir if its parent dir is itself" do
1322
- file[:path] = File.expand_path('/')
1323
- catalog.add_resource file
1324
- expect(file.autorequire).to be_empty
1325
- end
1326
-
1327
- describe "on Windows systems", :if => Puppet::Util::Platform.windows? do
1328
- describe "when using UNC filenames" do
1329
- it "should autorequire its parent directory" do
1330
- file[:path] = '//localhost/foo/bar/baz'
1331
- dir = described_class.new(:path => "//localhost/foo/bar")
1332
- catalog.add_resource file
1333
- catalog.add_resource dir
1334
- reqs = file.autorequire
1335
- expect(reqs[0].source).to eq(dir)
1336
- expect(reqs[0].target).to eq(file)
1337
- end
1338
-
1339
- it "should autorequire its nearest ancestor directory" do
1340
- file = described_class.new(:path => "//localhost/foo/bar/baz/qux")
1341
- dir = described_class.new(:path => "//localhost/foo/bar/baz")
1342
- grandparent = described_class.new(:path => "//localhost/foo/bar")
1343
- catalog.add_resource file
1344
- catalog.add_resource dir
1345
- catalog.add_resource grandparent
1346
- reqs = file.autorequire
1347
- expect(reqs.length).to eq(1)
1348
- expect(reqs[0].source).to eq(dir)
1349
- expect(reqs[0].target).to eq(file)
1350
- end
1351
-
1352
- it "should not autorequire anything when there is no nearest ancestor directory" do
1353
- file = described_class.new(:path => "//localhost/foo/bar/baz/qux")
1354
- catalog.add_resource file
1355
- expect(file.autorequire).to be_empty
1356
- end
1357
-
1358
- it "should not autorequire its parent dir if its parent dir is itself" do
1359
- file = described_class.new(:path => "//localhost/foo")
1360
- catalog.add_resource file
1361
- puts file.autorequire
1362
- expect(file.autorequire).to be_empty
1363
- end
1364
- end
1365
- end
1366
- end
1367
- end
1368
-
1369
- describe "when managing links", :if => Puppet.features.manages_symlinks? do
1370
- require 'tempfile'
1371
-
1372
- before :each do
1373
- Dir.mkdir(path)
1374
- @target = File.join(path, "target")
1375
- @link = File.join(path, "link")
1376
-
1377
- target = described_class.new(
1378
- :ensure => :file, :path => @target,
1379
- :catalog => catalog, :content => 'yayness',
1380
- :mode => '0644')
1381
- catalog.add_resource target
1382
-
1383
- @link_resource = described_class.new(
1384
- :ensure => :link, :path => @link,
1385
- :target => @target, :catalog => catalog,
1386
- :mode => '0755')
1387
- catalog.add_resource @link_resource
1388
-
1389
- # to prevent the catalog from trying to write state.yaml
1390
- allow(Puppet::Util::Storage).to receive(:store)
1391
- end
1392
-
1393
- it "should preserve the original file mode and ignore the one set by the link" do
1394
- @link_resource[:links] = :manage # default
1395
- catalog.apply
1396
-
1397
- # I convert them to strings so they display correctly if there's an error.
1398
- expect((Puppet::FileSystem.stat(@target).mode & 007777).to_s(8)).to eq('644')
1399
- end
1400
-
1401
- it "should manage the mode of the followed link" do
1402
- if Puppet::Util::Platform.windows?
1403
- skip "Windows cannot presently manage the mode when following symlinks"
1404
- else
1405
- @link_resource[:links] = :follow
1406
- catalog.apply
1407
-
1408
- expect((Puppet::FileSystem.stat(@target).mode & 007777).to_s(8)).to eq('755')
1409
- end
1410
- end
1411
- end
1412
-
1413
- describe 'when using source' do
1414
- # different UTF-8 widths
1415
- # 1-byte A
1416
- # 2-byte ۿ - http://www.fileformat.info/info/unicode/char/06ff/index.htm - 0xDB 0xBF / 219 191
1417
- # 3-byte ᚠ - http://www.fileformat.info/info/unicode/char/16A0/index.htm - 0xE1 0x9A 0xA0 / 225 154 160
1418
- # 4-byte <U+070E> - http://www.fileformat.info/info/unicode/char/2070E/index.htm - 0xF0 0xA0 0x9C 0x8E / 240 160 156 142
1419
- let (:mixed_utf8) { "A\u06FF\u16A0\u{2070E}" } # Aۿᚠ<U+070E>
1420
-
1421
- it 'should allow UTF-8 characters and return a UTF-8 uri' do
1422
- filename = "/bar #{mixed_utf8}"
1423
- source = "puppet://foo#{filename}"
1424
- file[:source] = source
1425
-
1426
- # intercept the indirector call to provide back mocked metadata for the given URI
1427
- metadata = double('metadata', :source => source)
1428
- expect(metadata).to receive(:source=)
1429
- expect(Puppet::FileServing::Metadata.indirection).to receive(:find).with(source, anything).and_return(metadata)
1430
-
1431
- uri = file.parameters[:source].uri
1432
- expect(Puppet::Util.uri_unescape(uri.path)).to eq(filename)
1433
- expect(uri.path.encoding).to eq(Encoding::UTF_8)
1434
- end
1435
-
1436
- matcher :request_key do |expected|
1437
- match do |actual|
1438
- values_match? expected, actual.key
1439
- end
1440
- end
1441
-
1442
- it 'should allow UTF-8 characters inside the indirector / terminus code' do
1443
- filename = "/bar #{mixed_utf8}"
1444
- source = "puppet://foo#{filename}"
1445
- file[:source] = source
1446
-
1447
- # for this test to properly trigger previously errant behavior, the code for
1448
- # Puppet::FileServing::Metadata.indirection.find must run and produce an
1449
- # instance of Puppet::Indirector::FileMetadata::Rest that can be amended
1450
- metadata = double('metadata', :source => source)
1451
- expect(metadata).to receive(:source=)
1452
- require 'puppet/indirector/file_metadata/rest'
1453
- expect_any_instance_of(Puppet::Indirector::FileMetadata::Rest).to receive(:find).with(request_key(filename[1..-1])).and_return(metadata)
1454
-
1455
- uri = file.parameters[:source].uri
1456
- expect(Puppet::Util.uri_unescape(uri.path)).to eq(filename)
1457
- expect(uri.path.encoding).to eq(Encoding::UTF_8)
1458
- end
1459
- end
1460
-
1461
- describe "when using source" do
1462
- let(:source) { tmpfile('file_source') }
1463
-
1464
- before do
1465
- file[:source] = source
1466
- end
1467
-
1468
- Puppet::Type::File::ParameterChecksum.value_collection.values.reject {|v| v == :none}.each do |checksum_type|
1469
- describe "with checksum '#{checksum_type}'" do
1470
- before do
1471
- file[:checksum] = checksum_type
1472
- end
1473
-
1474
- it 'should validate' do
1475
- expect { file.validate }.to_not raise_error
1476
- end
1477
-
1478
- it 'should fail on an invalid checksum_value' do
1479
- file[:checksum_value] = ''
1480
- expect { file.validate }.to raise_error(Puppet::Error, "Checksum value '' is not a valid checksum type #{checksum_type}")
1481
- end
1482
-
1483
- it 'should validate a valid checksum_value' do
1484
- file[:checksum_value] = CHECKSUM_VALUES[checksum_type]
1485
- expect { file.validate }.to_not raise_error
1486
- end
1487
-
1488
- it 'fails if the checksum_value parameter and written file do not match' do
1489
- skip if checksum_type =~ /^(ctime|mtime)/
1490
-
1491
- File.write(source, FILE_CONTENT)
1492
- file[:checksum_value] = INVALID_CHECKSUM_VALUES[checksum_type]
1493
-
1494
- expect {
1495
- file.property(:checksum_value).sync
1496
- }.to raise_error(Puppet::Error, /File written to disk did not match desired checksum/)
1497
-
1498
- expect(Puppet::FileSystem).to_not be_exist(file[:path])
1499
- end
1500
-
1501
- it 'fails if the checksum_value parameter does not match, but the metadata does' do
1502
- skip if checksum_type =~ /^(ctime|mtime)/
1503
-
1504
- File.write(source, FILE_CONTENT)
1505
- file[:checksum_value] = INVALID_CHECKSUM_VALUES[checksum_type]
1506
- allow(file.parameter(:source).metadata).to receive(:checksum).and_return(file[:checksum_value])
1507
-
1508
- expect {
1509
- file.property(:checksum_value).sync
1510
- }.to raise_error(Puppet::Error, /File written to disk did not match desired checksum/)
1511
-
1512
- expect(Puppet::FileSystem).to_not be_exist(file[:path])
1513
- end
1514
-
1515
- it 'replaces a file from a source when the checksum matches' do
1516
- File.write(source, FILE_CONTENT)
1517
- file[:checksum_value] = CHECKSUM_VALUES[checksum_type]
1518
-
1519
- file.property(:checksum_value).sync
1520
- checksum = file.parameter(:checksum).sum_file(file[:path])
1521
-
1522
- if checksum_type =~ /^(ctime|mtime)/
1523
- # file on disk ctime/mtime will be later than expected time
1524
- expect(checksum).to match(/{#{checksum_type}}/)
1525
- else
1526
- expect(checksum).to eq("{#{checksum_type}}#{file[:checksum_value]}")
1527
- end
1528
- end
1529
- end
1530
- end
1531
-
1532
- describe "on Windows when source_permissions is `use`" do
1533
- before :each do
1534
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(true)
1535
-
1536
- file[:source_permissions] = "use"
1537
- end
1538
- let(:err_message) { "Copying owner/mode/group from the" <<
1539
- " source file on Windows is not supported;" <<
1540
- " use source_permissions => ignore." }
1541
-
1542
- it "should issue error when retrieving" do
1543
- expect { file.retrieve }.to raise_error(err_message)
1544
- end
1545
-
1546
- it "should issue error when retrieving if only user is unspecified" do
1547
- file[:group] = 2
1548
- file[:mode] = "0003"
1549
-
1550
- expect { file.retrieve }.to raise_error(err_message)
1551
- end
1552
-
1553
- it "should issue error when retrieving if only group is unspecified" do
1554
- file[:owner] = 1
1555
- file[:mode] = "0003"
1556
-
1557
- expect { file.retrieve }.to raise_error(err_message)
1558
- end
1559
-
1560
- it "should issue error when retrieving if only mode is unspecified" do
1561
- file[:owner] = 1
1562
- file[:group] = 2
1563
-
1564
- expect { file.retrieve }.to raise_error(err_message)
1565
- end
1566
-
1567
- it "should issue warning when retrieve if group, owner, and mode are all specified" do
1568
- file[:owner] = 1
1569
- file[:group] = 2
1570
- file[:mode] = "0003"
1571
-
1572
- expect(file.parameter(:source)).to receive(:copy_source_values)
1573
- expect(file).to receive(:warning).with(err_message)
1574
- expect { file.retrieve }.not_to raise_error
1575
- end
1576
- end
1577
-
1578
- describe "with checksum 'none'" do
1579
- before do
1580
- file[:checksum] = :none
1581
- end
1582
-
1583
- it 'should raise an exception when validating' do
1584
- expect { file.validate }.to raise_error(/You cannot specify source when using checksum 'none'/)
1585
- end
1586
- end
1587
- end
1588
-
1589
- describe "when using content" do
1590
- before :each do
1591
- file[:content] = FILE_CONTENT
1592
- end
1593
-
1594
- (Puppet::Type::File::ParameterChecksum.value_collection.values - SOURCE_ONLY_CHECKSUMS).each do |checksum_type|
1595
- describe "with checksum '#{checksum_type}'" do
1596
- before do
1597
- file[:checksum] = checksum_type
1598
- end
1599
-
1600
- it 'should validate' do
1601
- expect { file.validate }.to_not raise_error
1602
- end
1603
-
1604
- it 'should fail on an invalid checksum_value' do
1605
- file[:checksum_value] = ''
1606
- expect { file.validate }.to raise_error(Puppet::Error, "Checksum value '' is not a valid checksum type #{checksum_type}")
1607
- end
1608
-
1609
- it 'should validate a valid checksum_value' do
1610
- file[:checksum_value] = CHECKSUM_VALUES[checksum_type]
1611
- expect { file.validate }.to_not raise_error
1612
- end
1613
-
1614
- it 'fails if the checksum_value parameter and written file do not match' do
1615
- file[:checksum_value] = INVALID_CHECKSUM_VALUES[checksum_type]
1616
-
1617
- expect {
1618
- file.property(:content).sync
1619
- }.to raise_error(Puppet::Error, /File written to disk did not match desired checksum/)
1620
-
1621
- expect(Puppet::FileSystem).to_not be_exist(file[:path])
1622
- end
1623
-
1624
- it 'fails if the calculated checksum for the content and written file do not match' do
1625
- allow(file.parameter(:checksum)).to receive(:sum).and_return(INVALID_CHECKSUM_VALUES[checksum_type])
1626
-
1627
- expect {
1628
- file.property(:content).sync
1629
- }.to raise_error(Puppet::Error, /File written to disk did not match desired checksum/)
1630
-
1631
- expect(Puppet::FileSystem).to_not be_exist(file[:path])
1632
- end
1633
-
1634
- it 'replaces a file from content when the checksum matches' do
1635
- file[:checksum_value] = CHECKSUM_VALUES[checksum_type]
1636
-
1637
- file.property(:content).sync
1638
- checksum = file.parameter(:checksum).sum_file(file[:path])
1639
-
1640
- if checksum_type =~ /^(ctime|mtime)/
1641
- # file on disk ctime/mtime will be later than expected time
1642
- expect(checksum).to match(/{#{checksum_type}}/)
1643
- else
1644
- expect(checksum).to eq("{#{checksum_type}}#{file[:checksum_value]}")
1645
- end
1646
- end
1647
- end
1648
- end
1649
-
1650
- SOURCE_ONLY_CHECKSUMS.each do |checksum_type|
1651
- describe "with checksum '#{checksum_type}'" do
1652
- it 'should raise an exception when validating' do
1653
- file[:checksum] = checksum_type
1654
-
1655
- expect { file.validate }.to raise_error(/You cannot specify content when using checksum '#{checksum_type}'/)
1656
- end
1657
- end
1658
- end
1659
- end
1660
-
1661
- describe "when checksum is none" do
1662
- before do
1663
- file[:checksum] = :none
1664
- end
1665
-
1666
- it 'should validate' do
1667
- expect { file.validate }.to_not raise_error
1668
- end
1669
-
1670
- it 'should fail on an invalid checksum_value' do
1671
- file[:checksum_value] = 'boo'
1672
- expect { file.validate }.to raise_error(Puppet::Error, "Checksum value 'boo' is not a valid checksum type none")
1673
- end
1674
-
1675
- it 'should validate a valid checksum_value' do
1676
- file[:checksum_value] = ''
1677
- expect { file.validate }.to_not raise_error
1678
- end
1679
-
1680
- it 'writes a file' do
1681
- file[:ensure] = :file
1682
- file.property(:ensure).sync
1683
-
1684
- expect(file.parameter(:checksum).sum_file(file[:path])).to eq('{none}')
1685
- end
1686
- end
1687
-
1688
- describe "when auditing" do
1689
- before :each do
1690
- # to prevent the catalog from trying to write state.yaml
1691
- allow(Puppet::Util::Storage).to receive(:store)
1692
- end
1693
-
1694
- it "should not fail if creating a new file if group is not set" do
1695
- file = described_class.new(:path => path, :audit => 'all', :content => 'content')
1696
- catalog.add_resource(file)
1697
-
1698
- report = catalog.apply.report
1699
-
1700
- expect(report.resource_statuses["File[#{path}]"]).not_to be_failed
1701
- expect(File.read(path)).to eq('content')
1702
- end
1703
-
1704
- it "should not log errors if creating a new file with ensure present and no content" do
1705
- file[:audit] = 'content'
1706
- file[:ensure] = 'present'
1707
- catalog.add_resource(file)
1708
-
1709
- catalog.apply
1710
-
1711
- expect(Puppet::FileSystem.exist?(path)).to be_truthy
1712
- expect(@logs).not_to be_any { |l|
1713
- # the audit metaparameter is deprecated and logs a warning
1714
- l.level != :notice
1715
- }
1716
- end
1717
- end
1718
-
1719
- describe "when specifying both source and checksum" do
1720
- it 'should use the specified checksum when source is first' do
1721
- file[:source] = File.expand_path('/foo')
1722
- file[:checksum] = :md5lite
1723
-
1724
- expect(file[:checksum]).to eq(:md5lite)
1725
- end
1726
-
1727
- it 'should use the specified checksum when source is last' do
1728
- file[:checksum] = :md5lite
1729
- file[:source] = File.expand_path('/foo')
1730
-
1731
- expect(file[:checksum]).to eq(:md5lite)
1732
- end
1733
- end
1734
-
1735
- describe "when validating" do
1736
- [[:source, :target], [:source, :content], [:target, :content]].each do |prop1,prop2|
1737
- it "should fail if both #{prop1} and #{prop2} are specified" do
1738
- file[prop1] = prop1 == :source ? File.expand_path("prop1 value") : "prop1 value"
1739
- file[prop2] = "prop2 value"
1740
- expect do
1741
- file.validate
1742
- end.to raise_error(Puppet::Error, /You cannot specify more than one of/)
1743
- end
1744
- end
1745
- end
1746
- end