puppet 7.27.0-universal-darwin → 7.29.0-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 (1286) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +62 -65
  3. data/Rakefile +0 -27
  4. data/examples/enc/regexp_nodes/regexp_nodes.rb +1 -1
  5. data/ext/project_data.yaml +4 -4
  6. data/lib/puppet/configurer.rb +1 -1
  7. data/lib/puppet/file_system/file_impl.rb +1 -1
  8. data/lib/puppet/file_system/posix.rb +1 -1
  9. data/lib/puppet/functions/versioncmp.rb +1 -1
  10. data/lib/puppet/http/service/compiler.rb +4 -0
  11. data/lib/puppet/indirector/catalog/compiler.rb +12 -4
  12. data/lib/puppet/indirector/catalog/rest.rb +8 -0
  13. data/lib/puppet/interface/action.rb +4 -2
  14. data/lib/puppet/interface/action_builder.rb +4 -9
  15. data/lib/puppet/pops/evaluator/literal_evaluator.rb +12 -3
  16. data/lib/puppet/pops/issues.rb +4 -0
  17. data/lib/puppet/pops/loader/ruby_data_type_instantiator.rb +1 -1
  18. data/lib/puppet/pops/loader/ruby_function_instantiator.rb +1 -1
  19. data/lib/puppet/pops/loader/ruby_legacy_function_instantiator.rb +1 -1
  20. data/lib/puppet/pops/validation/checker4_0.rb +13 -0
  21. data/lib/puppet/provider/package/appdmg.rb +1 -1
  22. data/lib/puppet/provider/package/dnf.rb +1 -0
  23. data/lib/puppet/provider/package/dnfmodule.rb +1 -1
  24. data/lib/puppet/provider/package/windows/package.rb +2 -2
  25. data/lib/puppet/provider/package/yum.rb +1 -1
  26. data/lib/puppet/provider/service/init.rb +2 -5
  27. data/lib/puppet/provider/service/systemd.rb +4 -3
  28. data/lib/puppet/settings.rb +16 -2
  29. data/lib/puppet/ssl/ssl_context.rb +10 -15
  30. data/lib/puppet/type/component.rb +1 -1
  31. data/lib/puppet/type/exec.rb +15 -7
  32. data/lib/puppet/type/resources.rb +1 -0
  33. data/lib/puppet/util/command_line/trollop.rb +1 -1
  34. data/lib/puppet/util/execution.rb +2 -1
  35. data/lib/puppet/util/package/version/pip.rb +2 -2
  36. data/lib/puppet/util/windows/registry.rb +39 -4
  37. data/lib/puppet/version.rb +1 -1
  38. data/man/man5/puppet.conf.5 +2 -2
  39. data/man/man8/puppet-agent.8 +1 -1
  40. data/man/man8/puppet-apply.8 +1 -1
  41. data/man/man8/puppet-catalog.8 +1 -1
  42. data/man/man8/puppet-config.8 +1 -1
  43. data/man/man8/puppet-describe.8 +1 -1
  44. data/man/man8/puppet-device.8 +1 -1
  45. data/man/man8/puppet-doc.8 +1 -1
  46. data/man/man8/puppet-epp.8 +1 -1
  47. data/man/man8/puppet-facts.8 +1 -1
  48. data/man/man8/puppet-filebucket.8 +1 -1
  49. data/man/man8/puppet-generate.8 +1 -1
  50. data/man/man8/puppet-help.8 +1 -1
  51. data/man/man8/puppet-lookup.8 +1 -1
  52. data/man/man8/puppet-module.8 +1 -1
  53. data/man/man8/puppet-node.8 +1 -1
  54. data/man/man8/puppet-parser.8 +1 -1
  55. data/man/man8/puppet-plugin.8 +1 -1
  56. data/man/man8/puppet-report.8 +1 -1
  57. data/man/man8/puppet-resource.8 +1 -1
  58. data/man/man8/puppet-script.8 +1 -1
  59. data/man/man8/puppet-ssl.8 +1 -1
  60. data/man/man8/puppet.8 +2 -2
  61. metadata +3 -2453
  62. data/spec/fixtures/faulty_face/puppet/face/syntax.rb +0 -8
  63. data/spec/fixtures/hiera.yaml +0 -9
  64. data/spec/fixtures/integration/application/agent/cached_deferred_catalog.json +0 -92
  65. data/spec/fixtures/integration/application/agent/lib/facter/agent_spec_role.rb +0 -3
  66. data/spec/fixtures/integration/application/apply/environments/spec/modules/amod/lib/puppet/provider/applytest/applytest.rb +0 -2
  67. data/spec/fixtures/integration/application/apply/environments/spec/modules/amod/lib/puppet/type/applytest.rb +0 -25
  68. data/spec/fixtures/integration/application/module/environments/direnv/modules/nginx/README +0 -3
  69. data/spec/fixtures/integration/application/module/environments/direnv/modules/nginx/manifests/init.pp +0 -17
  70. data/spec/fixtures/integration/application/module/environments/direnv/modules/nginx/metadata.json +0 -20
  71. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Gemfile +0 -4
  72. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Rakefile +0 -3
  73. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/lib/puppet/functions/l10n.rb +0 -8
  74. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/config.yaml +0 -25
  75. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/ja/puppet-l10n.po +0 -19
  76. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/puppet-l10n.pot +0 -20
  77. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/metadata.json +0 -8
  78. data/spec/fixtures/integration/node/environment/sitedir/00_a.pp +0 -2
  79. data/spec/fixtures/integration/node/environment/sitedir/01_b.pp +0 -6
  80. data/spec/fixtures/integration/node/environment/sitedir/03_empty.pp +0 -0
  81. data/spec/fixtures/integration/node/environment/sitedir/04_include.pp +0 -2
  82. data/spec/fixtures/integration/node/environment/sitedir2/00_a.pp +0 -2
  83. data/spec/fixtures/integration/node/environment/sitedir2/02_folder/01_b.pp +0 -6
  84. data/spec/fixtures/integration/node/environment/sitedir2/03_c.pp +0 -1
  85. data/spec/fixtures/integration/node/environment/sitedir2/04_include.pp +0 -2
  86. data/spec/fixtures/java.tgz +0 -0
  87. data/spec/fixtures/manifests/site.pp +0 -0
  88. data/spec/fixtures/module.tar.gz +0 -0
  89. data/spec/fixtures/releases/jamtur01-apache/Modulefile +0 -2
  90. data/spec/fixtures/releases/jamtur01-apache/files/httpd +0 -24
  91. data/spec/fixtures/releases/jamtur01-apache/files/test.vhost +0 -18
  92. data/spec/fixtures/releases/jamtur01-apache/lib/puppet/provider/a2mod/debian.rb +0 -21
  93. data/spec/fixtures/releases/jamtur01-apache/lib/puppet/type/a2mod.rb +0 -12
  94. data/spec/fixtures/releases/jamtur01-apache/manifests/dev.pp +0 -5
  95. data/spec/fixtures/releases/jamtur01-apache/manifests/init.pp +0 -34
  96. data/spec/fixtures/releases/jamtur01-apache/manifests/params.pp +0 -17
  97. data/spec/fixtures/releases/jamtur01-apache/manifests/php.pp +0 -5
  98. data/spec/fixtures/releases/jamtur01-apache/manifests/ssl.pp +0 -15
  99. data/spec/fixtures/releases/jamtur01-apache/manifests/vhost.pp +0 -15
  100. data/spec/fixtures/releases/jamtur01-apache/metadata.json +0 -1
  101. data/spec/fixtures/releases/jamtur01-apache/templates/vhost-default.conf.erb +0 -20
  102. data/spec/fixtures/releases/jamtur01-apache/tests/apache.pp +0 -1
  103. data/spec/fixtures/releases/jamtur01-apache/tests/dev.pp +0 -1
  104. data/spec/fixtures/releases/jamtur01-apache/tests/init.pp +0 -1
  105. data/spec/fixtures/releases/jamtur01-apache/tests/php.pp +0 -1
  106. data/spec/fixtures/releases/jamtur01-apache/tests/ssl.pp +0 -1
  107. data/spec/fixtures/releases/jamtur01-apache/tests/vhost.pp +0 -2
  108. data/spec/fixtures/ssl/127.0.0.1-key.pem +0 -117
  109. data/spec/fixtures/ssl/127.0.0.1.pem +0 -69
  110. data/spec/fixtures/ssl/bad-basic-constraints.pem +0 -81
  111. data/spec/fixtures/ssl/bad-int-basic-constraints.pem +0 -81
  112. data/spec/fixtures/ssl/ca.pem +0 -81
  113. data/spec/fixtures/ssl/crl.pem +0 -40
  114. data/spec/fixtures/ssl/ec-key-openssl.pem +0 -8
  115. data/spec/fixtures/ssl/ec-key-pk8.pem +0 -5
  116. data/spec/fixtures/ssl/ec-key.pem +0 -18
  117. data/spec/fixtures/ssl/ec.pem +0 -49
  118. data/spec/fixtures/ssl/encrypted-ec-key.pem +0 -21
  119. data/spec/fixtures/ssl/encrypted-key.pem +0 -120
  120. data/spec/fixtures/ssl/intermediate-agent-crl.pem +0 -40
  121. data/spec/fixtures/ssl/intermediate-agent.pem +0 -81
  122. data/spec/fixtures/ssl/intermediate-crl.pem +0 -46
  123. data/spec/fixtures/ssl/intermediate.pem +0 -81
  124. data/spec/fixtures/ssl/netlock-arany-utf8.pem +0 -23
  125. data/spec/fixtures/ssl/oid-key.pem +0 -117
  126. data/spec/fixtures/ssl/oid.pem +0 -69
  127. data/spec/fixtures/ssl/pluto-key.pem +0 -117
  128. data/spec/fixtures/ssl/pluto.pem +0 -66
  129. data/spec/fixtures/ssl/request-key.pem +0 -117
  130. data/spec/fixtures/ssl/request.pem +0 -60
  131. data/spec/fixtures/ssl/revoked-key.pem +0 -117
  132. data/spec/fixtures/ssl/revoked.pem +0 -66
  133. data/spec/fixtures/ssl/signed-key.pem +0 -117
  134. data/spec/fixtures/ssl/signed.pem +0 -66
  135. data/spec/fixtures/ssl/tampered-cert.pem +0 -66
  136. data/spec/fixtures/ssl/tampered-csr.pem +0 -60
  137. data/spec/fixtures/ssl/trusted_oid_mapping.yaml +0 -5
  138. data/spec/fixtures/ssl/unknown-127.0.0.1-key.pem +0 -117
  139. data/spec/fixtures/ssl/unknown-127.0.0.1.pem +0 -69
  140. data/spec/fixtures/ssl/unknown-ca-key.pem +0 -117
  141. data/spec/fixtures/ssl/unknown-ca.pem +0 -81
  142. data/spec/fixtures/stdlib.tgz +0 -0
  143. data/spec/fixtures/unit/application/environments/production/data/common.yaml +0 -24
  144. data/spec/fixtures/unit/application/environments/production/environment.conf +0 -1
  145. data/spec/fixtures/unit/application/environments/production/manifests/site.pp +0 -1
  146. data/spec/fixtures/unit/application/environments/puppet_func_provider/environment.conf +0 -1
  147. data/spec/fixtures/unit/application/environments/puppet_func_provider/functions/environment/data.pp +0 -10
  148. data/spec/fixtures/unit/application/environments/puppet_func_provider/manifests/site.pp +0 -1
  149. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/data/bad.json +0 -3
  150. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/environment.conf +0 -2
  151. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/hiera.yaml +0 -5
  152. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/manifests/site.pp +0 -5
  153. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/data/bad.yaml +0 -3
  154. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/environment.conf +0 -2
  155. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/hiera.yaml +0 -5
  156. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/manifests/site.pp +0 -5
  157. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/data/common.yaml +0 -2
  158. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/environment.conf +0 -2
  159. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/manifests/site.pp +0 -1
  160. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/data/common.yaml +0 -2
  161. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/manifests/init.pp +0 -5
  162. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/metadata.json +0 -9
  163. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/first.json +0 -3
  164. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/name.yaml +0 -2
  165. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/second.json +0 -3
  166. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/single.yaml +0 -2
  167. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/third_utf8.json +0 -3
  168. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/utf8.yaml +0 -3
  169. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data2/single.yaml +0 -2
  170. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/environment.conf +0 -2
  171. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/hiera.yaml +0 -22
  172. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/manifests/site.pp +0 -5
  173. data/spec/fixtures/unit/data_providers/environments/hiera_misc/data/common.yaml +0 -48
  174. data/spec/fixtures/unit/data_providers/environments/hiera_misc/environment.conf +0 -2
  175. data/spec/fixtures/unit/data_providers/environments/hiera_misc/manifests/site.pp +0 -1
  176. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/data/common.yaml +0 -30
  177. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/manifests/init.pp +0 -13
  178. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/metadata.json +0 -9
  179. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/data/common.yaml +0 -4
  180. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/data/specific.yaml +0 -4
  181. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/environment.conf +0 -2
  182. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/hiera.yaml +0 -7
  183. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/manifests/site.pp +0 -1
  184. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/first.json +0 -3
  185. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/name.yaml +0 -2
  186. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/second.json +0 -3
  187. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/server1.yaml +0 -1
  188. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/server2.yaml +0 -1
  189. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/single.yaml +0 -2
  190. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data2/single.yaml +0 -2
  191. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/hiera.yaml +0 -20
  192. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/manifests/init.pp +0 -5
  193. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/metadata.json +0 -9
  194. data/spec/fixtures/unit/data_providers/environments/hiera_modules/data/common.yaml +0 -4
  195. data/spec/fixtures/unit/data_providers/environments/hiera_modules/data/specific.yaml +0 -4
  196. data/spec/fixtures/unit/data_providers/environments/hiera_modules/environment.conf +0 -2
  197. data/spec/fixtures/unit/data_providers/environments/hiera_modules/hiera.yaml +0 -7
  198. data/spec/fixtures/unit/data_providers/environments/hiera_modules/manifests/site.pp +0 -1
  199. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/data/common.yaml +0 -6
  200. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/hiera.yaml +0 -5
  201. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/manifests/init.pp +0 -2
  202. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/metadata.json +0 -9
  203. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/data/common.yaml +0 -4
  204. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/hiera.yaml +0 -5
  205. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/manifests/init.pp +0 -3
  206. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/metadata.json +0 -9
  207. data/spec/fixtures/unit/data_providers/environments/production/environment.conf +0 -2
  208. data/spec/fixtures/unit/data_providers/environments/production/lib/puppet/functions/environment/data.rb +0 -9
  209. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/lib/puppet/functions/abc/data.rb +0 -9
  210. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/manifests/init.pp +0 -10
  211. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/metadata.json +0 -9
  212. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/functions/data.pp +0 -6
  213. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/manifests/init.pp +0 -9
  214. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/metadata.json +0 -9
  215. data/spec/fixtures/unit/forge/bacula-releases.json +0 -128
  216. data/spec/fixtures/unit/forge/bacula.json +0 -76
  217. data/spec/fixtures/unit/forge/bacula.tar.gz +0 -0
  218. data/spec/fixtures/unit/functions/hiera/hiera/backend/hieraspec_backend.rb +0 -22
  219. data/spec/fixtures/unit/functions/lookup/data/common.yaml +0 -19
  220. data/spec/fixtures/unit/functions/lookup/hiera/backend/custom_backend.rb +0 -18
  221. data/spec/fixtures/unit/functions/lookup/hiera/backend/other_backend.rb +0 -7
  222. data/spec/fixtures/unit/functions/lookup_fixture/data/common.yaml +0 -19
  223. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/environment.conf +0 -2
  224. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/lib/puppet/functions/environment/data.rb +0 -13
  225. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/abc/lib/puppet/functions/abc/data.rb +0 -9
  226. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/abc/manifests/init.pp +0 -8
  227. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/abc/metadata.json +0 -9
  228. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bad_data/lib/puppet/functions/bad_data/data.rb +0 -7
  229. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bad_data/manifests/init.pp +0 -2
  230. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bad_data/metadata.json +0 -9
  231. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bca/lib/puppet/functions/bca/data.rb +0 -9
  232. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bca/manifests/init.pp +0 -2
  233. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bca/metadata.json +0 -9
  234. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/data/empty.json +0 -0
  235. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/hiera.yaml +0 -5
  236. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/manifests/init.pp +0 -2
  237. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/metadata.json +0 -9
  238. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/data/empty_key.json +0 -1
  239. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/hiera.yaml +0 -5
  240. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/manifests/init.pp +0 -2
  241. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/metadata.json +0 -9
  242. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/data/empty_key.yaml +0 -1
  243. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/hiera.yaml +0 -5
  244. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/manifests/init.pp +0 -2
  245. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/metadata.json +0 -9
  246. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/data/empty.yaml +0 -2
  247. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/hiera.yaml +0 -5
  248. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/manifests/init.pp +0 -2
  249. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/metadata.json +0 -9
  250. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/data/first.json +0 -4
  251. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/hiera.yaml +0 -8
  252. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/manifests/init.pp +0 -5
  253. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/metadata.json +0 -9
  254. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/lib/puppet/functions/meta/data.rb +0 -9
  255. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/manifests/init.pp +0 -3
  256. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/metadata.json +0 -9
  257. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/no_provider/manifests/init.pp +0 -2
  258. data/spec/fixtures/unit/indirector/data_binding/hiera/global.yaml +0 -10
  259. data/spec/fixtures/unit/indirector/data_binding/hiera/invalid.yaml +0 -1
  260. data/spec/fixtures/unit/indirector/hiera/global.yaml +0 -10
  261. data/spec/fixtures/unit/indirector/hiera/invalid.yaml +0 -1
  262. data/spec/fixtures/unit/module/trailing-comma.json +0 -24
  263. data/spec/fixtures/unit/parser/functions/create_resources/foo/manifests/init.pp +0 -3
  264. data/spec/fixtures/unit/parser/functions/create_resources/foo/manifests/wrongdefine.pp +0 -3
  265. data/spec/fixtures/unit/parser/lexer/aliastest.pp +0 -16
  266. data/spec/fixtures/unit/parser/lexer/append.pp +0 -11
  267. data/spec/fixtures/unit/parser/lexer/argumentdefaults.pp +0 -14
  268. data/spec/fixtures/unit/parser/lexer/arithmetic_expression.pp +0 -8
  269. data/spec/fixtures/unit/parser/lexer/arraytrailingcomma.pp +0 -3
  270. data/spec/fixtures/unit/parser/lexer/casestatement.pp +0 -65
  271. data/spec/fixtures/unit/parser/lexer/classheirarchy.pp +0 -15
  272. data/spec/fixtures/unit/parser/lexer/classincludes.pp +0 -17
  273. data/spec/fixtures/unit/parser/lexer/classpathtest.pp +0 -11
  274. data/spec/fixtures/unit/parser/lexer/collection.pp +0 -10
  275. data/spec/fixtures/unit/parser/lexer/collection_override.pp +0 -8
  276. data/spec/fixtures/unit/parser/lexer/collection_within_virtual_definitions.pp +0 -20
  277. data/spec/fixtures/unit/parser/lexer/componentmetaparams.pp +0 -11
  278. data/spec/fixtures/unit/parser/lexer/componentrequire.pp +0 -8
  279. data/spec/fixtures/unit/parser/lexer/deepclassheirarchy.pp +0 -23
  280. data/spec/fixtures/unit/parser/lexer/defineoverrides.pp +0 -17
  281. data/spec/fixtures/unit/parser/lexer/emptyclass.pp +0 -9
  282. data/spec/fixtures/unit/parser/lexer/emptyexec.pp +0 -3
  283. data/spec/fixtures/unit/parser/lexer/emptyifelse.pp +0 -9
  284. data/spec/fixtures/unit/parser/lexer/falsevalues.pp +0 -3
  285. data/spec/fixtures/unit/parser/lexer/filecreate.pp +0 -11
  286. data/spec/fixtures/unit/parser/lexer/fqdefinition.pp +0 -5
  287. data/spec/fixtures/unit/parser/lexer/fqparents.pp +0 -11
  288. data/spec/fixtures/unit/parser/lexer/funccomma.pp +0 -5
  289. data/spec/fixtures/unit/parser/lexer/hash.pp +0 -33
  290. data/spec/fixtures/unit/parser/lexer/ifexpression.pp +0 -12
  291. data/spec/fixtures/unit/parser/lexer/implicititeration.pp +0 -15
  292. data/spec/fixtures/unit/parser/lexer/multilinecomments.pp +0 -10
  293. data/spec/fixtures/unit/parser/lexer/multipleclass.pp +0 -9
  294. data/spec/fixtures/unit/parser/lexer/multipleinstances.pp +0 -7
  295. data/spec/fixtures/unit/parser/lexer/multisubs.pp +0 -13
  296. data/spec/fixtures/unit/parser/lexer/namevartest.pp +0 -9
  297. data/spec/fixtures/unit/parser/lexer/scopetest.pp +0 -13
  298. data/spec/fixtures/unit/parser/lexer/selectorvalues.pp +0 -49
  299. data/spec/fixtures/unit/parser/lexer/simpledefaults.pp +0 -5
  300. data/spec/fixtures/unit/parser/lexer/simpleselector.pp +0 -38
  301. data/spec/fixtures/unit/parser/lexer/singleary.pp +0 -19
  302. data/spec/fixtures/unit/parser/lexer/singlequote.pp +0 -11
  303. data/spec/fixtures/unit/parser/lexer/singleselector.pp +0 -22
  304. data/spec/fixtures/unit/parser/lexer/subclass_name_duplication.pp +0 -11
  305. data/spec/fixtures/unit/parser/lexer/tag.pp +0 -9
  306. data/spec/fixtures/unit/parser/lexer/tagged.pp +0 -35
  307. data/spec/fixtures/unit/parser/lexer/virtualresources.pp +0 -14
  308. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/binder_config.yaml +0 -10
  309. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/lib/puppet/bindings/confdirtest.rb +0 -10
  310. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/awesome2/lib/puppet/bindings/awesome2/default.rb +0 -20
  311. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/awesome2/lib/puppet_x/awesome2/echo_scheme_handler.rb +0 -18
  312. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/bad/lib/puppet/bindings/bad/default.rb +0 -5
  313. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/good/lib/puppet/bindings/good/default.rb +0 -6
  314. data/spec/fixtures/unit/pops/binder/config/binder_config/nolayer/binder_config.yaml +0 -6
  315. data/spec/fixtures/unit/pops/binder/config/binder_config/ok/binder_config.yaml +0 -9
  316. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/functions/usee_puppet.pp +0 -3
  317. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/functions/usee/callee.rb +0 -5
  318. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/functions/usee/usee_ruby.rb +0 -6
  319. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/type/usee_type.rb +0 -5
  320. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/manifests/init.pp +0 -8
  321. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/types/zero.pp +0 -1
  322. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee2/lib/puppet/functions/usee2/callee.rb +0 -5
  323. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_puppet.pp +0 -5
  324. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_puppet_init.pp +0 -5
  325. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_ruby.pp +0 -5
  326. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/caller.rb +0 -5
  327. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/caller2.rb +0 -5
  328. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_puppet.rb +0 -5
  329. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_puppet_init.rb +0 -5
  330. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_ruby.rb +0 -5
  331. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/manifests/init.pp +0 -87
  332. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/metadata.json +0 -10
  333. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseeone.pp +0 -1
  334. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseezero.pp +0 -1
  335. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load.rb +0 -11
  336. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load2.rb +0 -11
  337. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load3.rb +0 -11
  338. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load4.rb +0 -11
  339. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load5.rb +0 -12
  340. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/callee.rb +0 -8
  341. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/callee_ws.rb +0 -8
  342. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/func_with_syntax_error.rb +0 -9
  343. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/good_func_load.rb +0 -9
  344. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/metadata.json +0 -9
  345. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcalled.pp +0 -3
  346. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcaller.pp +0 -3
  347. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcaller4.pp +0 -3
  348. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/lib/puppet/functions/user/caller.rb +0 -5
  349. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/lib/puppet/functions/user/caller_ws.rb +0 -12
  350. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/lib/puppet/functions/user/callingpuppet.rb +0 -5
  351. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/metadata.json +0 -9
  352. data/spec/fixtures/unit/pops/loaders/loaders/module_no_lib/modules/modulea/functions/hello.pp +0 -3
  353. data/spec/fixtures/unit/pops/loaders/loaders/module_no_lib/modules/modulea/manifests/init.pp +0 -3
  354. data/spec/fixtures/unit/pops/loaders/loaders/module_no_lib/modules/modulea/metadata.json +0 -10
  355. data/spec/fixtures/unit/pops/loaders/loaders/no_modules/manifests/site.pp +0 -10
  356. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/functions/hello.pp +0 -3
  357. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/functions/subspace/hello.pp +0 -3
  358. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/lib/puppet/functions/modulea/rb_func_a.rb +0 -5
  359. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/lib/puppet/functions/rb_func_a.rb +0 -5
  360. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/manifests/init.pp +0 -3
  361. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/metadata.json +0 -10
  362. data/spec/fixtures/unit/pops/loaders/loaders/wo_metadata_module/modules/moduleb/lib/puppet/functions/moduleb/rb_func_b.rb +0 -6
  363. data/spec/fixtures/unit/pops/loaders/loaders/wo_metadata_module/modules/moduleb/manifests/init.pp +0 -3
  364. data/spec/fixtures/unit/pops/parser/lexer/aliastest.pp +0 -16
  365. data/spec/fixtures/unit/pops/parser/lexer/append.pp +0 -11
  366. data/spec/fixtures/unit/pops/parser/lexer/argumentdefaults.pp +0 -14
  367. data/spec/fixtures/unit/pops/parser/lexer/arithmetic_expression.pp +0 -8
  368. data/spec/fixtures/unit/pops/parser/lexer/arraytrailingcomma.pp +0 -3
  369. data/spec/fixtures/unit/pops/parser/lexer/casestatement.pp +0 -65
  370. data/spec/fixtures/unit/pops/parser/lexer/classheirarchy.pp +0 -15
  371. data/spec/fixtures/unit/pops/parser/lexer/classincludes.pp +0 -17
  372. data/spec/fixtures/unit/pops/parser/lexer/classpathtest.pp +0 -11
  373. data/spec/fixtures/unit/pops/parser/lexer/collection.pp +0 -10
  374. data/spec/fixtures/unit/pops/parser/lexer/collection_override.pp +0 -8
  375. data/spec/fixtures/unit/pops/parser/lexer/collection_within_virtual_definitions.pp +0 -20
  376. data/spec/fixtures/unit/pops/parser/lexer/componentmetaparams.pp +0 -11
  377. data/spec/fixtures/unit/pops/parser/lexer/componentrequire.pp +0 -8
  378. data/spec/fixtures/unit/pops/parser/lexer/deepclassheirarchy.pp +0 -23
  379. data/spec/fixtures/unit/pops/parser/lexer/defineoverrides.pp +0 -17
  380. data/spec/fixtures/unit/pops/parser/lexer/emptyclass.pp +0 -9
  381. data/spec/fixtures/unit/pops/parser/lexer/emptyexec.pp +0 -3
  382. data/spec/fixtures/unit/pops/parser/lexer/emptyifelse.pp +0 -9
  383. data/spec/fixtures/unit/pops/parser/lexer/falsevalues.pp +0 -3
  384. data/spec/fixtures/unit/pops/parser/lexer/filecreate.pp +0 -11
  385. data/spec/fixtures/unit/pops/parser/lexer/fqdefinition.pp +0 -5
  386. data/spec/fixtures/unit/pops/parser/lexer/fqparents.pp +0 -11
  387. data/spec/fixtures/unit/pops/parser/lexer/funccomma.pp +0 -5
  388. data/spec/fixtures/unit/pops/parser/lexer/hash.pp +0 -33
  389. data/spec/fixtures/unit/pops/parser/lexer/ifexpression.pp +0 -12
  390. data/spec/fixtures/unit/pops/parser/lexer/implicititeration.pp +0 -15
  391. data/spec/fixtures/unit/pops/parser/lexer/multilinecomments.pp +0 -10
  392. data/spec/fixtures/unit/pops/parser/lexer/multipleclass.pp +0 -9
  393. data/spec/fixtures/unit/pops/parser/lexer/multipleinstances.pp +0 -7
  394. data/spec/fixtures/unit/pops/parser/lexer/multisubs.pp +0 -13
  395. data/spec/fixtures/unit/pops/parser/lexer/namevartest.pp +0 -9
  396. data/spec/fixtures/unit/pops/parser/lexer/scopetest.pp +0 -13
  397. data/spec/fixtures/unit/pops/parser/lexer/selectorvalues.pp +0 -49
  398. data/spec/fixtures/unit/pops/parser/lexer/simpledefaults.pp +0 -5
  399. data/spec/fixtures/unit/pops/parser/lexer/simpleselector.pp +0 -38
  400. data/spec/fixtures/unit/pops/parser/lexer/singleary.pp +0 -19
  401. data/spec/fixtures/unit/pops/parser/lexer/singlequote.pp +0 -11
  402. data/spec/fixtures/unit/pops/parser/lexer/singleselector.pp +0 -22
  403. data/spec/fixtures/unit/pops/parser/lexer/subclass_name_duplication.pp +0 -11
  404. data/spec/fixtures/unit/pops/parser/lexer/tag.pp +0 -9
  405. data/spec/fixtures/unit/pops/parser/lexer/tagged.pp +0 -35
  406. data/spec/fixtures/unit/pops/parser/lexer/virtualresources.pp +0 -14
  407. data/spec/fixtures/unit/provider/aix_object/aix_colon_list_real_world_input.out +0 -1
  408. data/spec/fixtures/unit/provider/aix_object/aix_colon_list_real_world_output.out +0 -1
  409. data/spec/fixtures/unit/provider/cron/crontab/single_line.yaml +0 -272
  410. data/spec/fixtures/unit/provider/cron/crontab/vixie_header.txt +0 -3
  411. data/spec/fixtures/unit/provider/cron/parsed/managed +0 -6
  412. data/spec/fixtures/unit/provider/cron/parsed/simple +0 -9
  413. data/spec/fixtures/unit/provider/package/dnfmodule/dnf-module-list.txt +0 -19
  414. data/spec/fixtures/unit/provider/package/gem/gem-list-single-package +0 -4
  415. data/spec/fixtures/unit/provider/package/gem/line-with-1.8.5-warning +0 -14
  416. data/spec/fixtures/unit/provider/package/openbsd/pkginfo.detail +0 -19
  417. data/spec/fixtures/unit/provider/package/openbsd/pkginfo.list +0 -10
  418. data/spec/fixtures/unit/provider/package/openbsd/pkginfo.query +0 -1
  419. data/spec/fixtures/unit/provider/package/openbsd/pkginfo_flavors.list +0 -2
  420. data/spec/fixtures/unit/provider/package/pkg/dummy_implicit_version +0 -3
  421. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris10 +0 -1
  422. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.certificate_warning +0 -2
  423. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.ifo.installed +0 -1
  424. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.ifo.known +0 -1
  425. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.installed +0 -1
  426. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.known +0 -1
  427. data/spec/fixtures/unit/provider/package/pkg/incomplete +0 -1
  428. data/spec/fixtures/unit/provider/package/pkg/solaris11 +0 -2
  429. data/spec/fixtures/unit/provider/package/pkg/unknown_status +0 -12
  430. data/spec/fixtures/unit/provider/package/pkgng/pkg.query +0 -7
  431. data/spec/fixtures/unit/provider/package/pkgng/pkg.query.zsh +0 -1
  432. data/spec/fixtures/unit/provider/package/pkgng/pkg.version +0 -5
  433. data/spec/fixtures/unit/provider/package/puppetserver_gem/gem-list-local-packages +0 -30
  434. data/spec/fixtures/unit/provider/package/sun/dummy.server +0 -12
  435. data/spec/fixtures/unit/provider/package/sun/simple +0 -24
  436. data/spec/fixtures/unit/provider/package/yum/yum-check-update-broken-notices.txt +0 -187
  437. data/spec/fixtures/unit/provider/package/yum/yum-check-update-multiline.txt +0 -201
  438. data/spec/fixtures/unit/provider/package/yum/yum-check-update-obsoletes.txt +0 -195
  439. data/spec/fixtures/unit/provider/package/yum/yum-check-update-plugin-output.txt +0 -36
  440. data/spec/fixtures/unit/provider/package/yum/yum-check-update-security.txt +0 -184
  441. data/spec/fixtures/unit/provider/package/yum/yum-check-update-simple.txt +0 -13
  442. data/spec/fixtures/unit/provider/package/yum/yum-check-update-subscription-manager.txt +0 -9
  443. data/spec/fixtures/unit/provider/package/zypper/zypper-list-updates-SLES11sp1.out +0 -369
  444. data/spec/fixtures/unit/provider/package/zypper/zypper-list-updates-empty.out +0 -3
  445. data/spec/fixtures/unit/provider/package/zypper/zypper-search-uninstalled.out +0 -13
  446. data/spec/fixtures/unit/provider/parsedfile/aliases.txt +0 -2
  447. data/spec/fixtures/unit/provider/parsedfile/simple.txt +0 -7
  448. data/spec/fixtures/unit/provider/service/base/ps_ef.mixed_encoding +0 -3
  449. data/spec/fixtures/unit/provider/service/gentoo/rc_update_show +0 -30
  450. data/spec/fixtures/unit/provider/service/openbsd/rcctl_getall +0 -6
  451. data/spec/fixtures/unit/provider/service/openrc/rcservice_list +0 -8
  452. data/spec/fixtures/unit/provider/service/openrc/rcstatus +0 -43
  453. data/spec/fixtures/unit/provider/service/smf/svcs_fmri.out +0 -6
  454. data/spec/fixtures/unit/provider/service/smf/svcs_instances.out +0 -4
  455. data/spec/fixtures/unit/provider/service/smf/svcs_multiple_fmris.out +0 -13
  456. data/spec/fixtures/unit/provider/service/systemd/list_unit_files_services +0 -16
  457. data/spec/fixtures/unit/provider/service/systemd/list_unit_files_services_vendor_preset +0 -9
  458. data/spec/fixtures/unit/provider/user/aix/aix_passwd_file.out +0 -36
  459. data/spec/fixtures/unit/reports/tagmail/tagmail_email.conf +0 -2
  460. data/spec/fixtures/unit/reports/tagmail/tagmail_failers.conf +0 -3
  461. data/spec/fixtures/unit/reports/tagmail/tagmail_passers.conf +0 -30
  462. data/spec/fixtures/unit/ssl/certificate/old-style-cert-exts.pem +0 -33
  463. data/spec/fixtures/unit/ssl/certificate_request/old-style-cert-request.pem +0 -28
  464. data/spec/fixtures/unit/type/user/authorized_keys +0 -6
  465. data/spec/fixtures/unit/util/filetype/aixtab_output +0 -44
  466. data/spec/fixtures/unit/util/filetype/suntab_output +0 -9
  467. data/spec/fixtures/unit/util/monkey_patches/x509.pem +0 -32
  468. data/spec/fixtures/unit/util/rdoc/basic.pp +0 -16
  469. 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
  470. 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
  471. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_md5/should_update_if_content_differs_on_disk.yml +0 -108
  472. 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
  473. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_mtime/should_fetch_if_no_header_specified.yml +0 -100
  474. 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
  475. 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
  476. data/spec/fixtures/yaml/report2.6.x.yaml +0 -190
  477. data/spec/fixtures/yaml/test.local.yaml +0 -16
  478. data/spec/integration/agent/logging_spec.rb +0 -179
  479. data/spec/integration/application/agent_spec.rb +0 -999
  480. data/spec/integration/application/apply_spec.rb +0 -773
  481. data/spec/integration/application/doc_spec.rb +0 -24
  482. data/spec/integration/application/filebucket_spec.rb +0 -255
  483. data/spec/integration/application/help_spec.rb +0 -44
  484. data/spec/integration/application/lookup_spec.rb +0 -275
  485. data/spec/integration/application/module_spec.rb +0 -230
  486. data/spec/integration/application/plugin_spec.rb +0 -145
  487. data/spec/integration/application/resource_spec.rb +0 -68
  488. data/spec/integration/application/ssl_spec.rb +0 -20
  489. data/spec/integration/configurer_spec.rb +0 -164
  490. data/spec/integration/data_binding_spec.rb +0 -278
  491. data/spec/integration/defaults_spec.rb +0 -279
  492. data/spec/integration/directory_environments_spec.rb +0 -67
  493. data/spec/integration/environments/default_manifest_spec.rb +0 -215
  494. data/spec/integration/environments/setting_hooks_spec.rb +0 -27
  495. data/spec/integration/environments/settings_interpolation_spec.rb +0 -106
  496. data/spec/integration/environments/settings_spec.rb +0 -128
  497. data/spec/integration/http/client_spec.rb +0 -229
  498. data/spec/integration/indirector/catalog/compiler_spec.rb +0 -75
  499. data/spec/integration/indirector/direct_file_server_spec.rb +0 -90
  500. data/spec/integration/indirector/facts/facter_spec.rb +0 -168
  501. data/spec/integration/indirector/file_content/file_server_spec.rb +0 -106
  502. data/spec/integration/indirector/file_metadata/file_server_spec.rb +0 -75
  503. data/spec/integration/l10n/compiler_spec.rb +0 -37
  504. data/spec/integration/network/formats_spec.rb +0 -90
  505. data/spec/integration/network/http/api/indirected_routes_spec.rb +0 -60
  506. data/spec/integration/network/http_pool_spec.rb +0 -275
  507. data/spec/integration/node/environment_spec.rb +0 -170
  508. data/spec/integration/node/facts_spec.rb +0 -40
  509. data/spec/integration/node_spec.rb +0 -77
  510. data/spec/integration/parser/catalog_spec.rb +0 -68
  511. data/spec/integration/parser/class_spec.rb +0 -33
  512. data/spec/integration/parser/collection_spec.rb +0 -362
  513. data/spec/integration/parser/compiler_spec.rb +0 -1210
  514. data/spec/integration/parser/conditionals_spec.rb +0 -92
  515. data/spec/integration/parser/dynamic_scoping_spec.rb +0 -66
  516. data/spec/integration/parser/environment_spec.rb +0 -47
  517. data/spec/integration/parser/node_spec.rb +0 -163
  518. data/spec/integration/parser/parameter_defaults_spec.rb +0 -358
  519. data/spec/integration/parser/pcore_resource_spec.rb +0 -243
  520. data/spec/integration/parser/resource_expressions_spec.rb +0 -222
  521. data/spec/integration/parser/scope_spec.rb +0 -728
  522. data/spec/integration/parser/script_compiler_spec.rb +0 -113
  523. data/spec/integration/parser/undef_param_spec.rb +0 -95
  524. data/spec/integration/provider/file/windows_spec.rb +0 -162
  525. data/spec/integration/resource/catalog_spec.rb +0 -47
  526. data/spec/integration/resource/type_collection_spec.rb +0 -88
  527. data/spec/integration/transaction/report_spec.rb +0 -706
  528. data/spec/integration/transaction_spec.rb +0 -553
  529. data/spec/integration/type/exec_spec.rb +0 -114
  530. data/spec/integration/type/file_spec.rb +0 -2012
  531. data/spec/integration/type/notify_spec.rb +0 -46
  532. data/spec/integration/type/package_spec.rb +0 -200
  533. data/spec/integration/type/tidy_spec.rb +0 -45
  534. data/spec/integration/type_spec.rb +0 -30
  535. data/spec/integration/util/autoload_spec.rb +0 -104
  536. data/spec/integration/util/execution_spec.rb +0 -104
  537. data/spec/integration/util/rdoc/parser_spec.rb +0 -171
  538. data/spec/integration/util/settings_spec.rb +0 -115
  539. data/spec/integration/util/windows/adsi_spec.rb +0 -207
  540. data/spec/integration/util/windows/monkey_patches/process_spec.rb +0 -231
  541. data/spec/integration/util/windows/principal_spec.rb +0 -279
  542. data/spec/integration/util/windows/process_spec.rb +0 -96
  543. data/spec/integration/util/windows/registry_spec.rb +0 -334
  544. data/spec/integration/util/windows/security_spec.rb +0 -1010
  545. data/spec/integration/util/windows/user_spec.rb +0 -226
  546. data/spec/integration/util_spec.rb +0 -104
  547. data/spec/lib/matchers/containment_matchers.rb +0 -52
  548. data/spec/lib/matchers/include_in_order.rb +0 -20
  549. data/spec/lib/matchers/include_in_order_spec.rb +0 -30
  550. data/spec/lib/matchers/json.rb +0 -132
  551. data/spec/lib/matchers/match_tokens2.rb +0 -74
  552. data/spec/lib/matchers/relationship_graph_matchers.rb +0 -48
  553. data/spec/lib/matchers/resource.rb +0 -74
  554. data/spec/lib/puppet/certificate_factory.rb +0 -218
  555. data/spec/lib/puppet/face/1.0.0/huzzah.rb +0 -8
  556. data/spec/lib/puppet/face/basetest.rb +0 -51
  557. data/spec/lib/puppet/face/huzzah/obsolete.rb +0 -6
  558. data/spec/lib/puppet/face/huzzah.rb +0 -8
  559. data/spec/lib/puppet/face/version_matching.rb +0 -12
  560. data/spec/lib/puppet/indirector/indirector_testing/json.rb +0 -6
  561. data/spec/lib/puppet/indirector/indirector_testing/memory.rb +0 -7
  562. data/spec/lib/puppet/indirector/indirector_testing/msgpack.rb +0 -6
  563. data/spec/lib/puppet/indirector_proxy.rb +0 -34
  564. data/spec/lib/puppet/indirector_testing.rb +0 -31
  565. data/spec/lib/puppet/test_ca.rb +0 -164
  566. data/spec/lib/puppet_spec/character_encoding.rb +0 -12
  567. data/spec/lib/puppet_spec/compiler.rb +0 -112
  568. data/spec/lib/puppet_spec/files.rb +0 -107
  569. data/spec/lib/puppet_spec/fixtures.rb +0 -52
  570. data/spec/lib/puppet_spec/handler.rb +0 -53
  571. data/spec/lib/puppet_spec/https.rb +0 -95
  572. data/spec/lib/puppet_spec/language.rb +0 -75
  573. data/spec/lib/puppet_spec/matchers.rb +0 -68
  574. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +0 -56
  575. data/spec/lib/puppet_spec/module_tool/stub_source.rb +0 -136
  576. data/spec/lib/puppet_spec/modules.rb +0 -82
  577. data/spec/lib/puppet_spec/network.rb +0 -109
  578. data/spec/lib/puppet_spec/pops.rb +0 -29
  579. data/spec/lib/puppet_spec/puppetserver.rb +0 -179
  580. data/spec/lib/puppet_spec/scope.rb +0 -13
  581. data/spec/lib/puppet_spec/settings.rb +0 -39
  582. data/spec/lib/puppet_spec/ssl.rb +0 -265
  583. data/spec/lib/puppet_spec/unindent.rb +0 -5
  584. data/spec/lib/puppet_spec/verbose.rb +0 -9
  585. data/spec/shared_behaviours/all_parsedfile_providers.rb +0 -21
  586. data/spec/shared_behaviours/an_indirector_face.rb +0 -6
  587. data/spec/shared_behaviours/documentation_on_faces.rb +0 -261
  588. data/spec/shared_behaviours/file_server_terminus.rb +0 -38
  589. data/spec/shared_behaviours/file_serving.rb +0 -73
  590. data/spec/shared_behaviours/hiera_indirections.rb +0 -98
  591. data/spec/shared_behaviours/iterative_functions.rb +0 -68
  592. data/spec/shared_behaviours/memory_terminus.rb +0 -28
  593. data/spec/shared_behaviours/path_parameters.rb +0 -160
  594. data/spec/shared_behaviours/store_configs_terminus.rb +0 -21
  595. data/spec/shared_behaviours/things_that_declare_options.rb +0 -262
  596. data/spec/shared_contexts/checksum.rb +0 -65
  597. data/spec/shared_contexts/digests.rb +0 -100
  598. data/spec/shared_contexts/https.rb +0 -29
  599. data/spec/shared_contexts/l10n.rb +0 -32
  600. data/spec/shared_contexts/provider.rb +0 -16
  601. data/spec/shared_contexts/types_setup.rb +0 -204
  602. data/spec/shared_examples/rhel_package_provider.rb +0 -398
  603. data/spec/spec_helper.rb +0 -240
  604. data/spec/unit/agent/disabler_spec.rb +0 -63
  605. data/spec/unit/agent/locker_spec.rb +0 -99
  606. data/spec/unit/agent_spec.rb +0 -423
  607. data/spec/unit/application/agent_spec.rb +0 -640
  608. data/spec/unit/application/apply_spec.rb +0 -559
  609. data/spec/unit/application/config_spec.rb +0 -232
  610. data/spec/unit/application/describe_spec.rb +0 -135
  611. data/spec/unit/application/device_spec.rb +0 -616
  612. data/spec/unit/application/doc_spec.rb +0 -333
  613. data/spec/unit/application/face_base_spec.rb +0 -454
  614. data/spec/unit/application/facts_spec.rb +0 -139
  615. data/spec/unit/application/filebucket_spec.rb +0 -319
  616. data/spec/unit/application/indirection_base_spec.rb +0 -50
  617. data/spec/unit/application/lookup_spec.rb +0 -691
  618. data/spec/unit/application/resource_spec.rb +0 -220
  619. data/spec/unit/application/ssl_spec.rb +0 -507
  620. data/spec/unit/application_spec.rb +0 -730
  621. data/spec/unit/certificate_factory_spec.rb +0 -170
  622. data/spec/unit/concurrent/lock_spec.rb +0 -29
  623. data/spec/unit/concurrent/thread_local_singleton_spec.rb +0 -39
  624. data/spec/unit/configurer/downloader_spec.rb +0 -252
  625. data/spec/unit/configurer/fact_handler_spec.rb +0 -147
  626. data/spec/unit/configurer/plugin_handler_spec.rb +0 -152
  627. data/spec/unit/configurer_spec.rb +0 -1488
  628. data/spec/unit/confine/exists_spec.rb +0 -82
  629. data/spec/unit/confine/false_spec.rb +0 -78
  630. data/spec/unit/confine/feature_spec.rb +0 -59
  631. data/spec/unit/confine/true_spec.rb +0 -78
  632. data/spec/unit/confine/variable_spec.rb +0 -105
  633. data/spec/unit/confine_collection_spec.rb +0 -132
  634. data/spec/unit/confine_spec.rb +0 -99
  635. data/spec/unit/confiner_spec.rb +0 -61
  636. data/spec/unit/context/trusted_information_spec.rb +0 -213
  637. data/spec/unit/context_spec.rb +0 -217
  638. data/spec/unit/daemon_spec.rb +0 -193
  639. data/spec/unit/data_binding_spec.rb +0 -11
  640. data/spec/unit/data_providers/function_data_provider_spec.rb +0 -122
  641. data/spec/unit/data_providers/hiera_data_provider_spec.rb +0 -360
  642. data/spec/unit/datatypes_spec.rb +0 -352
  643. data/spec/unit/defaults_spec.rb +0 -174
  644. data/spec/unit/environments_spec.rb +0 -1186
  645. data/spec/unit/etc_spec.rb +0 -465
  646. data/spec/unit/external/pson_spec.rb +0 -60
  647. data/spec/unit/face/config_spec.rb +0 -402
  648. data/spec/unit/face/epp_face_spec.rb +0 -385
  649. data/spec/unit/face/facts_spec.rb +0 -78
  650. data/spec/unit/face/generate_spec.rb +0 -293
  651. data/spec/unit/face/help_spec.rb +0 -208
  652. data/spec/unit/face/module/install_spec.rb +0 -40
  653. data/spec/unit/face/module/list_spec.rb +0 -256
  654. data/spec/unit/face/module/uninstall_spec.rb +0 -45
  655. data/spec/unit/face/module/upgrade_spec.rb +0 -26
  656. data/spec/unit/face/node_spec.rb +0 -129
  657. data/spec/unit/face/parser_spec.rb +0 -310
  658. data/spec/unit/face/plugin_spec.rb +0 -158
  659. data/spec/unit/face_spec.rb +0 -1
  660. data/spec/unit/facter_impl_spec.rb +0 -31
  661. data/spec/unit/file_bucket/dipper_spec.rb +0 -405
  662. data/spec/unit/file_bucket/file_spec.rb +0 -58
  663. data/spec/unit/file_serving/base_spec.rb +0 -164
  664. data/spec/unit/file_serving/configuration/parser_spec.rb +0 -206
  665. data/spec/unit/file_serving/configuration_spec.rb +0 -240
  666. data/spec/unit/file_serving/content_spec.rb +0 -98
  667. data/spec/unit/file_serving/fileset_spec.rb +0 -417
  668. data/spec/unit/file_serving/http_metadata_spec.rb +0 -109
  669. data/spec/unit/file_serving/metadata_spec.rb +0 -551
  670. data/spec/unit/file_serving/mount/file_spec.rb +0 -188
  671. data/spec/unit/file_serving/mount/locales_spec.rb +0 -72
  672. data/spec/unit/file_serving/mount/modules_spec.rb +0 -69
  673. data/spec/unit/file_serving/mount/pluginfacts_spec.rb +0 -72
  674. data/spec/unit/file_serving/mount/plugins_spec.rb +0 -72
  675. data/spec/unit/file_serving/mount/scripts_spec.rb +0 -69
  676. data/spec/unit/file_serving/mount/tasks_spec.rb +0 -71
  677. data/spec/unit/file_serving/mount_spec.rb +0 -30
  678. data/spec/unit/file_serving/terminus_helper_spec.rb +0 -114
  679. data/spec/unit/file_serving/terminus_selector_spec.rb +0 -84
  680. data/spec/unit/file_system/path_pattern_spec.rb +0 -153
  681. data/spec/unit/file_system/uniquefile_spec.rb +0 -245
  682. data/spec/unit/file_system_spec.rb +0 -1198
  683. data/spec/unit/forge/errors_spec.rb +0 -80
  684. data/spec/unit/forge/forge_spec.rb +0 -69
  685. data/spec/unit/forge/module_release_spec.rb +0 -331
  686. data/spec/unit/forge/repository_spec.rb +0 -154
  687. data/spec/unit/forge_spec.rb +0 -210
  688. data/spec/unit/functions/abs_spec.rb +0 -70
  689. data/spec/unit/functions/all_spec.rb +0 -97
  690. data/spec/unit/functions/annotate_spec.rb +0 -175
  691. data/spec/unit/functions/any_spec.rb +0 -109
  692. data/spec/unit/functions/assert_type_spec.rb +0 -97
  693. data/spec/unit/functions/binary_file_spec.rb +0 -46
  694. data/spec/unit/functions/break_spec.rb +0 -207
  695. data/spec/unit/functions/call_spec.rb +0 -131
  696. data/spec/unit/functions/camelcase_spec.rb +0 -34
  697. data/spec/unit/functions/capitalize_spec.rb +0 -34
  698. data/spec/unit/functions/ceiling_spec.rb +0 -65
  699. data/spec/unit/functions/chomp_spec.rb +0 -46
  700. data/spec/unit/functions/chop_spec.rb +0 -38
  701. data/spec/unit/functions/compare_spec.rb +0 -147
  702. data/spec/unit/functions/contain_spec.rb +0 -297
  703. data/spec/unit/functions/convert_to_spec.rb +0 -25
  704. data/spec/unit/functions/defined_spec.rb +0 -288
  705. data/spec/unit/functions/dig_spec.rb +0 -58
  706. data/spec/unit/functions/downcase_spec.rb +0 -34
  707. data/spec/unit/functions/each_spec.rb +0 -107
  708. data/spec/unit/functions/empty_spec.rb +0 -87
  709. data/spec/unit/functions/epp_spec.rb +0 -172
  710. data/spec/unit/functions/filter_spec.rb +0 -145
  711. data/spec/unit/functions/find_file_spec.rb +0 -69
  712. data/spec/unit/functions/find_template_spec.rb +0 -69
  713. data/spec/unit/functions/flatten_spec.rb +0 -31
  714. data/spec/unit/functions/floor_spec.rb +0 -65
  715. data/spec/unit/functions/get_spec.rb +0 -135
  716. data/spec/unit/functions/getvar_spec.rb +0 -121
  717. data/spec/unit/functions/group_by_spec.rb +0 -40
  718. data/spec/unit/functions/hiera_spec.rb +0 -495
  719. data/spec/unit/functions/include_spec.rb +0 -186
  720. data/spec/unit/functions/index_spec.rb +0 -184
  721. data/spec/unit/functions/inline_epp_spec.rb +0 -114
  722. data/spec/unit/functions/join_spec.rb +0 -33
  723. data/spec/unit/functions/keys_spec.rb +0 -31
  724. data/spec/unit/functions/length_spec.rb +0 -50
  725. data/spec/unit/functions/lest_spec.rb +0 -34
  726. data/spec/unit/functions/logging_spec.rb +0 -62
  727. data/spec/unit/functions/lookup_fixture_spec.rb +0 -687
  728. data/spec/unit/functions/lookup_spec.rb +0 -3425
  729. data/spec/unit/functions/lstrip_spec.rb +0 -30
  730. data/spec/unit/functions/map_spec.rb +0 -163
  731. data/spec/unit/functions/match_spec.rb +0 -74
  732. data/spec/unit/functions/max_spec.rb +0 -129
  733. data/spec/unit/functions/min_spec.rb +0 -129
  734. data/spec/unit/functions/module_directory_spec.rb +0 -43
  735. data/spec/unit/functions/new_spec.rb +0 -776
  736. data/spec/unit/functions/next_spec.rb +0 -93
  737. data/spec/unit/functions/partition_spec.rb +0 -40
  738. data/spec/unit/functions/reduce_spec.rb +0 -85
  739. data/spec/unit/functions/regsubst_spec.rb +0 -114
  740. data/spec/unit/functions/require_spec.rb +0 -82
  741. data/spec/unit/functions/return_spec.rb +0 -105
  742. data/spec/unit/functions/reverse_each_spec.rb +0 -108
  743. data/spec/unit/functions/round_spec.rb +0 -41
  744. data/spec/unit/functions/rstrip_spec.rb +0 -30
  745. data/spec/unit/functions/scanf_spec.rb +0 -32
  746. data/spec/unit/functions/shared.rb +0 -94
  747. data/spec/unit/functions/size_spec.rb +0 -50
  748. data/spec/unit/functions/slice_spec.rb +0 -136
  749. data/spec/unit/functions/sort_spec.rb +0 -79
  750. data/spec/unit/functions/split_spec.rb +0 -59
  751. data/spec/unit/functions/step_spec.rb +0 -113
  752. data/spec/unit/functions/strftime_spec.rb +0 -152
  753. data/spec/unit/functions/strip_spec.rb +0 -30
  754. data/spec/unit/functions/then_spec.rb +0 -40
  755. data/spec/unit/functions/tree_each_spec.rb +0 -493
  756. data/spec/unit/functions/type_spec.rb +0 -35
  757. data/spec/unit/functions/unique_spec.rb +0 -111
  758. data/spec/unit/functions/unwrap_spec.rb +0 -37
  759. data/spec/unit/functions/upcase_spec.rb +0 -34
  760. data/spec/unit/functions/values_spec.rb +0 -30
  761. data/spec/unit/functions/versioncmp_spec.rb +0 -70
  762. data/spec/unit/functions/with_spec.rb +0 -31
  763. data/spec/unit/functions4_spec.rb +0 -1046
  764. data/spec/unit/gettext/config_spec.rb +0 -156
  765. data/spec/unit/gettext/module_loading_spec.rb +0 -53
  766. data/spec/unit/graph/key_spec.rb +0 -41
  767. data/spec/unit/graph/rb_tree_map_spec.rb +0 -570
  768. data/spec/unit/graph/relationship_graph_spec.rb +0 -401
  769. data/spec/unit/graph/sequential_prioritizer_spec.rb +0 -32
  770. data/spec/unit/graph/simple_graph_spec.rb +0 -759
  771. data/spec/unit/hiera/scope_spec.rb +0 -100
  772. data/spec/unit/hiera_puppet_spec.rb +0 -159
  773. data/spec/unit/http/client_spec.rb +0 -937
  774. data/spec/unit/http/dns_spec.rb +0 -281
  775. data/spec/unit/http/external_client_spec.rb +0 -201
  776. data/spec/unit/http/factory_spec.rb +0 -160
  777. data/spec/unit/http/pool_entry_spec.rb +0 -49
  778. data/spec/unit/http/pool_spec.rb +0 -401
  779. data/spec/unit/http/proxy_spec.rb +0 -347
  780. data/spec/unit/http/resolver_spec.rb +0 -133
  781. data/spec/unit/http/response_spec.rb +0 -75
  782. data/spec/unit/http/service/ca_spec.rb +0 -198
  783. data/spec/unit/http/service/compiler_spec.rb +0 -744
  784. data/spec/unit/http/service/file_server_spec.rb +0 -307
  785. data/spec/unit/http/service/puppetserver_spec.rb +0 -112
  786. data/spec/unit/http/service/report_spec.rb +0 -117
  787. data/spec/unit/http/service_spec.rb +0 -143
  788. data/spec/unit/http/session_spec.rb +0 -309
  789. data/spec/unit/http/site_spec.rb +0 -96
  790. data/spec/unit/indirector/catalog/compiler_spec.rb +0 -1220
  791. data/spec/unit/indirector/catalog/json_spec.rb +0 -66
  792. data/spec/unit/indirector/catalog/msgpack_spec.rb +0 -11
  793. data/spec/unit/indirector/catalog/rest_spec.rb +0 -74
  794. data/spec/unit/indirector/catalog/store_configs_spec.rb +0 -16
  795. data/spec/unit/indirector/catalog/yaml_spec.rb +0 -23
  796. data/spec/unit/indirector/data_binding/hiera_spec.rb +0 -19
  797. data/spec/unit/indirector/data_binding/none_spec.rb +0 -28
  798. data/spec/unit/indirector/direct_file_server_spec.rb +0 -87
  799. data/spec/unit/indirector/envelope_spec.rb +0 -32
  800. data/spec/unit/indirector/exec_spec.rb +0 -63
  801. data/spec/unit/indirector/face_spec.rb +0 -82
  802. data/spec/unit/indirector/facts/facter_spec.rb +0 -290
  803. data/spec/unit/indirector/facts/json_spec.rb +0 -255
  804. data/spec/unit/indirector/facts/network_device_spec.rb +0 -77
  805. data/spec/unit/indirector/facts/rest_spec.rb +0 -99
  806. data/spec/unit/indirector/facts/store_configs_spec.rb +0 -16
  807. data/spec/unit/indirector/facts/yaml_spec.rb +0 -255
  808. data/spec/unit/indirector/file_bucket_file/file_spec.rb +0 -426
  809. data/spec/unit/indirector/file_bucket_file/rest_spec.rb +0 -89
  810. data/spec/unit/indirector/file_bucket_file/selector_spec.rb +0 -46
  811. data/spec/unit/indirector/file_content/file_server_spec.rb +0 -13
  812. data/spec/unit/indirector/file_content/file_spec.rb +0 -13
  813. data/spec/unit/indirector/file_content/rest_spec.rb +0 -60
  814. data/spec/unit/indirector/file_content/selector_spec.rb +0 -9
  815. data/spec/unit/indirector/file_metadata/file_server_spec.rb +0 -13
  816. data/spec/unit/indirector/file_metadata/file_spec.rb +0 -57
  817. data/spec/unit/indirector/file_metadata/http_spec.rb +0 -194
  818. data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -116
  819. data/spec/unit/indirector/file_metadata/selector_spec.rb +0 -10
  820. data/spec/unit/indirector/file_server_spec.rb +0 -288
  821. data/spec/unit/indirector/hiera_spec.rb +0 -17
  822. data/spec/unit/indirector/indirection_spec.rb +0 -916
  823. data/spec/unit/indirector/json_spec.rb +0 -200
  824. data/spec/unit/indirector/memory_spec.rb +0 -26
  825. data/spec/unit/indirector/msgpack_spec.rb +0 -199
  826. data/spec/unit/indirector/node/exec_spec.rb +0 -107
  827. data/spec/unit/indirector/node/json_spec.rb +0 -33
  828. data/spec/unit/indirector/node/memory_spec.rb +0 -16
  829. data/spec/unit/indirector/node/msgpack_spec.rb +0 -23
  830. data/spec/unit/indirector/node/plain_spec.rb +0 -34
  831. data/spec/unit/indirector/node/rest_spec.rb +0 -66
  832. data/spec/unit/indirector/node/store_configs_spec.rb +0 -16
  833. data/spec/unit/indirector/node/yaml_spec.rb +0 -23
  834. data/spec/unit/indirector/none_spec.rb +0 -33
  835. data/spec/unit/indirector/plain_spec.rb +0 -26
  836. data/spec/unit/indirector/report/json_spec.rb +0 -72
  837. data/spec/unit/indirector/report/msgpack_spec.rb +0 -27
  838. data/spec/unit/indirector/report/processor_spec.rb +0 -99
  839. data/spec/unit/indirector/report/rest_spec.rb +0 -84
  840. data/spec/unit/indirector/report/yaml_spec.rb +0 -91
  841. data/spec/unit/indirector/request_spec.rb +0 -295
  842. data/spec/unit/indirector/resource/ral_spec.rb +0 -89
  843. data/spec/unit/indirector/resource/store_configs_spec.rb +0 -20
  844. data/spec/unit/indirector/rest_spec.rb +0 -149
  845. data/spec/unit/indirector/terminus_spec.rb +0 -264
  846. data/spec/unit/indirector/yaml_spec.rb +0 -188
  847. data/spec/unit/indirector_spec.rb +0 -148
  848. data/spec/unit/info_service_spec.rb +0 -575
  849. data/spec/unit/interface/action_builder_spec.rb +0 -216
  850. data/spec/unit/interface/action_manager_spec.rb +0 -254
  851. data/spec/unit/interface/action_spec.rb +0 -670
  852. data/spec/unit/interface/documentation_spec.rb +0 -32
  853. data/spec/unit/interface/face_collection_spec.rb +0 -219
  854. data/spec/unit/interface/option_builder_spec.rb +0 -86
  855. data/spec/unit/interface/option_spec.rb +0 -156
  856. data/spec/unit/interface_spec.rb +0 -305
  857. data/spec/unit/module_spec.rb +0 -989
  858. data/spec/unit/module_tool/application_spec.rb +0 -25
  859. data/spec/unit/module_tool/applications/checksummer_spec.rb +0 -115
  860. data/spec/unit/module_tool/applications/installer_spec.rb +0 -473
  861. data/spec/unit/module_tool/applications/uninstaller_spec.rb +0 -181
  862. data/spec/unit/module_tool/applications/unpacker_spec.rb +0 -75
  863. data/spec/unit/module_tool/applications/upgrader_spec.rb +0 -337
  864. data/spec/unit/module_tool/install_directory_spec.rb +0 -70
  865. data/spec/unit/module_tool/installed_modules_spec.rb +0 -49
  866. data/spec/unit/module_tool/metadata_spec.rb +0 -330
  867. data/spec/unit/module_tool/tar/gnu_spec.rb +0 -23
  868. data/spec/unit/module_tool/tar/mini_spec.rb +0 -109
  869. data/spec/unit/module_tool/tar_spec.rb +0 -36
  870. data/spec/unit/module_tool_spec.rb +0 -304
  871. data/spec/unit/network/authconfig_spec.rb +0 -8
  872. data/spec/unit/network/authorization_spec.rb +0 -8
  873. data/spec/unit/network/format_handler_spec.rb +0 -93
  874. data/spec/unit/network/format_spec.rb +0 -205
  875. data/spec/unit/network/format_support_spec.rb +0 -199
  876. data/spec/unit/network/formats_spec.rb +0 -584
  877. data/spec/unit/network/http/api/indirected_routes_spec.rb +0 -425
  878. data/spec/unit/network/http/api/master_spec.rb +0 -38
  879. data/spec/unit/network/http/api/server/v3/environments_spec.rb +0 -51
  880. data/spec/unit/network/http/api/server/v3_spec.rb +0 -78
  881. data/spec/unit/network/http/api_spec.rb +0 -109
  882. data/spec/unit/network/http/connection_spec.rb +0 -636
  883. data/spec/unit/network/http/error_spec.rb +0 -30
  884. data/spec/unit/network/http/handler_spec.rb +0 -164
  885. data/spec/unit/network/http/request_spec.rb +0 -108
  886. data/spec/unit/network/http/response_spec.rb +0 -106
  887. data/spec/unit/network/http/route_spec.rb +0 -90
  888. data/spec/unit/network/http_pool_spec.rb +0 -145
  889. data/spec/unit/network/uri_spec.rb +0 -47
  890. data/spec/unit/node/environment_spec.rb +0 -612
  891. data/spec/unit/node/facts_spec.rb +0 -225
  892. data/spec/unit/node_spec.rb +0 -434
  893. data/spec/unit/other/selinux_spec.rb +0 -27
  894. data/spec/unit/parameter/boolean_spec.rb +0 -35
  895. data/spec/unit/parameter/package_options_spec.rb +0 -43
  896. data/spec/unit/parameter/path_spec.rb +0 -23
  897. data/spec/unit/parameter/value_collection_spec.rb +0 -160
  898. data/spec/unit/parameter/value_spec.rb +0 -82
  899. data/spec/unit/parameter_spec.rb +0 -272
  900. data/spec/unit/parser/ast/block_expression_spec.rb +0 -66
  901. data/spec/unit/parser/ast/leaf_spec.rb +0 -136
  902. data/spec/unit/parser/compiler_spec.rb +0 -1020
  903. data/spec/unit/parser/files_spec.rb +0 -101
  904. data/spec/unit/parser/functions/create_resources_spec.rb +0 -326
  905. data/spec/unit/parser/functions/digest_spec.rb +0 -26
  906. data/spec/unit/parser/functions/fail_spec.rb +0 -23
  907. data/spec/unit/parser/functions/file_spec.rb +0 -99
  908. data/spec/unit/parser/functions/fqdn_rand_spec.rb +0 -87
  909. data/spec/unit/parser/functions/generate_spec.rb +0 -124
  910. data/spec/unit/parser/functions/hiera_array_spec.rb +0 -12
  911. data/spec/unit/parser/functions/hiera_hash_spec.rb +0 -12
  912. data/spec/unit/parser/functions/hiera_include_spec.rb +0 -12
  913. data/spec/unit/parser/functions/hiera_spec.rb +0 -12
  914. data/spec/unit/parser/functions/inline_template_spec.rb +0 -36
  915. data/spec/unit/parser/functions/lookup_spec.rb +0 -14
  916. data/spec/unit/parser/functions/realize_spec.rb +0 -70
  917. data/spec/unit/parser/functions/regsubst_spec.rb +0 -19
  918. data/spec/unit/parser/functions/scanf_spec.rb +0 -25
  919. data/spec/unit/parser/functions/shellquote_spec.rb +0 -66
  920. data/spec/unit/parser/functions/split_spec.rb +0 -13
  921. data/spec/unit/parser/functions/sprintf_spec.rb +0 -68
  922. data/spec/unit/parser/functions/tag_spec.rb +0 -30
  923. data/spec/unit/parser/functions/tagged_spec.rb +0 -36
  924. data/spec/unit/parser/functions/template_spec.rb +0 -93
  925. data/spec/unit/parser/functions/versioncmp_spec.rb +0 -28
  926. data/spec/unit/parser/functions_spec.rb +0 -156
  927. data/spec/unit/parser/relationship_spec.rb +0 -74
  928. data/spec/unit/parser/resource/param_spec.rb +0 -32
  929. data/spec/unit/parser/resource_spec.rb +0 -657
  930. data/spec/unit/parser/scope_spec.rb +0 -694
  931. data/spec/unit/parser/templatewrapper_spec.rb +0 -111
  932. data/spec/unit/parser/type_loader_spec.rb +0 -202
  933. data/spec/unit/plan_spec.rb +0 -65
  934. data/spec/unit/pops/adaptable_spec.rb +0 -139
  935. data/spec/unit/pops/benchmark_spec.rb +0 -123
  936. data/spec/unit/pops/containment_spec.rb +0 -0
  937. data/spec/unit/pops/evaluator/access_ops_spec.rb +0 -560
  938. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +0 -309
  939. data/spec/unit/pops/evaluator/basic_expressions_spec.rb +0 -101
  940. data/spec/unit/pops/evaluator/collections_ops_spec.rb +0 -108
  941. data/spec/unit/pops/evaluator/comparison_ops_spec.rb +0 -267
  942. data/spec/unit/pops/evaluator/conditionals_spec.rb +0 -189
  943. data/spec/unit/pops/evaluator/deferred_resolver_spec.rb +0 -46
  944. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +0 -1634
  945. data/spec/unit/pops/evaluator/evaluator_rspec_helper.rb +0 -75
  946. data/spec/unit/pops/evaluator/json_strict_literal_evaluator_spec.rb +0 -63
  947. data/spec/unit/pops/evaluator/literal_evaluator_spec.rb +0 -43
  948. data/spec/unit/pops/evaluator/logical_ops_spec.rb +0 -89
  949. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +0 -181
  950. data/spec/unit/pops/evaluator/string_interpolation_spec.rb +0 -43
  951. data/spec/unit/pops/evaluator/variables_spec.rb +0 -88
  952. data/spec/unit/pops/factory_rspec_helper.rb +0 -65
  953. data/spec/unit/pops/factory_spec.rb +0 -309
  954. data/spec/unit/pops/issues_spec.rb +0 -210
  955. data/spec/unit/pops/label_provider_spec.rb +0 -46
  956. data/spec/unit/pops/loaders/dependency_loader_spec.rb +0 -122
  957. data/spec/unit/pops/loaders/environment_loader_spec.rb +0 -172
  958. data/spec/unit/pops/loaders/loader_paths_spec.rb +0 -43
  959. data/spec/unit/pops/loaders/loader_spec.rb +0 -516
  960. data/spec/unit/pops/loaders/loaders_spec.rb +0 -863
  961. data/spec/unit/pops/loaders/module_loaders_spec.rb +0 -268
  962. data/spec/unit/pops/loaders/static_loader_spec.rb +0 -85
  963. data/spec/unit/pops/lookup/context_spec.rb +0 -333
  964. data/spec/unit/pops/lookup/interpolation_spec.rb +0 -377
  965. data/spec/unit/pops/lookup/lookup_spec.rb +0 -375
  966. data/spec/unit/pops/merge_strategy_spec.rb +0 -17
  967. data/spec/unit/pops/migration_spec.rb +0 -51
  968. data/spec/unit/pops/model/model_spec.rb +0 -41
  969. data/spec/unit/pops/model/pn_transformer_spec.rb +0 -56
  970. data/spec/unit/pops/parser/epp_parser_spec.rb +0 -115
  971. data/spec/unit/pops/parser/evaluating_parser_spec.rb +0 -89
  972. data/spec/unit/pops/parser/lexer2_spec.rb +0 -942
  973. data/spec/unit/pops/parser/locator_spec.rb +0 -86
  974. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -380
  975. data/spec/unit/pops/parser/parse_calls_spec.rb +0 -171
  976. data/spec/unit/pops/parser/parse_conditionals_spec.rb +0 -184
  977. data/spec/unit/pops/parser/parse_containers_spec.rb +0 -247
  978. data/spec/unit/pops/parser/parse_functions_spec.rb +0 -19
  979. data/spec/unit/pops/parser/parse_heredoc_spec.rb +0 -276
  980. data/spec/unit/pops/parser/parse_lambda_spec.rb +0 -19
  981. data/spec/unit/pops/parser/parse_plan_spec.rb +0 -47
  982. data/spec/unit/pops/parser/parse_resource_spec.rb +0 -328
  983. data/spec/unit/pops/parser/parser_rspec_helper.rb +0 -17
  984. data/spec/unit/pops/parser/parser_spec.rb +0 -211
  985. data/spec/unit/pops/parser/parsing_typed_parameters_spec.rb +0 -65
  986. data/spec/unit/pops/parser/pn_parser_spec.rb +0 -100
  987. data/spec/unit/pops/pn_spec.rb +0 -147
  988. data/spec/unit/pops/puppet_stack_spec.rb +0 -108
  989. data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -37
  990. data/spec/unit/pops/serialization/packer_spec.rb +0 -162
  991. data/spec/unit/pops/serialization/serialization_spec.rb +0 -458
  992. data/spec/unit/pops/serialization/to_from_hr_spec.rb +0 -637
  993. data/spec/unit/pops/serialization/to_stringified_spec.rb +0 -162
  994. data/spec/unit/pops/time/timespan_spec.rb +0 -121
  995. data/spec/unit/pops/time/timestamp_spec.rb +0 -13
  996. data/spec/unit/pops/types/class_loader_spec.rb +0 -10
  997. data/spec/unit/pops/types/deferred_spec.rb +0 -87
  998. data/spec/unit/pops/types/error_spec.rb +0 -207
  999. data/spec/unit/pops/types/iterable_spec.rb +0 -262
  1000. data/spec/unit/pops/types/p_binary_type_spec.rb +0 -243
  1001. data/spec/unit/pops/types/p_init_type_spec.rb +0 -383
  1002. data/spec/unit/pops/types/p_object_type_spec.rb +0 -1730
  1003. data/spec/unit/pops/types/p_sem_ver_type_spec.rb +0 -340
  1004. data/spec/unit/pops/types/p_sensitive_type_spec.rb +0 -191
  1005. data/spec/unit/pops/types/p_timespan_type_spec.rb +0 -323
  1006. data/spec/unit/pops/types/p_timestamp_type_spec.rb +0 -391
  1007. data/spec/unit/pops/types/p_type_set_type_spec.rb +0 -549
  1008. data/spec/unit/pops/types/p_uri_type_spec.rb +0 -191
  1009. data/spec/unit/pops/types/recursion_guard_spec.rb +0 -93
  1010. data/spec/unit/pops/types/ruby_generator_spec.rb +0 -874
  1011. data/spec/unit/pops/types/string_converter_spec.rb +0 -1202
  1012. data/spec/unit/pops/types/task_spec.rb +0 -411
  1013. data/spec/unit/pops/types/type_acceptor_spec.rb +0 -106
  1014. data/spec/unit/pops/types/type_asserter_spec.rb +0 -43
  1015. data/spec/unit/pops/types/type_calculator_spec.rb +0 -2504
  1016. data/spec/unit/pops/types/type_factory_spec.rb +0 -322
  1017. data/spec/unit/pops/types/type_formatter_spec.rb +0 -427
  1018. data/spec/unit/pops/types/type_mismatch_describer_spec.rb +0 -424
  1019. data/spec/unit/pops/types/type_parser_spec.rb +0 -445
  1020. data/spec/unit/pops/types/types_spec.rb +0 -755
  1021. data/spec/unit/pops/utils_spec.rb +0 -70
  1022. data/spec/unit/pops/validation_spec.rb +0 -66
  1023. data/spec/unit/pops/validator/validator_spec.rb +0 -1030
  1024. data/spec/unit/pops/visitor_spec.rb +0 -93
  1025. data/spec/unit/property/boolean_spec.rb +0 -24
  1026. data/spec/unit/property/ensure_spec.rb +0 -11
  1027. data/spec/unit/property/keyvalue_spec.rb +0 -259
  1028. data/spec/unit/property/list_spec.rb +0 -172
  1029. data/spec/unit/property/ordered_list_spec.rb +0 -59
  1030. data/spec/unit/property_spec.rb +0 -563
  1031. data/spec/unit/provider/README.markdown +0 -4
  1032. data/spec/unit/provider/aix_object_spec.rb +0 -821
  1033. data/spec/unit/provider/command_spec.rb +0 -62
  1034. data/spec/unit/provider/exec/posix_spec.rb +0 -232
  1035. data/spec/unit/provider/exec/shell_spec.rb +0 -53
  1036. data/spec/unit/provider/exec/windows_spec.rb +0 -105
  1037. data/spec/unit/provider/exec_spec.rb +0 -244
  1038. data/spec/unit/provider/file/posix_spec.rb +0 -230
  1039. data/spec/unit/provider/file/windows_spec.rb +0 -152
  1040. data/spec/unit/provider/group/aix_spec.rb +0 -91
  1041. data/spec/unit/provider/group/directoryservice_spec.rb +0 -33
  1042. data/spec/unit/provider/group/groupadd_spec.rb +0 -284
  1043. data/spec/unit/provider/group/ldap_spec.rb +0 -98
  1044. data/spec/unit/provider/group/pw_spec.rb +0 -78
  1045. data/spec/unit/provider/group/windows_adsi_spec.rb +0 -398
  1046. data/spec/unit/provider/ldap_spec.rb +0 -242
  1047. data/spec/unit/provider/nameservice/directoryservice_spec.rb +0 -157
  1048. data/spec/unit/provider/nameservice_spec.rb +0 -398
  1049. data/spec/unit/provider/package/aix_spec.rb +0 -158
  1050. data/spec/unit/provider/package/appdmg_spec.rb +0 -42
  1051. data/spec/unit/provider/package/apt_spec.rb +0 -302
  1052. data/spec/unit/provider/package/aptitude_spec.rb +0 -46
  1053. data/spec/unit/provider/package/aptrpm_spec.rb +0 -42
  1054. data/spec/unit/provider/package/base_spec.rb +0 -19
  1055. data/spec/unit/provider/package/dnf_spec.rb +0 -55
  1056. data/spec/unit/provider/package/dnfmodule_spec.rb +0 -256
  1057. data/spec/unit/provider/package/dpkg_spec.rb +0 -444
  1058. data/spec/unit/provider/package/freebsd_spec.rb +0 -51
  1059. data/spec/unit/provider/package/gem_spec.rb +0 -487
  1060. data/spec/unit/provider/package/hpux_spec.rb +0 -48
  1061. data/spec/unit/provider/package/macports_spec.rb +0 -142
  1062. data/spec/unit/provider/package/nim_spec.rb +0 -267
  1063. data/spec/unit/provider/package/openbsd_spec.rb +0 -417
  1064. data/spec/unit/provider/package/opkg_spec.rb +0 -180
  1065. data/spec/unit/provider/package/pacman_spec.rb +0 -438
  1066. data/spec/unit/provider/package/pip2_spec.rb +0 -38
  1067. data/spec/unit/provider/package/pip3_spec.rb +0 -38
  1068. data/spec/unit/provider/package/pip_spec.rb +0 -504
  1069. data/spec/unit/provider/package/pkg_spec.rb +0 -473
  1070. data/spec/unit/provider/package/pkgdmg_spec.rb +0 -166
  1071. data/spec/unit/provider/package/pkgin_spec.rb +0 -185
  1072. data/spec/unit/provider/package/pkgng_spec.rb +0 -228
  1073. data/spec/unit/provider/package/pkgutil_spec.rb +0 -231
  1074. data/spec/unit/provider/package/portage_spec.rb +0 -226
  1075. data/spec/unit/provider/package/puppet_gem_spec.rb +0 -130
  1076. data/spec/unit/provider/package/puppetserver_gem_spec.rb +0 -139
  1077. data/spec/unit/provider/package/rpm_spec.rb +0 -674
  1078. data/spec/unit/provider/package/sun_spec.rb +0 -112
  1079. data/spec/unit/provider/package/tdnf_spec.rb +0 -15
  1080. data/spec/unit/provider/package/up2date_spec.rb +0 -22
  1081. data/spec/unit/provider/package/urpmi_spec.rb +0 -84
  1082. data/spec/unit/provider/package/windows/exe_package_spec.rb +0 -114
  1083. data/spec/unit/provider/package/windows/msi_package_spec.rb +0 -111
  1084. data/spec/unit/provider/package/windows/package_spec.rb +0 -180
  1085. data/spec/unit/provider/package/windows_spec.rb +0 -272
  1086. data/spec/unit/provider/package/yum_spec.rb +0 -512
  1087. data/spec/unit/provider/package/zypper_spec.rb +0 -327
  1088. data/spec/unit/provider/package_targetable_spec.rb +0 -60
  1089. data/spec/unit/provider/parsedfile_spec.rb +0 -263
  1090. data/spec/unit/provider/service/base_spec.rb +0 -109
  1091. data/spec/unit/provider/service/bsd_spec.rb +0 -127
  1092. data/spec/unit/provider/service/daemontools_spec.rb +0 -190
  1093. data/spec/unit/provider/service/debian_spec.rb +0 -158
  1094. data/spec/unit/provider/service/freebsd_spec.rb +0 -92
  1095. data/spec/unit/provider/service/gentoo_spec.rb +0 -250
  1096. data/spec/unit/provider/service/init_spec.rb +0 -316
  1097. data/spec/unit/provider/service/launchd_spec.rb +0 -425
  1098. data/spec/unit/provider/service/openbsd_spec.rb +0 -196
  1099. data/spec/unit/provider/service/openrc_spec.rb +0 -231
  1100. data/spec/unit/provider/service/openwrt_spec.rb +0 -101
  1101. data/spec/unit/provider/service/rcng_spec.rb +0 -40
  1102. data/spec/unit/provider/service/redhat_spec.rb +0 -190
  1103. data/spec/unit/provider/service/runit_spec.rb +0 -164
  1104. data/spec/unit/provider/service/smf_spec.rb +0 -526
  1105. data/spec/unit/provider/service/src_spec.rb +0 -186
  1106. data/spec/unit/provider/service/systemd_spec.rb +0 -576
  1107. data/spec/unit/provider/service/upstart_spec.rb +0 -681
  1108. data/spec/unit/provider/service/windows_spec.rb +0 -475
  1109. data/spec/unit/provider/user/aix_spec.rb +0 -320
  1110. data/spec/unit/provider/user/directoryservice_spec.rb +0 -1256
  1111. data/spec/unit/provider/user/hpux_spec.rb +0 -72
  1112. data/spec/unit/provider/user/ldap_spec.rb +0 -286
  1113. data/spec/unit/provider/user/openbsd_spec.rb +0 -76
  1114. data/spec/unit/provider/user/pw_spec.rb +0 -252
  1115. data/spec/unit/provider/user/user_role_add_spec.rb +0 -374
  1116. data/spec/unit/provider/user/useradd_spec.rb +0 -849
  1117. data/spec/unit/provider/user/windows_adsi_spec.rb +0 -407
  1118. data/spec/unit/provider_spec.rb +0 -904
  1119. data/spec/unit/puppet_pal_2pec.rb +0 -1033
  1120. data/spec/unit/puppet_pal_catalog_spec.rb +0 -962
  1121. data/spec/unit/puppet_pal_spec.rb +0 -3
  1122. data/spec/unit/puppet_spec.rb +0 -127
  1123. data/spec/unit/relationship_spec.rb +0 -202
  1124. data/spec/unit/reports/http_spec.rb +0 -119
  1125. data/spec/unit/reports/store_spec.rb +0 -67
  1126. data/spec/unit/reports_spec.rb +0 -68
  1127. data/spec/unit/resource/catalog_spec.rb +0 -1151
  1128. data/spec/unit/resource/status_spec.rb +0 -216
  1129. data/spec/unit/resource/type_collection_spec.rb +0 -332
  1130. data/spec/unit/resource/type_spec.rb +0 -876
  1131. data/spec/unit/resource_spec.rb +0 -1189
  1132. data/spec/unit/scheduler/job_spec.rb +0 -78
  1133. data/spec/unit/scheduler/scheduler_spec.rb +0 -115
  1134. data/spec/unit/scheduler/splay_job_spec.rb +0 -34
  1135. data/spec/unit/settings/array_setting_spec.rb +0 -39
  1136. data/spec/unit/settings/autosign_setting_spec.rb +0 -104
  1137. data/spec/unit/settings/certificate_revocation_setting_spec.rb +0 -37
  1138. data/spec/unit/settings/config_file_spec.rb +0 -147
  1139. data/spec/unit/settings/directory_setting_spec.rb +0 -27
  1140. data/spec/unit/settings/duration_setting_spec.rb +0 -48
  1141. data/spec/unit/settings/enum_setting_spec.rb +0 -27
  1142. data/spec/unit/settings/environment_conf_spec.rb +0 -133
  1143. data/spec/unit/settings/file_setting_spec.rb +0 -344
  1144. data/spec/unit/settings/http_extra_headers_spec.rb +0 -62
  1145. data/spec/unit/settings/ini_file_spec.rb +0 -550
  1146. data/spec/unit/settings/integer_setting_spec.rb +0 -42
  1147. data/spec/unit/settings/path_setting_spec.rb +0 -29
  1148. data/spec/unit/settings/port_setting_spec.rb +0 -31
  1149. data/spec/unit/settings/priority_setting_spec.rb +0 -65
  1150. data/spec/unit/settings/server_list_setting_spec.rb +0 -21
  1151. data/spec/unit/settings/string_setting_spec.rb +0 -74
  1152. data/spec/unit/settings/terminus_setting_spec.rb +0 -27
  1153. data/spec/unit/settings/value_translator_spec.rb +0 -75
  1154. data/spec/unit/settings_spec.rb +0 -2343
  1155. data/spec/unit/ssl/base_spec.rb +0 -125
  1156. data/spec/unit/ssl/certificate_request_attributes_spec.rb +0 -80
  1157. data/spec/unit/ssl/certificate_request_spec.rb +0 -369
  1158. data/spec/unit/ssl/certificate_signer_spec.rb +0 -17
  1159. data/spec/unit/ssl/certificate_spec.rb +0 -183
  1160. data/spec/unit/ssl/digest_spec.rb +0 -34
  1161. data/spec/unit/ssl/oids_spec.rb +0 -73
  1162. data/spec/unit/ssl/ssl_provider_spec.rb +0 -632
  1163. data/spec/unit/ssl/state_machine_spec.rb +0 -982
  1164. data/spec/unit/ssl/verifier_spec.rb +0 -102
  1165. data/spec/unit/task_spec.rb +0 -345
  1166. data/spec/unit/test/test_helper_spec.rb +0 -17
  1167. data/spec/unit/transaction/additional_resource_generator_spec.rb +0 -534
  1168. data/spec/unit/transaction/event_manager_spec.rb +0 -365
  1169. data/spec/unit/transaction/event_spec.rb +0 -198
  1170. data/spec/unit/transaction/persistence_spec.rb +0 -276
  1171. data/spec/unit/transaction/report_spec.rb +0 -740
  1172. data/spec/unit/transaction/resource_harness_spec.rb +0 -625
  1173. data/spec/unit/transaction_spec.rb +0 -1037
  1174. data/spec/unit/type/README.markdown +0 -4
  1175. data/spec/unit/type/component_spec.rb +0 -52
  1176. data/spec/unit/type/exec_spec.rb +0 -932
  1177. data/spec/unit/type/file/checksum_spec.rb +0 -104
  1178. data/spec/unit/type/file/checksum_value_spec.rb +0 -285
  1179. data/spec/unit/type/file/content_spec.rb +0 -440
  1180. data/spec/unit/type/file/ctime_spec.rb +0 -33
  1181. data/spec/unit/type/file/ensure_spec.rb +0 -121
  1182. data/spec/unit/type/file/group_spec.rb +0 -65
  1183. data/spec/unit/type/file/mode_spec.rb +0 -220
  1184. data/spec/unit/type/file/mtime_spec.rb +0 -33
  1185. data/spec/unit/type/file/owner_spec.rb +0 -63
  1186. data/spec/unit/type/file/selinux_spec.rb +0 -86
  1187. data/spec/unit/type/file/source_spec.rb +0 -730
  1188. data/spec/unit/type/file/type_spec.rb +0 -18
  1189. data/spec/unit/type/file_spec.rb +0 -1746
  1190. data/spec/unit/type/filebucket_spec.rb +0 -104
  1191. data/spec/unit/type/group_spec.rb +0 -105
  1192. data/spec/unit/type/noop_metaparam_spec.rb +0 -37
  1193. data/spec/unit/type/package/package_settings_spec.rb +0 -156
  1194. data/spec/unit/type/package_spec.rb +0 -396
  1195. data/spec/unit/type/resources_spec.rb +0 -362
  1196. data/spec/unit/type/schedule_spec.rb +0 -621
  1197. data/spec/unit/type/service_spec.rb +0 -458
  1198. data/spec/unit/type/stage_spec.rb +0 -7
  1199. data/spec/unit/type/tidy_spec.rb +0 -493
  1200. data/spec/unit/type/user_spec.rb +0 -553
  1201. data/spec/unit/type/whit_spec.rb +0 -9
  1202. data/spec/unit/type_spec.rb +0 -1473
  1203. data/spec/unit/util/at_fork_spec.rb +0 -150
  1204. data/spec/unit/util/autoload_spec.rb +0 -330
  1205. data/spec/unit/util/backups_spec.rb +0 -130
  1206. data/spec/unit/util/character_encoding_spec.rb +0 -186
  1207. data/spec/unit/util/checksums_spec.rb +0 -223
  1208. data/spec/unit/util/colors_spec.rb +0 -44
  1209. data/spec/unit/util/command_line_spec.rb +0 -200
  1210. data/spec/unit/util/command_line_utils/puppet_option_parser_spec.rb +0 -129
  1211. data/spec/unit/util/constant_inflector_spec.rb +0 -55
  1212. data/spec/unit/util/diff_spec.rb +0 -46
  1213. data/spec/unit/util/docs_spec.rb +0 -100
  1214. data/spec/unit/util/errors_spec.rb +0 -36
  1215. data/spec/unit/util/execution_spec.rb +0 -943
  1216. data/spec/unit/util/execution_stub_spec.rb +0 -38
  1217. data/spec/unit/util/feature_spec.rb +0 -129
  1218. data/spec/unit/util/filetype_spec.rb +0 -223
  1219. data/spec/unit/util/inifile_spec.rb +0 -510
  1220. data/spec/unit/util/json_lockfile_spec.rb +0 -48
  1221. data/spec/unit/util/json_spec.rb +0 -126
  1222. data/spec/unit/util/ldap/connection_spec.rb +0 -162
  1223. data/spec/unit/util/ldap/generator_spec.rb +0 -49
  1224. data/spec/unit/util/ldap/manager_spec.rb +0 -612
  1225. data/spec/unit/util/lockfile_spec.rb +0 -117
  1226. data/spec/unit/util/log/destinations_spec.rb +0 -258
  1227. data/spec/unit/util/log_spec.rb +0 -479
  1228. data/spec/unit/util/logging_spec.rb +0 -618
  1229. data/spec/unit/util/metric_spec.rb +0 -89
  1230. data/spec/unit/util/monkey_patches_spec.rb +0 -137
  1231. data/spec/unit/util/multi_match_spec.rb +0 -38
  1232. data/spec/unit/util/network_device/config_spec.rb +0 -91
  1233. data/spec/unit/util/network_device/transport/base_spec.rb +0 -40
  1234. data/spec/unit/util/network_device_spec.rb +0 -43
  1235. data/spec/unit/util/package/version/debian_spec.rb +0 -83
  1236. data/spec/unit/util/package/version/pip_spec.rb +0 -464
  1237. data/spec/unit/util/package/version/range_spec.rb +0 -175
  1238. data/spec/unit/util/package/version/rpm_spec.rb +0 -121
  1239. data/spec/unit/util/package_spec.rb +0 -19
  1240. data/spec/unit/util/pidlock_spec.rb +0 -333
  1241. data/spec/unit/util/plist_spec.rb +0 -168
  1242. data/spec/unit/util/posix_spec.rb +0 -630
  1243. data/spec/unit/util/profiler/aggregate_spec.rb +0 -55
  1244. data/spec/unit/util/profiler/around_profiler_spec.rb +0 -61
  1245. data/spec/unit/util/profiler/logging_spec.rb +0 -70
  1246. data/spec/unit/util/profiler/object_counts_spec.rb +0 -13
  1247. data/spec/unit/util/profiler/wall_clock_spec.rb +0 -13
  1248. data/spec/unit/util/profiler_spec.rb +0 -47
  1249. data/spec/unit/util/rdoc_spec.rb +0 -55
  1250. data/spec/unit/util/reference_spec.rb +0 -38
  1251. data/spec/unit/util/resource_template_spec.rb +0 -57
  1252. data/spec/unit/util/retry_action_spec.rb +0 -84
  1253. data/spec/unit/util/rpm_compare_spec.rb +0 -196
  1254. data/spec/unit/util/rubygems_spec.rb +0 -47
  1255. data/spec/unit/util/run_mode_spec.rb +0 -217
  1256. data/spec/unit/util/selinux_spec.rb +0 -422
  1257. data/spec/unit/util/skip_tags_spec.rb +0 -14
  1258. data/spec/unit/util/splayer_spec.rb +0 -44
  1259. data/spec/unit/util/storage_spec.rb +0 -330
  1260. data/spec/unit/util/suidmanager_spec.rb +0 -278
  1261. data/spec/unit/util/symbolic_file_mode_spec.rb +0 -180
  1262. data/spec/unit/util/tag_set_spec.rb +0 -52
  1263. data/spec/unit/util/tagging_spec.rb +0 -246
  1264. data/spec/unit/util/terminal_spec.rb +0 -41
  1265. data/spec/unit/util/user_attr_spec.rb +0 -45
  1266. data/spec/unit/util/warnings_spec.rb +0 -45
  1267. data/spec/unit/util/watched_file_spec.rb +0 -52
  1268. data/spec/unit/util/watcher/periodic_watcher_spec.rb +0 -52
  1269. data/spec/unit/util/watcher_spec.rb +0 -86
  1270. data/spec/unit/util/windows/access_control_entry_spec.rb +0 -66
  1271. data/spec/unit/util/windows/access_control_list_spec.rb +0 -132
  1272. data/spec/unit/util/windows/adsi_spec.rb +0 -704
  1273. data/spec/unit/util/windows/api_types_spec.rb +0 -184
  1274. data/spec/unit/util/windows/eventlog_spec.rb +0 -120
  1275. data/spec/unit/util/windows/file_spec.rb +0 -88
  1276. data/spec/unit/util/windows/root_certs_spec.rb +0 -16
  1277. data/spec/unit/util/windows/security_descriptor_spec.rb +0 -115
  1278. data/spec/unit/util/windows/service_spec.rb +0 -677
  1279. data/spec/unit/util/windows/sid_spec.rb +0 -338
  1280. data/spec/unit/util/windows/string_spec.rb +0 -55
  1281. data/spec/unit/util/windows_spec.rb +0 -23
  1282. data/spec/unit/util/yaml_spec.rb +0 -171
  1283. data/spec/unit/util_spec.rb +0 -954
  1284. data/spec/unit/version_spec.rb +0 -61
  1285. data/spec/unit/x509/cert_provider_spec.rb +0 -614
  1286. data/spec/unit/x509/pem_store_spec.rb +0 -160
@@ -1,954 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Puppet::Util do
4
- include PuppetSpec::Files
5
-
6
- if Puppet::Util::Platform.windows?
7
- def set_mode(mode, file)
8
- Puppet::Util::Windows::Security.set_mode(mode, file)
9
- end
10
-
11
- def get_mode(file)
12
- Puppet::Util::Windows::Security.get_mode(file) & 07777
13
- end
14
- else
15
- def set_mode(mode, file)
16
- File.chmod(mode, file)
17
- end
18
-
19
- def get_mode(file)
20
- Puppet::FileSystem.lstat(file).mode & 07777
21
- end
22
- end
23
-
24
- describe "#withenv" do
25
- let(:mode) { Puppet::Util::Platform.windows? ? :windows : :posix }
26
-
27
- before :each do
28
- @original_path = ENV["PATH"]
29
- @new_env = {:PATH => "/some/bogus/path"}
30
- end
31
-
32
- it "should change environment variables within the block then reset environment variables to their original values" do
33
- Puppet::Util.withenv @new_env, mode do
34
- expect(ENV["PATH"]).to eq("/some/bogus/path")
35
- end
36
- expect(ENV["PATH"]).to eq(@original_path)
37
- end
38
-
39
- it "should reset environment variables to their original values even if the block fails" do
40
- begin
41
- Puppet::Util.withenv @new_env, mode do
42
- expect(ENV["PATH"]).to eq("/some/bogus/path")
43
- raise "This is a failure"
44
- end
45
- rescue
46
- end
47
- expect(ENV["PATH"]).to eq(@original_path)
48
- end
49
-
50
- it "should reset environment variables even when they are set twice" do
51
- # Setting Path & Environment parameters in Exec type can cause weirdness
52
- @new_env["PATH"] = "/someother/bogus/path"
53
- Puppet::Util.withenv @new_env, mode do
54
- # When assigning duplicate keys, can't guarantee order of evaluation
55
- expect(ENV["PATH"]).to match(/\/some.*\/bogus\/path/)
56
- end
57
- expect(ENV["PATH"]).to eq(@original_path)
58
- end
59
-
60
- it "should remove any new environment variables after the block ends" do
61
- @new_env[:FOO] = "bar"
62
- ENV["FOO"] = nil
63
- Puppet::Util.withenv @new_env, mode do
64
- expect(ENV["FOO"]).to eq("bar")
65
- end
66
- expect(ENV["FOO"]).to eq(nil)
67
- end
68
- end
69
-
70
- describe "#withenv on POSIX", :unless => Puppet::Util::Platform.windows? do
71
- it "should preserve case" do
72
- # start with lower case key,
73
- env_key = SecureRandom.uuid.downcase
74
-
75
- begin
76
- original_value = 'hello'
77
- ENV[env_key] = original_value
78
- new_value = 'goodbye'
79
-
80
- Puppet::Util.withenv({env_key.upcase => new_value}, :posix) do
81
- expect(ENV[env_key]).to eq(original_value)
82
- expect(ENV[env_key.upcase]).to eq(new_value)
83
- end
84
-
85
- expect(ENV[env_key]).to eq(original_value)
86
- expect(ENV[env_key.upcase]).to be_nil
87
- ensure
88
- ENV.delete(env_key)
89
- end
90
- end
91
- end
92
-
93
- describe "#withenv on Windows", :if => Puppet::Util::Platform.windows? do
94
- let(:process) { Puppet::Util::Windows::Process }
95
-
96
- it "should ignore case" do
97
- # start with lower case key, ensuring string is not entirely numeric
98
- env_key = SecureRandom.uuid.downcase + 'a'
99
-
100
- begin
101
- original_value = 'hello'
102
- ENV[env_key] = original_value
103
- new_value = 'goodbye'
104
-
105
- Puppet::Util.withenv({env_key.upcase => new_value}, :windows) do
106
- expect(ENV[env_key]).to eq(new_value)
107
- expect(ENV[env_key.upcase]).to eq(new_value)
108
- end
109
-
110
- expect(ENV[env_key]).to eq(original_value)
111
- expect(ENV[env_key.upcase]).to eq(original_value)
112
- ensure
113
- ENV.delete(env_key)
114
- end
115
- end
116
-
117
- def withenv_utf8(&block)
118
- env_var_name = SecureRandom.uuid
119
- utf_8_bytes = [225, 154, 160] # rune ᚠ
120
-
121
- utf_8_key = env_var_name + utf_8_bytes.pack('c*').force_encoding(Encoding::UTF_8)
122
- utf_8_value = utf_8_key + 'value'
123
- codepage_key = utf_8_key.dup.force_encoding(Encoding.default_external)
124
-
125
- Puppet::Util.withenv({utf_8_key => utf_8_value}, :windows) do
126
- # the true Windows environment APIs see the variables correctly
127
- expect(process.get_environment_strings[utf_8_key]).to eq(utf_8_value)
128
-
129
- # the string contain the same bytes, but have different Ruby metadata
130
- expect(utf_8_key.bytes.to_a).to eq(codepage_key.bytes.to_a)
131
-
132
- yield utf_8_key, utf_8_value, codepage_key
133
- end
134
-
135
- # real environment shouldn't have env var anymore
136
- expect(process.get_environment_strings[utf_8_key]).to eq(nil)
137
- end
138
-
139
- # document buggy Ruby behavior here for https://bugs.ruby-lang.org/issues/8822
140
- # Ruby retrieves / stores ENV names in the current codepage
141
- # when these tests no longer pass, Ruby has fixed its bugs and workarounds can be removed
142
-
143
- # In 2.3, the behavior is mostly correct when external codepage is 65001 / UTF-8
144
- it "works around Ruby bug 8822 (which fails to preserve UTF-8 properly when accessing ENV) (Ruby >= 2.3.x) ",
145
- :if => Puppet::Util::Platform.windows? && RUBY_VERSION.to_f < 3 do
146
-
147
- withenv_utf8 do |utf_8_key, utf_8_value, codepage_key|
148
- # Ruby 2.3 fixes access by the original UTF-8 key, and behaves differently than 2.1
149
- # keying by local codepage will work only when the UTF-8 can be converted to local codepage
150
- # the key selected for this test contains characters unavailable to a local codepage, hence doesn't work
151
-
152
- # On Japanese Windows (Code Page 932) this test resolves as true.
153
- # otherwise the key selected for this test contains characters
154
- # unavailable to a local codepage, hence doesn't work
155
- # HACK: tech debt to replace once PUP-7019 is understood
156
- should_be_found = (Encoding.default_external == Encoding::CP932)
157
- expect(ENV.key?(codepage_key)).to eq(should_be_found)
158
- expect(ENV.key?(utf_8_key)).to eq(true)
159
-
160
- # Ruby's ENV.keys has slightly different behavior than ENV.key?(key), and 2.3 differs from 2.1
161
- # (codepage_key / utf_8_key have same bytes for the sake of searching)
162
- found = ENV.keys.find { |k| k.bytes == codepage_key.bytes }
163
-
164
- # the keys collection in 2.3 does not have a string with the correct bytes!
165
- # a corrupt version of the key exists with the bytes [225, 154, 160] replaced with [63]!
166
- expect(found).to be_nil
167
-
168
- # given the key is corrupted, include? cannot be used to find it in either UTF-8 or codepage encoding
169
- expect(ENV.keys.include?(codepage_key)).to eq(false)
170
- expect(ENV.keys.include?(utf_8_key)).to eq(false)
171
-
172
- # The value stored at the UTF-8 key is a corrupted current codepage string and won't match UTF-8 value
173
- # again the bytes [225, 154, 160] have irreversibly been changed to [63]!
174
- env_value = ENV[utf_8_key]
175
- expect(env_value).to_not eq(utf_8_value)
176
- expect(env_value.encoding).to_not eq(Encoding::UTF_8)
177
-
178
- # the ENV value returned will be in the local codepage which may or may not be able to be
179
- # encoded to UTF8. Our test UTF8 data is not convertible to non-Unicode codepages
180
- converted_value = ENV[utf_8_key].dup.force_encoding(Encoding::UTF_8)
181
- expect(converted_value).to_not eq(utf_8_value)
182
- end
183
- end
184
-
185
- it "should preseve existing environment and should not corrupt UTF-8 environment variables" do
186
- env_var_name = SecureRandom.uuid
187
- utf_8_bytes = [225, 154, 160] # rune ᚠ
188
- utf_8_str = env_var_name + utf_8_bytes.pack('c*').force_encoding(Encoding::UTF_8)
189
- env_var_name_utf_8 = utf_8_str
190
-
191
- begin
192
- # UTF-8 name and value
193
- process.set_environment_variable(env_var_name_utf_8, utf_8_str)
194
- # ASCII name / UTF-8 value
195
- process.set_environment_variable(env_var_name, utf_8_str)
196
-
197
- original_keys = process.get_environment_strings.keys.to_a
198
- Puppet::Util.withenv({}, :windows) { }
199
-
200
- env = process.get_environment_strings
201
-
202
- expect(env[env_var_name]).to eq(utf_8_str)
203
- expect(env[env_var_name_utf_8]).to eq(utf_8_str)
204
- expect(env.keys.to_a).to eq(original_keys)
205
- ensure
206
- process.set_environment_variable(env_var_name_utf_8, nil)
207
- process.set_environment_variable(env_var_name, nil)
208
- end
209
- end
210
- end
211
-
212
- describe "#absolute_path?" do
213
- describe "on posix systems", :if => Puppet.features.posix? do
214
- it "should default to the platform of the local system" do
215
- expect(Puppet::Util).to be_absolute_path('/foo')
216
- expect(Puppet::Util).not_to be_absolute_path('C:/foo')
217
- end
218
- end
219
-
220
- describe "on windows", :if => Puppet::Util::Platform.windows? do
221
- it "should default to the platform of the local system" do
222
- expect(Puppet::Util).to be_absolute_path('C:/foo')
223
- expect(Puppet::Util).not_to be_absolute_path('/foo')
224
- end
225
- end
226
-
227
- describe "when using platform :posix" do
228
- %w[/ /foo /foo/../bar //foo //Server/Foo/Bar //?/C:/foo/bar /\Server/Foo /foo//bar/baz].each do |path|
229
- it "should return true for #{path}" do
230
- expect(Puppet::Util).to be_absolute_path(path, :posix)
231
- end
232
- end
233
-
234
- %w[. ./foo \foo C:/foo \\Server\Foo\Bar \\?\C:\foo\bar \/?/foo\bar \/Server/foo foo//bar/baz].each do |path|
235
- it "should return false for #{path}" do
236
- expect(Puppet::Util).not_to be_absolute_path(path, :posix)
237
- end
238
- end
239
- end
240
-
241
- describe "when using platform :windows" do
242
- %w[C:/foo C:\foo \\\\Server\Foo\Bar \\\\?\C:\foo\bar //Server/Foo/Bar //?/C:/foo/bar /\?\C:/foo\bar \/Server\Foo/Bar c:/foo//bar//baz].each do |path|
243
- it "should return true for #{path}" do
244
- expect(Puppet::Util).to be_absolute_path(path, :windows)
245
- end
246
- end
247
-
248
- %w[/ . ./foo \foo /foo /foo/../bar //foo C:foo/bar foo//bar/baz].each do |path|
249
- it "should return false for #{path}" do
250
- expect(Puppet::Util).not_to be_absolute_path(path, :windows)
251
- end
252
- end
253
- end
254
- end
255
-
256
- describe "#path_to_uri" do
257
- # different UTF-8 widths
258
- # 1-byte A
259
- # 2-byte ۿ - http://www.fileformat.info/info/unicode/char/06ff/index.htm - 0xDB 0xBF / 219 191
260
- # 3-byte ᚠ - http://www.fileformat.info/info/unicode/char/16A0/index.htm - 0xE1 0x9A 0xA0 / 225 154 160
261
- # 4-byte ܎ - http://www.fileformat.info/info/unicode/char/2070E/index.htm - 0xF0 0xA0 0x9C 0x8E / 240 160 156 142
262
- let (:mixed_utf8) { "A\u06FF\u16A0\u{2070E}" } # Aۿᚠ܎
263
- let (:mixed_utf8_urlencoded) { "A%DB%BF%E1%9A%A0%F0%A0%9C%8E" }
264
-
265
- %w[. .. foo foo/bar foo/../bar].each do |path|
266
- it "should reject relative path: #{path}" do
267
- expect { Puppet::Util.path_to_uri(path) }.to raise_error(Puppet::Error)
268
- end
269
- end
270
-
271
- it "should perform URI escaping" do
272
- expect(Puppet::Util.path_to_uri("/foo bar").path).to eq("/foo%20bar")
273
- end
274
-
275
- it "should properly URI encode + and space in path" do
276
- expect(Puppet::Util.path_to_uri("/foo+foo bar").path).to eq("/foo+foo%20bar")
277
- end
278
-
279
- # reserved characters are different for each part
280
- # https://web.archive.org/web/20151229061347/http://blog.lunatech.com/2009/02/03/what-every-web-developer-must-know-about-url-encoding#Thereservedcharactersaredifferentforeachpart
281
- # "?" is allowed unescaped anywhere within a query part,
282
- # "/" is allowed unescaped anywhere within a query part,
283
- # "=" is allowed unescaped anywhere within a path parameter or query parameter value, and within a path segment,
284
- # ":@-._~!$&'()*+,;=" are allowed unescaped anywhere within a path segment part,
285
- # "/?:@-._~!$&'()*+,;=" are allowed unescaped anywhere within a fragment part.
286
- it "should properly URI encode + and space in path and query" do
287
- path = "/foo+foo bar?foo+foo bar"
288
- uri = Puppet::Util.path_to_uri(path)
289
-
290
- expected_encoding = Encoding::UTF_8
291
- expect(uri.to_s.encoding).to eq(expected_encoding)
292
- expect(uri.path).to eq("/foo+foo%20bar")
293
- # either + or %20 is correct for an encoded space in query
294
- # + is usually used for backward compatibility, but %20 is preferred for compat with Puppet::Util.uri_unescape
295
- expect(uri.query).to eq("foo%2Bfoo%20bar")
296
- # complete roundtrip
297
- expect(Puppet::Util.uri_unescape(uri.to_s).sub(%r{^file:(//)?}, '')).to eq(path)
298
- expect(Puppet::Util.uri_unescape(uri.to_s).encoding).to eq(expected_encoding)
299
- end
300
-
301
- it "should perform UTF-8 URI escaping" do
302
- uri = Puppet::Util.path_to_uri("/#{mixed_utf8}")
303
-
304
- expect(uri.path.encoding).to eq(Encoding::UTF_8)
305
- expect(uri.path).to eq("/#{mixed_utf8_urlencoded}")
306
- end
307
-
308
- describe "when using platform :posix" do
309
- before :each do
310
- allow(Puppet.features).to receive(:posix?).and_return(true)
311
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(false)
312
- end
313
-
314
- %w[/ /foo /foo/../bar].each do |path|
315
- it "should convert #{path} to URI" do
316
- expect(Puppet::Util.path_to_uri(path).path).to eq(path)
317
- end
318
- end
319
- end
320
-
321
- describe "when using platform :windows" do
322
- before :each do
323
- allow(Puppet.features).to receive(:posix?).and_return(false)
324
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(true)
325
- end
326
-
327
- it "should normalize backslashes" do
328
- expect(Puppet::Util.path_to_uri('c:\\foo\\bar\\baz').path).to eq('/' + 'c:/foo/bar/baz')
329
- end
330
-
331
- %w[C:/ C:/foo/bar].each do |path|
332
- it "should convert #{path} to absolute URI" do
333
- expect(Puppet::Util.path_to_uri(path).path).to eq('/' + path)
334
- end
335
- end
336
-
337
- %w[share C$].each do |path|
338
- it "should convert UNC #{path} to absolute URI" do
339
- uri = Puppet::Util.path_to_uri("\\\\server\\#{path}")
340
- expect(uri.host).to eq('server')
341
- expect(uri.path).to eq('/' + Puppet::Util.uri_encode(path))
342
- end
343
- end
344
- end
345
- end
346
-
347
- describe "#uri_query_encode" do
348
- # different UTF-8 widths
349
- # 1-byte A
350
- # 2-byte ۿ - http://www.fileformat.info/info/unicode/char/06ff/index.htm - 0xDB 0xBF / 219 191
351
- # 3-byte ᚠ - http://www.fileformat.info/info/unicode/char/16A0/index.htm - 0xE1 0x9A 0xA0 / 225 154 160
352
- # 4-byte 𠜎 - http://www.fileformat.info/info/unicode/char/2070E/index.htm - 0xF0 0xA0 0x9C 0x8E / 240 160 156 142
353
- let (:mixed_utf8) { "A\u06FF\u16A0\u{2070E}" } # Aۿᚠ𠜎
354
- let (:mixed_utf8_urlencoded) { "A%DB%BF%E1%9A%A0%F0%A0%9C%8E" }
355
-
356
- it "should perform basic URI escaping that includes space and +" do
357
- expect(Puppet::Util.uri_query_encode("foo bar+foo")).to eq("foo%20bar%2Bfoo")
358
- end
359
-
360
- it "should URI encode any special characters: = + <space> & * and #" do
361
- expect(Puppet::Util.uri_query_encode("foo=bar+foo baz&bar=baz qux&special= *&qux=not fragment#")).to eq("foo%3Dbar%2Bfoo%20baz%26bar%3Dbaz%20qux%26special%3D%20%2A%26qux%3Dnot%20fragment%23")
362
- end
363
-
364
- [
365
- "A\u06FF\u16A0\u{2070E}",
366
- "A\u06FF\u16A0\u{2070E}".force_encoding(Encoding::BINARY)
367
- ].each do |uri_string|
368
- it "should perform UTF-8 URI escaping, even when input strings are not UTF-8" do
369
- uri = Puppet::Util.uri_query_encode(mixed_utf8)
370
-
371
- expect(uri.encoding).to eq(Encoding::UTF_8)
372
- expect(uri).to eq(mixed_utf8_urlencoded)
373
- end
374
- end
375
-
376
- it "should be usable by URI::parse" do
377
- uri = URI::parse("puppet://server/path?" + Puppet::Util.uri_query_encode(mixed_utf8))
378
-
379
- expect(uri.scheme).to eq('puppet')
380
- expect(uri.host).to eq('server')
381
- expect(uri.path).to eq('/path')
382
- expect(uri.query).to eq(mixed_utf8_urlencoded)
383
- end
384
-
385
- it "should be usable by URI::Generic.build" do
386
- params = {
387
- :scheme => 'file',
388
- :host => 'foobar',
389
- :path => '/path/to',
390
- :query => Puppet::Util.uri_query_encode(mixed_utf8)
391
- }
392
-
393
- uri = URI::Generic.build(params)
394
-
395
- expect(uri.scheme).to eq('file')
396
- expect(uri.host).to eq('foobar')
397
- expect(uri.path).to eq("/path/to")
398
- expect(uri.query).to eq(mixed_utf8_urlencoded)
399
- end
400
- end
401
-
402
- describe "#uri_encode" do
403
- # different UTF-8 widths
404
- # 1-byte A
405
- # 2-byte ۿ - http://www.fileformat.info/info/unicode/char/06ff/index.htm - 0xDB 0xBF / 219 191
406
- # 3-byte ᚠ - http://www.fileformat.info/info/unicode/char/16A0/index.htm - 0xE1 0x9A 0xA0 / 225 154 160
407
- # 4-byte ܎ - http://www.fileformat.info/info/unicode/char/2070E/index.htm - 0xF0 0xA0 0x9C 0x8E / 240 160 156 142
408
- let (:mixed_utf8) { "A\u06FF\u16A0\u{2070E}" } # Aۿᚠ܎
409
- let (:mixed_utf8_urlencoded) { "A%DB%BF%E1%9A%A0%F0%A0%9C%8E" }
410
-
411
- it "should perform URI escaping" do
412
- expect(Puppet::Util.uri_encode("/foo bar")).to eq("/foo%20bar")
413
- end
414
-
415
- [
416
- "A\u06FF\u16A0\u{2070E}",
417
- "A\u06FF\u16A0\u{2070E}".force_encoding(Encoding::BINARY)
418
- ].each do |uri_string|
419
- it "should perform UTF-8 URI escaping, even when input strings are not UTF-8" do
420
- uri = Puppet::Util.uri_encode(mixed_utf8)
421
-
422
- expect(uri.encoding).to eq(Encoding::UTF_8)
423
- expect(uri).to eq(mixed_utf8_urlencoded)
424
- end
425
- end
426
-
427
- it "should treat & and = as delimiters in a query string, but URI encode other special characters: + <space> * and #" do
428
- input = "http://foo.bar.com/path?foo=bar+foo baz&bar=baz qux&special= *&qux=not fragment#"
429
- expected_output = "http://foo.bar.com/path?foo=bar%2Bfoo%20baz&bar=baz%20qux&special=%20%2A&qux=not%20fragment%23"
430
- expect(Puppet::Util.uri_encode(input)).to eq(expected_output)
431
- end
432
-
433
- it "should be usable by URI::parse" do
434
- uri = URI::parse(Puppet::Util.uri_encode("puppet://server/path/to/#{mixed_utf8}"))
435
-
436
- expect(uri.scheme).to eq('puppet')
437
- expect(uri.host).to eq('server')
438
- expect(uri.path).to eq("/path/to/#{mixed_utf8_urlencoded}")
439
- end
440
-
441
- it "should be usable by URI::Generic.build" do
442
- params = {
443
- :scheme => 'file',
444
- :host => 'foobar',
445
- :path => Puppet::Util.uri_encode("/path/to/#{mixed_utf8}")
446
- }
447
-
448
- uri = URI::Generic.build(params)
449
-
450
- expect(uri.scheme).to eq('file')
451
- expect(uri.host).to eq('foobar')
452
- expect(uri.path).to eq("/path/to/#{mixed_utf8_urlencoded}")
453
- end
454
-
455
- describe "when using platform :posix" do
456
- before :each do
457
- allow(Puppet.features).to receive(:posix?).and_return(true)
458
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(false)
459
- end
460
-
461
- %w[/ /foo /foo/../bar].each do |path|
462
- it "should not replace / in #{path} with %2F" do
463
- expect(Puppet::Util.uri_encode(path)).to eq(path)
464
- end
465
- end
466
- end
467
-
468
- describe "with fragment support" do
469
- context "disabled by default" do
470
- it "should encode # as %23 in path" do
471
- encoded = Puppet::Util.uri_encode("/foo bar#fragment")
472
- expect(encoded).to eq("/foo%20bar%23fragment")
473
- end
474
-
475
- it "should encode # as %23 in query" do
476
- encoded = Puppet::Util.uri_encode("/foo bar?baz+qux#fragment")
477
- expect(encoded).to eq("/foo%20bar?baz%2Bqux%23fragment")
478
- end
479
- end
480
-
481
- context "optionally enabled" do
482
- it "should leave fragment delimiter # after encoded paths" do
483
- encoded = Puppet::Util.uri_encode("/foo bar#fragment", { :allow_fragment => true })
484
- expect(encoded).to eq("/foo%20bar#fragment")
485
- end
486
-
487
- it "should leave fragment delimiter # after encoded query" do
488
- encoded = Puppet::Util.uri_encode("/foo bar?baz+qux#fragment", { :allow_fragment => true })
489
- expect(encoded).to eq("/foo%20bar?baz%2Bqux#fragment")
490
- end
491
- end
492
- end
493
-
494
- describe "when using platform :windows" do
495
- before :each do
496
- allow(Puppet.features).to receive(:posix?).and_return(false)
497
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(true)
498
- end
499
-
500
- it "should url encode \\ as %5C, but not replace : as %3F" do
501
- expect(Puppet::Util.uri_encode('c:\\foo\\bar\\baz')).to eq('c:%5Cfoo%5Cbar%5Cbaz')
502
- end
503
-
504
- %w[C:/ C:/foo/bar].each do |path|
505
- it "should not replace / in #{path} with %2F" do
506
- expect(Puppet::Util.uri_encode(path)).to eq(path)
507
- end
508
- end
509
- end
510
- end
511
-
512
- describe ".uri_to_path" do
513
- require 'uri'
514
-
515
- # different UTF-8 widths
516
- # 1-byte A
517
- # 2-byte ۿ - http://www.fileformat.info/info/unicode/char/06ff/index.htm - 0xDB 0xBF / 219 191
518
- # 3-byte ᚠ - http://www.fileformat.info/info/unicode/char/16A0/index.htm - 0xE1 0x9A 0xA0 / 225 154 160
519
- # 4-byte 𠜎 - http://www.fileformat.info/info/unicode/char/2070E/index.htm - 0xF0 0xA0 0x9C 0x8E / 240 160 156 142
520
- let (:mixed_utf8) { "A\u06FF\u16A0\u{2070E}" } # Aۿᚠ𠜎
521
-
522
- it "should strip host component" do
523
- expect(Puppet::Util.uri_to_path(URI.parse('http://foo/bar'))).to eq('/bar')
524
- end
525
-
526
- it "should accept puppet URLs" do
527
- expect(Puppet::Util.uri_to_path(URI.parse('puppet:///modules/foo'))).to eq('/modules/foo')
528
- end
529
-
530
- it "should return unencoded path" do
531
- expect(Puppet::Util.uri_to_path(URI.parse('http://foo/bar%20baz'))).to eq('/bar baz')
532
- end
533
-
534
- [
535
- "http://foo/A%DB%BF%E1%9A%A0%F0%A0%9C%8E",
536
- "http://foo/A%DB%BF%E1%9A%A0%F0%A0%9C%8E".force_encoding(Encoding::ASCII)
537
- ].each do |uri_string|
538
- it "should return paths as UTF-8" do
539
- path = Puppet::Util.uri_to_path(URI.parse(uri_string))
540
-
541
- expect(path).to eq("/#{mixed_utf8}")
542
- expect(path.encoding).to eq(Encoding::UTF_8)
543
- end
544
- end
545
-
546
- it "should be nil-safe" do
547
- expect(Puppet::Util.uri_to_path(nil)).to be_nil
548
- end
549
-
550
- describe "when using platform :posix",:if => Puppet.features.posix? do
551
- it "should accept root" do
552
- expect(Puppet::Util.uri_to_path(URI.parse('file:/'))).to eq('/')
553
- end
554
-
555
- it "should accept single slash" do
556
- expect(Puppet::Util.uri_to_path(URI.parse('file:/foo/bar'))).to eq('/foo/bar')
557
- end
558
-
559
- it "should accept triple slashes" do
560
- expect(Puppet::Util.uri_to_path(URI.parse('file:///foo/bar'))).to eq('/foo/bar')
561
- end
562
- end
563
-
564
- describe "when using platform :windows", :if => Puppet::Util::Platform.windows? do
565
- it "should accept root" do
566
- expect(Puppet::Util.uri_to_path(URI.parse('file:/C:/'))).to eq('C:/')
567
- end
568
-
569
- it "should accept single slash" do
570
- expect(Puppet::Util.uri_to_path(URI.parse('file:/C:/foo/bar'))).to eq('C:/foo/bar')
571
- end
572
-
573
- it "should accept triple slashes" do
574
- expect(Puppet::Util.uri_to_path(URI.parse('file:///C:/foo/bar'))).to eq('C:/foo/bar')
575
- end
576
-
577
- it "should accept file scheme with double slashes as a UNC path" do
578
- expect(Puppet::Util.uri_to_path(URI.parse('file://host/share/file'))).to eq('//host/share/file')
579
- end
580
- end
581
- end
582
-
583
- describe "safe_posix_fork on Windows and JRuby", if: Puppet::Util::Platform.windows? || Puppet::Util::Platform.jruby? do
584
- it "raises not implemented error" do
585
- expect {
586
- Puppet::Util.safe_posix_fork
587
- }.to raise_error(NotImplementedError, /fork/)
588
- end
589
- end
590
-
591
- describe "safe_posix_fork", unless: Puppet::Util::Platform.windows? || Puppet::Util::Platform.jruby? do
592
- let(:pid) { 5501 }
593
-
594
- before :each do
595
- # Most of the things this method does are bad to do during specs. :/
596
- allow(Kernel).to receive(:fork).and_return(pid).and_yield
597
-
598
- allow($stdin).to receive(:reopen)
599
- allow($stdout).to receive(:reopen)
600
- allow($stderr).to receive(:reopen)
601
-
602
- # ensure that we don't really close anything!
603
- allow(IO).to receive(:new)
604
- end
605
-
606
- it "should close all open file descriptors except stdin/stdout/stderr when /proc/self/fd exists" do
607
- # This is ugly, but I can't really think of a better way to do it without
608
- # letting it actually close fds, which seems risky
609
- fds = [".", "..","0","1","2","3","5","100","1000"]
610
- fds.each do |fd|
611
- if fd == '.' || fd == '..'
612
- next
613
- elsif ['0', '1', '2'].include? fd
614
- expect(IO).not_to receive(:new).with(fd.to_i)
615
- else
616
- expect(IO).to receive(:new).with(fd.to_i).and_return(double('io', close: nil))
617
- end
618
- end
619
-
620
- dir_expectation = receive(:foreach).with('/proc/self/fd')
621
- fds.each do |fd|
622
- dir_expectation = dir_expectation.and_yield(fd)
623
- end
624
- allow(Dir).to dir_expectation
625
- Puppet::Util.safe_posix_fork
626
- end
627
-
628
- it "should close all open file descriptors except stdin/stdout/stderr when /proc/self/fd doesn't exist" do
629
- # This is ugly, but I can't really think of a better way to do it without
630
- # letting it actually close fds, which seems risky
631
- (0..2).each {|n| expect(IO).not_to receive(:new).with(n)}
632
- (3..256).each {|n| expect(IO).to receive(:new).with(n).and_return(double('io', close: nil)) }
633
- allow(Dir).to receive(:foreach).with('/proc/self/fd').and_raise(Errno::ENOENT)
634
-
635
- Puppet::Util.safe_posix_fork
636
- end
637
-
638
- it "should close all open file descriptors except stdin/stdout/stderr when /proc/self is not a directory" do
639
- # This is ugly, but I can't really think of a better way to do it without
640
- # letting it actually close fds, which seems risky
641
- (0..2).each {|n| expect(IO).not_to receive(:new).with(n)}
642
- (3..256).each {|n| expect(IO).to receive(:new).with(n).and_return(double('io', close: nil)) }
643
- allow(Dir).to receive(:foreach).with('/proc/self/fd').and_raise(Errno::ENOTDIR)
644
-
645
- Puppet::Util.safe_posix_fork
646
- end
647
-
648
- it "should fork a child process to execute the block" do
649
- expect(Kernel).to receive(:fork).and_return(pid).and_yield
650
-
651
- Puppet::Util.safe_posix_fork do
652
- "Fork this!"
653
- end
654
- end
655
-
656
- it "should return the pid of the child process" do
657
- expect(Puppet::Util.safe_posix_fork).to eq(pid)
658
- end
659
- end
660
-
661
- describe "#which" do
662
- let(:base) { File.expand_path('/bin') }
663
- let(:path) { File.join(base, 'foo') }
664
-
665
- before :each do
666
- allow(FileTest).to receive(:file?).and_return(false)
667
- allow(FileTest).to receive(:file?).with(path).and_return(true)
668
-
669
- allow(FileTest).to receive(:executable?).and_return(false)
670
- allow(FileTest).to receive(:executable?).with(path).and_return(true)
671
- end
672
-
673
- it "should accept absolute paths" do
674
- expect(Puppet::Util.which(path)).to eq(path)
675
- end
676
-
677
- it "should return nil if no executable found" do
678
- expect(Puppet::Util.which('doesnotexist')).to be_nil
679
- end
680
-
681
- it "should reject directories" do
682
- expect(Puppet::Util.which(base)).to be_nil
683
- end
684
-
685
- it "should ignore ~user directories if the user doesn't exist" do
686
- # Windows treats *any* user as a "user that doesn't exist", which means
687
- # that this will work correctly across all our platforms, and should
688
- # behave consistently. If they ever implement it correctly (eg: to do
689
- # the lookup for real) it should just work transparently.
690
- baduser = 'if_this_user_exists_I_will_eat_my_hat'
691
- Puppet::Util.withenv("PATH" => "~#{baduser}#{File::PATH_SEPARATOR}#{base}") do
692
- expect(Puppet::Util.which('foo')).to eq(path)
693
- end
694
- end
695
-
696
- describe "on POSIX systems" do
697
- before :each do
698
- allow(Puppet.features).to receive(:posix?).and_return(true)
699
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(false)
700
- end
701
-
702
- it "should walk the search PATH returning the first executable" do
703
- allow(Puppet::Util).to receive(:get_env).with('PATH').and_return(File.expand_path('/bin'))
704
- allow(Puppet::Util).to receive(:get_env).with('PATHEXT').and_return(nil)
705
-
706
- expect(Puppet::Util.which('foo')).to eq(path)
707
- end
708
- end
709
-
710
- describe "on Windows systems" do
711
- let(:path) { File.expand_path(File.join(base, 'foo.CMD')) }
712
-
713
- before :each do
714
- allow(Puppet.features).to receive(:posix?).and_return(false)
715
- allow(Puppet::Util::Platform).to receive(:windows?).and_return(true)
716
- end
717
-
718
- describe "when a file extension is specified" do
719
- it "should walk each directory in PATH ignoring PATHEXT" do
720
- allow(Puppet::Util).to receive(:get_env).with('PATH').and_return(%w[/bar /bin].map{|dir| File.expand_path(dir)}.join(File::PATH_SEPARATOR))
721
- allow(Puppet::Util).to receive(:get_env).with('PATHEXT').and_return('.FOOBAR')
722
-
723
- expect(FileTest).to receive(:file?).with(File.join(File.expand_path('/bar'), 'foo.CMD')).and_return(false)
724
-
725
- expect(Puppet::Util.which('foo.CMD')).to eq(path)
726
- end
727
- end
728
-
729
- describe "when a file extension is not specified" do
730
- it "should walk each extension in PATHEXT until an executable is found" do
731
- bar = File.expand_path('/bar')
732
- allow(Puppet::Util).to receive(:get_env).with('PATH').and_return("#{bar}#{File::PATH_SEPARATOR}#{base}")
733
- allow(Puppet::Util).to receive(:get_env).with('PATHEXT').and_return(".EXE#{File::PATH_SEPARATOR}.CMD")
734
-
735
- expect(FileTest).to receive(:file?).ordered().with(File.join(bar, 'foo.EXE')).and_return(false)
736
- expect(FileTest).to receive(:file?).ordered().with(File.join(bar, 'foo.CMD')).and_return(false)
737
- expect(FileTest).to receive(:file?).ordered().with(File.join(base, 'foo.EXE')).and_return(false)
738
- expect(FileTest).to receive(:file?).ordered().with(path).and_return(true)
739
-
740
- expect(Puppet::Util.which('foo')).to eq(path)
741
- end
742
-
743
- it "should walk the default extension path if the environment variable is not defined" do
744
- allow(Puppet::Util).to receive(:get_env).with('PATH').and_return(base)
745
- allow(Puppet::Util).to receive(:get_env).with('PATHEXT').and_return(nil)
746
-
747
- %w[.COM .EXE .BAT].each do |ext|
748
- expect(FileTest).to receive(:file?).ordered().with(File.join(base, "foo#{ext}")).and_return(false)
749
- end
750
- expect(FileTest).to receive(:file?).ordered().with(path).and_return(true)
751
-
752
- expect(Puppet::Util.which('foo')).to eq(path)
753
- end
754
-
755
- it "should fall back if no extension matches" do
756
- allow(Puppet::Util).to receive(:get_env).with('PATH').and_return(base)
757
- allow(Puppet::Util).to receive(:get_env).with('PATHEXT').and_return(".EXE")
758
-
759
- allow(FileTest).to receive(:file?).with(File.join(base, 'foo.EXE')).and_return(false)
760
- allow(FileTest).to receive(:file?).with(File.join(base, 'foo')).and_return(true)
761
- allow(FileTest).to receive(:executable?).with(File.join(base, 'foo')).and_return(true)
762
-
763
- expect(Puppet::Util.which('foo')).to eq(File.join(base, 'foo'))
764
- end
765
- end
766
- end
767
- end
768
-
769
- describe "hash symbolizing functions" do
770
- let (:myhash) { { "foo" => "bar", :baz => "bam" } }
771
- let (:resulthash) { { :foo => "bar", :baz => "bam" } }
772
-
773
- describe "#symbolizehash" do
774
- it "should return a symbolized hash" do
775
- newhash = Puppet::Util.symbolizehash(myhash)
776
- expect(newhash).to eq(resulthash)
777
- end
778
- end
779
- end
780
-
781
- context "#replace_file" do
782
- subject { Puppet::Util }
783
-
784
- it { is_expected.to respond_to :replace_file }
785
-
786
- let :target do
787
- target = Tempfile.new("puppet-util-replace-file")
788
- target.puts("hello, world")
789
- target.flush # make sure content is on disk.
790
- target.fsync rescue nil
791
- target.close
792
- target
793
- end
794
-
795
- it "should fail if no block is given" do
796
- expect { subject.replace_file(target.path, 0600) }.to raise_error(/block/)
797
- end
798
-
799
- it "should replace a file when invoked" do
800
- # Check that our file has the expected content.
801
- expect(File.read(target.path)).to eq("hello, world\n")
802
-
803
- # Replace the file.
804
- subject.replace_file(target.path, 0600) do |fh|
805
- fh.puts "I am the passenger..."
806
- end
807
-
808
- # ...and check the replacement was complete.
809
- expect(File.read(target.path)).to eq("I am the passenger...\n")
810
- end
811
-
812
- # When running with the same user and group sid, which is the default,
813
- # Windows collapses the owner and group modes into a single ACE, resulting
814
- # in set(0600) => get(0660) and so forth. --daniel 2012-03-30
815
- modes = [0555, 0660, 0770]
816
- modes += [0600, 0700] unless Puppet::Util::Platform.windows?
817
- modes.each do |mode|
818
- it "should copy 0#{mode.to_s(8)} permissions from the target file by default" do
819
- set_mode(mode, target.path)
820
-
821
- expect(get_mode(target.path)).to eq(mode)
822
-
823
- subject.replace_file(target.path, 0000) {|fh| fh.puts "bazam" }
824
-
825
- expect(get_mode(target.path)).to eq(mode)
826
- expect(File.read(target.path)).to eq("bazam\n")
827
- end
828
- end
829
-
830
- it "should copy the permissions of the source file after yielding on Unix", :if => !Puppet::Util::Platform.windows? do
831
- set_mode(0555, target.path)
832
- inode = Puppet::FileSystem.stat(target.path).ino
833
-
834
- yielded = false
835
- subject.replace_file(target.path, 0660) do |fh|
836
- expect(get_mode(fh.path)).to eq(0600)
837
- yielded = true
838
- end
839
- expect(yielded).to be_truthy
840
-
841
- expect(Puppet::FileSystem.stat(target.path).ino).not_to eq(inode)
842
- expect(get_mode(target.path)).to eq(0555)
843
- end
844
-
845
- it "should be able to create a new file with read-only permissions when it doesn't already exist" do
846
- temp_file = Tempfile.new('puppet-util-replace-file')
847
- temp_path = temp_file.path
848
- temp_file.close
849
- temp_file.unlink
850
-
851
- subject.replace_file(temp_path, 0440) do |fh|
852
- fh.puts('some text in there')
853
- end
854
-
855
- expect(File.read(temp_path)).to eq("some text in there\n")
856
- expect(get_mode(temp_path)).to eq(0440)
857
- end
858
-
859
- it "should use the default permissions if the source file doesn't exist" do
860
- new_target = target.path + '.foo'
861
- expect(Puppet::FileSystem.exist?(new_target)).to be_falsey
862
-
863
- begin
864
- subject.replace_file(new_target, 0555) {|fh| fh.puts "foo" }
865
- expect(get_mode(new_target)).to eq(0555)
866
- ensure
867
- Puppet::FileSystem.unlink(new_target) if Puppet::FileSystem.exist?(new_target)
868
- end
869
- end
870
-
871
- it "should use a temporary staging location if provided" do
872
- new_target = File.join(tmpdir('new_file'), 'new_file.baz')
873
- staging_target = tmpdir('staging_file')
874
-
875
- subject.replace_file(new_target, 0555, staging_location: staging_target) do |fh|
876
- expect(File.dirname(fh.path)).to eq(staging_target)
877
- fh.puts "foo"
878
- end
879
- end
880
-
881
- it "should not replace the file if an exception is thrown in the block" do
882
- yielded = false
883
- threw = false
884
-
885
- begin
886
- subject.replace_file(target.path, 0600) do |fh|
887
- yielded = true
888
- fh.puts "different content written, then..."
889
- raise "...throw some random failure"
890
- end
891
- rescue Exception => e
892
- if e.to_s =~ /some random failure/
893
- threw = true
894
- else
895
- raise
896
- end
897
- end
898
-
899
- expect(yielded).to be_truthy
900
- expect(threw).to be_truthy
901
-
902
- # ...and check the replacement was complete.
903
- expect(File.read(target.path)).to eq("hello, world\n")
904
- end
905
-
906
- {:string => '664', :number => 0664, :symbolic => "ug=rw-,o=r--" }.each do |label,mode|
907
- it "should support #{label} format permissions" do
908
- new_target = target.path + "#{mode}.foo"
909
- expect(Puppet::FileSystem.exist?(new_target)).to be_falsey
910
-
911
- begin
912
- subject.replace_file(new_target, mode) {|fh| fh.puts "this is an interesting content" }
913
-
914
- expect(get_mode(new_target)).to eq(0664)
915
- ensure
916
- Puppet::FileSystem.unlink(new_target) if Puppet::FileSystem.exist?(new_target)
917
- end
918
- end
919
- end
920
-
921
- end
922
-
923
- describe "#pretty_backtrace" do
924
- it "should include lines that don't match the standard backtrace pattern" do
925
- line = "non-standard line\n"
926
- trace = caller[0..2] + [line] + caller[3..-1]
927
- expect(Puppet::Util.pretty_backtrace(trace)).to match(/#{line}/)
928
- end
929
-
930
- it "should include function names" do
931
- expect(Puppet::Util.pretty_backtrace).to match(/:in `\w+'/)
932
- end
933
-
934
- it "should work with Windows paths" do
935
- expect(Puppet::Util.pretty_backtrace(["C:/work/puppet/c.rb:12:in `foo'\n"])).
936
- to eq("C:/work/puppet/c.rb:12:in `foo'")
937
- end
938
- end
939
-
940
- describe "#deterministic_rand" do
941
- it "should not fiddle with future rand calls" do
942
- Puppet::Util.deterministic_rand(123,20)
943
- rand_one = rand()
944
- Puppet::Util.deterministic_rand(123,20)
945
- expect(rand()).not_to eql(rand_one)
946
- end
947
-
948
- it "should not fiddle with the global seed" do
949
- srand(1234)
950
- Puppet::Util.deterministic_rand(123,20)
951
- expect(srand()).to eql(1234)
952
- end
953
- end
954
- end