puppet 7.28.0-universal-darwin → 7.29.1-universal-darwin

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1258) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +51 -55
  3. data/ext/project_data.yaml +4 -4
  4. data/lib/puppet/pops/evaluator/literal_evaluator.rb +16 -3
  5. data/lib/puppet/pops/issues.rb +4 -0
  6. data/lib/puppet/pops/validation/checker4_0.rb +13 -0
  7. data/lib/puppet/pops/validation/validator_factory_4_0.rb +2 -0
  8. data/lib/puppet/util/windows/registry.rb +39 -4
  9. data/lib/puppet/version.rb +1 -1
  10. data/man/man5/puppet.conf.5 +2 -2
  11. data/man/man8/puppet-agent.8 +1 -1
  12. data/man/man8/puppet-apply.8 +1 -1
  13. data/man/man8/puppet-catalog.8 +1 -1
  14. data/man/man8/puppet-config.8 +1 -1
  15. data/man/man8/puppet-describe.8 +1 -1
  16. data/man/man8/puppet-device.8 +1 -1
  17. data/man/man8/puppet-doc.8 +1 -1
  18. data/man/man8/puppet-epp.8 +1 -1
  19. data/man/man8/puppet-facts.8 +1 -1
  20. data/man/man8/puppet-filebucket.8 +1 -1
  21. data/man/man8/puppet-generate.8 +1 -1
  22. data/man/man8/puppet-help.8 +1 -1
  23. data/man/man8/puppet-lookup.8 +1 -1
  24. data/man/man8/puppet-module.8 +1 -1
  25. data/man/man8/puppet-node.8 +1 -1
  26. data/man/man8/puppet-parser.8 +1 -1
  27. data/man/man8/puppet-plugin.8 +1 -1
  28. data/man/man8/puppet-report.8 +1 -1
  29. data/man/man8/puppet-resource.8 +1 -1
  30. data/man/man8/puppet-script.8 +1 -1
  31. data/man/man8/puppet-ssl.8 +1 -1
  32. data/man/man8/puppet.8 +2 -2
  33. metadata +3 -2453
  34. data/spec/fixtures/faulty_face/puppet/face/syntax.rb +0 -8
  35. data/spec/fixtures/hiera.yaml +0 -9
  36. data/spec/fixtures/integration/application/agent/cached_deferred_catalog.json +0 -92
  37. data/spec/fixtures/integration/application/agent/lib/facter/agent_spec_role.rb +0 -3
  38. data/spec/fixtures/integration/application/apply/environments/spec/modules/amod/lib/puppet/provider/applytest/applytest.rb +0 -2
  39. data/spec/fixtures/integration/application/apply/environments/spec/modules/amod/lib/puppet/type/applytest.rb +0 -25
  40. data/spec/fixtures/integration/application/module/environments/direnv/modules/nginx/README +0 -3
  41. data/spec/fixtures/integration/application/module/environments/direnv/modules/nginx/manifests/init.pp +0 -17
  42. data/spec/fixtures/integration/application/module/environments/direnv/modules/nginx/metadata.json +0 -20
  43. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Gemfile +0 -4
  44. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/Rakefile +0 -3
  45. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/lib/puppet/functions/l10n.rb +0 -8
  46. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/config.yaml +0 -25
  47. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/ja/puppet-l10n.po +0 -19
  48. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/locales/puppet-l10n.pot +0 -20
  49. data/spec/fixtures/integration/l10n/envs/prod/modules/demo/metadata.json +0 -8
  50. data/spec/fixtures/integration/node/environment/sitedir/00_a.pp +0 -2
  51. data/spec/fixtures/integration/node/environment/sitedir/01_b.pp +0 -6
  52. data/spec/fixtures/integration/node/environment/sitedir/03_empty.pp +0 -0
  53. data/spec/fixtures/integration/node/environment/sitedir/04_include.pp +0 -2
  54. data/spec/fixtures/integration/node/environment/sitedir2/00_a.pp +0 -2
  55. data/spec/fixtures/integration/node/environment/sitedir2/02_folder/01_b.pp +0 -6
  56. data/spec/fixtures/integration/node/environment/sitedir2/03_c.pp +0 -1
  57. data/spec/fixtures/integration/node/environment/sitedir2/04_include.pp +0 -2
  58. data/spec/fixtures/java.tgz +0 -0
  59. data/spec/fixtures/manifests/site.pp +0 -0
  60. data/spec/fixtures/module.tar.gz +0 -0
  61. data/spec/fixtures/releases/jamtur01-apache/Modulefile +0 -2
  62. data/spec/fixtures/releases/jamtur01-apache/files/httpd +0 -24
  63. data/spec/fixtures/releases/jamtur01-apache/files/test.vhost +0 -18
  64. data/spec/fixtures/releases/jamtur01-apache/lib/puppet/provider/a2mod/debian.rb +0 -21
  65. data/spec/fixtures/releases/jamtur01-apache/lib/puppet/type/a2mod.rb +0 -12
  66. data/spec/fixtures/releases/jamtur01-apache/manifests/dev.pp +0 -5
  67. data/spec/fixtures/releases/jamtur01-apache/manifests/init.pp +0 -34
  68. data/spec/fixtures/releases/jamtur01-apache/manifests/params.pp +0 -17
  69. data/spec/fixtures/releases/jamtur01-apache/manifests/php.pp +0 -5
  70. data/spec/fixtures/releases/jamtur01-apache/manifests/ssl.pp +0 -15
  71. data/spec/fixtures/releases/jamtur01-apache/manifests/vhost.pp +0 -15
  72. data/spec/fixtures/releases/jamtur01-apache/metadata.json +0 -1
  73. data/spec/fixtures/releases/jamtur01-apache/templates/vhost-default.conf.erb +0 -20
  74. data/spec/fixtures/releases/jamtur01-apache/tests/apache.pp +0 -1
  75. data/spec/fixtures/releases/jamtur01-apache/tests/dev.pp +0 -1
  76. data/spec/fixtures/releases/jamtur01-apache/tests/init.pp +0 -1
  77. data/spec/fixtures/releases/jamtur01-apache/tests/php.pp +0 -1
  78. data/spec/fixtures/releases/jamtur01-apache/tests/ssl.pp +0 -1
  79. data/spec/fixtures/releases/jamtur01-apache/tests/vhost.pp +0 -2
  80. data/spec/fixtures/ssl/127.0.0.1-key.pem +0 -117
  81. data/spec/fixtures/ssl/127.0.0.1.pem +0 -69
  82. data/spec/fixtures/ssl/bad-basic-constraints.pem +0 -81
  83. data/spec/fixtures/ssl/bad-int-basic-constraints.pem +0 -81
  84. data/spec/fixtures/ssl/ca.pem +0 -81
  85. data/spec/fixtures/ssl/crl.pem +0 -40
  86. data/spec/fixtures/ssl/ec-key-openssl.pem +0 -8
  87. data/spec/fixtures/ssl/ec-key-pk8.pem +0 -5
  88. data/spec/fixtures/ssl/ec-key.pem +0 -18
  89. data/spec/fixtures/ssl/ec.pem +0 -49
  90. data/spec/fixtures/ssl/encrypted-ec-key.pem +0 -21
  91. data/spec/fixtures/ssl/encrypted-key.pem +0 -120
  92. data/spec/fixtures/ssl/intermediate-agent-crl.pem +0 -40
  93. data/spec/fixtures/ssl/intermediate-agent.pem +0 -81
  94. data/spec/fixtures/ssl/intermediate-crl.pem +0 -46
  95. data/spec/fixtures/ssl/intermediate.pem +0 -81
  96. data/spec/fixtures/ssl/netlock-arany-utf8.pem +0 -23
  97. data/spec/fixtures/ssl/oid-key.pem +0 -117
  98. data/spec/fixtures/ssl/oid.pem +0 -69
  99. data/spec/fixtures/ssl/pluto-key.pem +0 -117
  100. data/spec/fixtures/ssl/pluto.pem +0 -66
  101. data/spec/fixtures/ssl/request-key.pem +0 -117
  102. data/spec/fixtures/ssl/request.pem +0 -60
  103. data/spec/fixtures/ssl/revoked-key.pem +0 -117
  104. data/spec/fixtures/ssl/revoked.pem +0 -66
  105. data/spec/fixtures/ssl/signed-key.pem +0 -117
  106. data/spec/fixtures/ssl/signed.pem +0 -66
  107. data/spec/fixtures/ssl/tampered-cert.pem +0 -66
  108. data/spec/fixtures/ssl/tampered-csr.pem +0 -60
  109. data/spec/fixtures/ssl/trusted_oid_mapping.yaml +0 -5
  110. data/spec/fixtures/ssl/unknown-127.0.0.1-key.pem +0 -117
  111. data/spec/fixtures/ssl/unknown-127.0.0.1.pem +0 -69
  112. data/spec/fixtures/ssl/unknown-ca-key.pem +0 -117
  113. data/spec/fixtures/ssl/unknown-ca.pem +0 -81
  114. data/spec/fixtures/stdlib.tgz +0 -0
  115. data/spec/fixtures/unit/application/environments/production/data/common.yaml +0 -24
  116. data/spec/fixtures/unit/application/environments/production/environment.conf +0 -1
  117. data/spec/fixtures/unit/application/environments/production/manifests/site.pp +0 -1
  118. data/spec/fixtures/unit/application/environments/puppet_func_provider/environment.conf +0 -1
  119. data/spec/fixtures/unit/application/environments/puppet_func_provider/functions/environment/data.pp +0 -10
  120. data/spec/fixtures/unit/application/environments/puppet_func_provider/manifests/site.pp +0 -1
  121. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/data/bad.json +0 -3
  122. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/environment.conf +0 -2
  123. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/hiera.yaml +0 -5
  124. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_json/manifests/site.pp +0 -5
  125. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/data/bad.yaml +0 -3
  126. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/environment.conf +0 -2
  127. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/hiera.yaml +0 -5
  128. data/spec/fixtures/unit/data_providers/environments/hiera_bad_syntax_yaml/manifests/site.pp +0 -5
  129. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/data/common.yaml +0 -2
  130. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/environment.conf +0 -2
  131. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/manifests/site.pp +0 -1
  132. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/data/common.yaml +0 -2
  133. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/manifests/init.pp +0 -5
  134. data/spec/fixtures/unit/data_providers/environments/hiera_defaults/modules/one/metadata.json +0 -9
  135. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/first.json +0 -3
  136. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/name.yaml +0 -2
  137. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/second.json +0 -3
  138. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/single.yaml +0 -2
  139. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/third_utf8.json +0 -3
  140. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data1/utf8.yaml +0 -3
  141. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/data2/single.yaml +0 -2
  142. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/environment.conf +0 -2
  143. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/hiera.yaml +0 -22
  144. data/spec/fixtures/unit/data_providers/environments/hiera_env_config/manifests/site.pp +0 -5
  145. data/spec/fixtures/unit/data_providers/environments/hiera_misc/data/common.yaml +0 -48
  146. data/spec/fixtures/unit/data_providers/environments/hiera_misc/environment.conf +0 -2
  147. data/spec/fixtures/unit/data_providers/environments/hiera_misc/manifests/site.pp +0 -1
  148. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/data/common.yaml +0 -30
  149. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/manifests/init.pp +0 -13
  150. data/spec/fixtures/unit/data_providers/environments/hiera_misc/modules/one/metadata.json +0 -9
  151. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/data/common.yaml +0 -4
  152. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/data/specific.yaml +0 -4
  153. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/environment.conf +0 -2
  154. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/hiera.yaml +0 -7
  155. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/manifests/site.pp +0 -1
  156. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/first.json +0 -3
  157. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/name.yaml +0 -2
  158. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/second.json +0 -3
  159. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/server1.yaml +0 -1
  160. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/server2.yaml +0 -1
  161. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data1/single.yaml +0 -2
  162. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/data2/single.yaml +0 -2
  163. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/hiera.yaml +0 -20
  164. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/manifests/init.pp +0 -5
  165. data/spec/fixtures/unit/data_providers/environments/hiera_module_config/modules/one/metadata.json +0 -9
  166. data/spec/fixtures/unit/data_providers/environments/hiera_modules/data/common.yaml +0 -4
  167. data/spec/fixtures/unit/data_providers/environments/hiera_modules/data/specific.yaml +0 -4
  168. data/spec/fixtures/unit/data_providers/environments/hiera_modules/environment.conf +0 -2
  169. data/spec/fixtures/unit/data_providers/environments/hiera_modules/hiera.yaml +0 -7
  170. data/spec/fixtures/unit/data_providers/environments/hiera_modules/manifests/site.pp +0 -1
  171. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/data/common.yaml +0 -6
  172. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/hiera.yaml +0 -5
  173. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/manifests/init.pp +0 -2
  174. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/one/metadata.json +0 -9
  175. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/data/common.yaml +0 -4
  176. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/hiera.yaml +0 -5
  177. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/manifests/init.pp +0 -3
  178. data/spec/fixtures/unit/data_providers/environments/hiera_modules/modules/two/metadata.json +0 -9
  179. data/spec/fixtures/unit/data_providers/environments/production/environment.conf +0 -2
  180. data/spec/fixtures/unit/data_providers/environments/production/lib/puppet/functions/environment/data.rb +0 -9
  181. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/lib/puppet/functions/abc/data.rb +0 -9
  182. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/manifests/init.pp +0 -10
  183. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/metadata.json +0 -9
  184. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/functions/data.pp +0 -6
  185. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/manifests/init.pp +0 -9
  186. data/spec/fixtures/unit/data_providers/environments/production/modules/xyz/metadata.json +0 -9
  187. data/spec/fixtures/unit/forge/bacula-releases.json +0 -128
  188. data/spec/fixtures/unit/forge/bacula.json +0 -76
  189. data/spec/fixtures/unit/forge/bacula.tar.gz +0 -0
  190. data/spec/fixtures/unit/functions/hiera/hiera/backend/hieraspec_backend.rb +0 -22
  191. data/spec/fixtures/unit/functions/lookup/data/common.yaml +0 -19
  192. data/spec/fixtures/unit/functions/lookup/hiera/backend/custom_backend.rb +0 -18
  193. data/spec/fixtures/unit/functions/lookup/hiera/backend/other_backend.rb +0 -7
  194. data/spec/fixtures/unit/functions/lookup_fixture/data/common.yaml +0 -19
  195. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/environment.conf +0 -2
  196. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/lib/puppet/functions/environment/data.rb +0 -13
  197. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/abc/lib/puppet/functions/abc/data.rb +0 -9
  198. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/abc/manifests/init.pp +0 -8
  199. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/abc/metadata.json +0 -9
  200. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bad_data/lib/puppet/functions/bad_data/data.rb +0 -7
  201. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bad_data/manifests/init.pp +0 -2
  202. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bad_data/metadata.json +0 -9
  203. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bca/lib/puppet/functions/bca/data.rb +0 -9
  204. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bca/manifests/init.pp +0 -2
  205. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/bca/metadata.json +0 -9
  206. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/data/empty.json +0 -0
  207. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/hiera.yaml +0 -5
  208. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/manifests/init.pp +0 -2
  209. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_json/metadata.json +0 -9
  210. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/data/empty_key.json +0 -1
  211. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/hiera.yaml +0 -5
  212. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/manifests/init.pp +0 -2
  213. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_json/metadata.json +0 -9
  214. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/data/empty_key.yaml +0 -1
  215. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/hiera.yaml +0 -5
  216. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/manifests/init.pp +0 -2
  217. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_key_yaml/metadata.json +0 -9
  218. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/data/empty.yaml +0 -2
  219. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/hiera.yaml +0 -5
  220. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/manifests/init.pp +0 -2
  221. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/empty_yaml/metadata.json +0 -9
  222. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/data/first.json +0 -4
  223. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/hiera.yaml +0 -8
  224. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/manifests/init.pp +0 -5
  225. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/hieraprovider/metadata.json +0 -9
  226. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/lib/puppet/functions/meta/data.rb +0 -9
  227. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/manifests/init.pp +0 -3
  228. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/meta/metadata.json +0 -9
  229. data/spec/fixtures/unit/functions/lookup_fixture/environments/production/modules/no_provider/manifests/init.pp +0 -2
  230. data/spec/fixtures/unit/indirector/data_binding/hiera/global.yaml +0 -10
  231. data/spec/fixtures/unit/indirector/data_binding/hiera/invalid.yaml +0 -1
  232. data/spec/fixtures/unit/indirector/hiera/global.yaml +0 -10
  233. data/spec/fixtures/unit/indirector/hiera/invalid.yaml +0 -1
  234. data/spec/fixtures/unit/module/trailing-comma.json +0 -24
  235. data/spec/fixtures/unit/parser/functions/create_resources/foo/manifests/init.pp +0 -3
  236. data/spec/fixtures/unit/parser/functions/create_resources/foo/manifests/wrongdefine.pp +0 -3
  237. data/spec/fixtures/unit/parser/lexer/aliastest.pp +0 -16
  238. data/spec/fixtures/unit/parser/lexer/append.pp +0 -11
  239. data/spec/fixtures/unit/parser/lexer/argumentdefaults.pp +0 -14
  240. data/spec/fixtures/unit/parser/lexer/arithmetic_expression.pp +0 -8
  241. data/spec/fixtures/unit/parser/lexer/arraytrailingcomma.pp +0 -3
  242. data/spec/fixtures/unit/parser/lexer/casestatement.pp +0 -65
  243. data/spec/fixtures/unit/parser/lexer/classheirarchy.pp +0 -15
  244. data/spec/fixtures/unit/parser/lexer/classincludes.pp +0 -17
  245. data/spec/fixtures/unit/parser/lexer/classpathtest.pp +0 -11
  246. data/spec/fixtures/unit/parser/lexer/collection.pp +0 -10
  247. data/spec/fixtures/unit/parser/lexer/collection_override.pp +0 -8
  248. data/spec/fixtures/unit/parser/lexer/collection_within_virtual_definitions.pp +0 -20
  249. data/spec/fixtures/unit/parser/lexer/componentmetaparams.pp +0 -11
  250. data/spec/fixtures/unit/parser/lexer/componentrequire.pp +0 -8
  251. data/spec/fixtures/unit/parser/lexer/deepclassheirarchy.pp +0 -23
  252. data/spec/fixtures/unit/parser/lexer/defineoverrides.pp +0 -17
  253. data/spec/fixtures/unit/parser/lexer/emptyclass.pp +0 -9
  254. data/spec/fixtures/unit/parser/lexer/emptyexec.pp +0 -3
  255. data/spec/fixtures/unit/parser/lexer/emptyifelse.pp +0 -9
  256. data/spec/fixtures/unit/parser/lexer/falsevalues.pp +0 -3
  257. data/spec/fixtures/unit/parser/lexer/filecreate.pp +0 -11
  258. data/spec/fixtures/unit/parser/lexer/fqdefinition.pp +0 -5
  259. data/spec/fixtures/unit/parser/lexer/fqparents.pp +0 -11
  260. data/spec/fixtures/unit/parser/lexer/funccomma.pp +0 -5
  261. data/spec/fixtures/unit/parser/lexer/hash.pp +0 -33
  262. data/spec/fixtures/unit/parser/lexer/ifexpression.pp +0 -12
  263. data/spec/fixtures/unit/parser/lexer/implicititeration.pp +0 -15
  264. data/spec/fixtures/unit/parser/lexer/multilinecomments.pp +0 -10
  265. data/spec/fixtures/unit/parser/lexer/multipleclass.pp +0 -9
  266. data/spec/fixtures/unit/parser/lexer/multipleinstances.pp +0 -7
  267. data/spec/fixtures/unit/parser/lexer/multisubs.pp +0 -13
  268. data/spec/fixtures/unit/parser/lexer/namevartest.pp +0 -9
  269. data/spec/fixtures/unit/parser/lexer/scopetest.pp +0 -13
  270. data/spec/fixtures/unit/parser/lexer/selectorvalues.pp +0 -49
  271. data/spec/fixtures/unit/parser/lexer/simpledefaults.pp +0 -5
  272. data/spec/fixtures/unit/parser/lexer/simpleselector.pp +0 -38
  273. data/spec/fixtures/unit/parser/lexer/singleary.pp +0 -19
  274. data/spec/fixtures/unit/parser/lexer/singlequote.pp +0 -11
  275. data/spec/fixtures/unit/parser/lexer/singleselector.pp +0 -22
  276. data/spec/fixtures/unit/parser/lexer/subclass_name_duplication.pp +0 -11
  277. data/spec/fixtures/unit/parser/lexer/tag.pp +0 -9
  278. data/spec/fixtures/unit/parser/lexer/tagged.pp +0 -35
  279. data/spec/fixtures/unit/parser/lexer/virtualresources.pp +0 -14
  280. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/binder_config.yaml +0 -10
  281. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/lib/puppet/bindings/confdirtest.rb +0 -10
  282. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/awesome2/lib/puppet/bindings/awesome2/default.rb +0 -20
  283. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/awesome2/lib/puppet_x/awesome2/echo_scheme_handler.rb +0 -18
  284. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/bad/lib/puppet/bindings/bad/default.rb +0 -5
  285. data/spec/fixtures/unit/pops/binder/bindings_composer/ok/modules/good/lib/puppet/bindings/good/default.rb +0 -6
  286. data/spec/fixtures/unit/pops/binder/config/binder_config/nolayer/binder_config.yaml +0 -6
  287. data/spec/fixtures/unit/pops/binder/config/binder_config/ok/binder_config.yaml +0 -9
  288. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/functions/usee_puppet.pp +0 -3
  289. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/functions/usee/callee.rb +0 -5
  290. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/functions/usee/usee_ruby.rb +0 -6
  291. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/type/usee_type.rb +0 -5
  292. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/manifests/init.pp +0 -8
  293. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/types/zero.pp +0 -1
  294. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee2/lib/puppet/functions/usee2/callee.rb +0 -5
  295. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_puppet.pp +0 -5
  296. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_puppet_init.pp +0 -5
  297. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_ruby.pp +0 -5
  298. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/caller.rb +0 -5
  299. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/caller2.rb +0 -5
  300. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_puppet.rb +0 -5
  301. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_puppet_init.rb +0 -5
  302. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/lib/puppet/functions/user/ruby_calling_ruby.rb +0 -5
  303. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/manifests/init.pp +0 -87
  304. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/metadata.json +0 -10
  305. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseeone.pp +0 -1
  306. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/types/withuseezero.pp +0 -1
  307. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load.rb +0 -11
  308. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load2.rb +0 -11
  309. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load3.rb +0 -11
  310. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load4.rb +0 -11
  311. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/bad_func_load5.rb +0 -12
  312. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/callee.rb +0 -8
  313. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/callee_ws.rb +0 -8
  314. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/func_with_syntax_error.rb +0 -9
  315. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/lib/puppet/parser/functions/good_func_load.rb +0 -9
  316. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/usee/metadata.json +0 -9
  317. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcalled.pp +0 -3
  318. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcaller.pp +0 -3
  319. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/functions/puppetcaller4.pp +0 -3
  320. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/lib/puppet/functions/user/caller.rb +0 -5
  321. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/lib/puppet/functions/user/caller_ws.rb +0 -12
  322. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/lib/puppet/functions/user/callingpuppet.rb +0 -5
  323. data/spec/fixtures/unit/pops/loaders/loaders/mix_4x_and_3x_functions/user/metadata.json +0 -9
  324. data/spec/fixtures/unit/pops/loaders/loaders/module_no_lib/modules/modulea/functions/hello.pp +0 -3
  325. data/spec/fixtures/unit/pops/loaders/loaders/module_no_lib/modules/modulea/manifests/init.pp +0 -3
  326. data/spec/fixtures/unit/pops/loaders/loaders/module_no_lib/modules/modulea/metadata.json +0 -10
  327. data/spec/fixtures/unit/pops/loaders/loaders/no_modules/manifests/site.pp +0 -10
  328. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/functions/hello.pp +0 -3
  329. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/functions/subspace/hello.pp +0 -3
  330. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/lib/puppet/functions/modulea/rb_func_a.rb +0 -5
  331. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/lib/puppet/functions/rb_func_a.rb +0 -5
  332. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/manifests/init.pp +0 -3
  333. data/spec/fixtures/unit/pops/loaders/loaders/single_module/modules/modulea/metadata.json +0 -10
  334. data/spec/fixtures/unit/pops/loaders/loaders/wo_metadata_module/modules/moduleb/lib/puppet/functions/moduleb/rb_func_b.rb +0 -6
  335. data/spec/fixtures/unit/pops/loaders/loaders/wo_metadata_module/modules/moduleb/manifests/init.pp +0 -3
  336. data/spec/fixtures/unit/pops/parser/lexer/aliastest.pp +0 -16
  337. data/spec/fixtures/unit/pops/parser/lexer/append.pp +0 -11
  338. data/spec/fixtures/unit/pops/parser/lexer/argumentdefaults.pp +0 -14
  339. data/spec/fixtures/unit/pops/parser/lexer/arithmetic_expression.pp +0 -8
  340. data/spec/fixtures/unit/pops/parser/lexer/arraytrailingcomma.pp +0 -3
  341. data/spec/fixtures/unit/pops/parser/lexer/casestatement.pp +0 -65
  342. data/spec/fixtures/unit/pops/parser/lexer/classheirarchy.pp +0 -15
  343. data/spec/fixtures/unit/pops/parser/lexer/classincludes.pp +0 -17
  344. data/spec/fixtures/unit/pops/parser/lexer/classpathtest.pp +0 -11
  345. data/spec/fixtures/unit/pops/parser/lexer/collection.pp +0 -10
  346. data/spec/fixtures/unit/pops/parser/lexer/collection_override.pp +0 -8
  347. data/spec/fixtures/unit/pops/parser/lexer/collection_within_virtual_definitions.pp +0 -20
  348. data/spec/fixtures/unit/pops/parser/lexer/componentmetaparams.pp +0 -11
  349. data/spec/fixtures/unit/pops/parser/lexer/componentrequire.pp +0 -8
  350. data/spec/fixtures/unit/pops/parser/lexer/deepclassheirarchy.pp +0 -23
  351. data/spec/fixtures/unit/pops/parser/lexer/defineoverrides.pp +0 -17
  352. data/spec/fixtures/unit/pops/parser/lexer/emptyclass.pp +0 -9
  353. data/spec/fixtures/unit/pops/parser/lexer/emptyexec.pp +0 -3
  354. data/spec/fixtures/unit/pops/parser/lexer/emptyifelse.pp +0 -9
  355. data/spec/fixtures/unit/pops/parser/lexer/falsevalues.pp +0 -3
  356. data/spec/fixtures/unit/pops/parser/lexer/filecreate.pp +0 -11
  357. data/spec/fixtures/unit/pops/parser/lexer/fqdefinition.pp +0 -5
  358. data/spec/fixtures/unit/pops/parser/lexer/fqparents.pp +0 -11
  359. data/spec/fixtures/unit/pops/parser/lexer/funccomma.pp +0 -5
  360. data/spec/fixtures/unit/pops/parser/lexer/hash.pp +0 -33
  361. data/spec/fixtures/unit/pops/parser/lexer/ifexpression.pp +0 -12
  362. data/spec/fixtures/unit/pops/parser/lexer/implicititeration.pp +0 -15
  363. data/spec/fixtures/unit/pops/parser/lexer/multilinecomments.pp +0 -10
  364. data/spec/fixtures/unit/pops/parser/lexer/multipleclass.pp +0 -9
  365. data/spec/fixtures/unit/pops/parser/lexer/multipleinstances.pp +0 -7
  366. data/spec/fixtures/unit/pops/parser/lexer/multisubs.pp +0 -13
  367. data/spec/fixtures/unit/pops/parser/lexer/namevartest.pp +0 -9
  368. data/spec/fixtures/unit/pops/parser/lexer/scopetest.pp +0 -13
  369. data/spec/fixtures/unit/pops/parser/lexer/selectorvalues.pp +0 -49
  370. data/spec/fixtures/unit/pops/parser/lexer/simpledefaults.pp +0 -5
  371. data/spec/fixtures/unit/pops/parser/lexer/simpleselector.pp +0 -38
  372. data/spec/fixtures/unit/pops/parser/lexer/singleary.pp +0 -19
  373. data/spec/fixtures/unit/pops/parser/lexer/singlequote.pp +0 -11
  374. data/spec/fixtures/unit/pops/parser/lexer/singleselector.pp +0 -22
  375. data/spec/fixtures/unit/pops/parser/lexer/subclass_name_duplication.pp +0 -11
  376. data/spec/fixtures/unit/pops/parser/lexer/tag.pp +0 -9
  377. data/spec/fixtures/unit/pops/parser/lexer/tagged.pp +0 -35
  378. data/spec/fixtures/unit/pops/parser/lexer/virtualresources.pp +0 -14
  379. data/spec/fixtures/unit/provider/aix_object/aix_colon_list_real_world_input.out +0 -1
  380. data/spec/fixtures/unit/provider/aix_object/aix_colon_list_real_world_output.out +0 -1
  381. data/spec/fixtures/unit/provider/cron/crontab/single_line.yaml +0 -272
  382. data/spec/fixtures/unit/provider/cron/crontab/vixie_header.txt +0 -3
  383. data/spec/fixtures/unit/provider/cron/parsed/managed +0 -6
  384. data/spec/fixtures/unit/provider/cron/parsed/simple +0 -9
  385. data/spec/fixtures/unit/provider/package/dnfmodule/dnf-module-list.txt +0 -19
  386. data/spec/fixtures/unit/provider/package/gem/gem-list-single-package +0 -4
  387. data/spec/fixtures/unit/provider/package/gem/line-with-1.8.5-warning +0 -14
  388. data/spec/fixtures/unit/provider/package/openbsd/pkginfo.detail +0 -19
  389. data/spec/fixtures/unit/provider/package/openbsd/pkginfo.list +0 -10
  390. data/spec/fixtures/unit/provider/package/openbsd/pkginfo.query +0 -1
  391. data/spec/fixtures/unit/provider/package/openbsd/pkginfo_flavors.list +0 -2
  392. data/spec/fixtures/unit/provider/package/pkg/dummy_implicit_version +0 -3
  393. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris10 +0 -1
  394. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.certificate_warning +0 -2
  395. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.ifo.installed +0 -1
  396. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.ifo.known +0 -1
  397. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.installed +0 -1
  398. data/spec/fixtures/unit/provider/package/pkg/dummy_solaris11.known +0 -1
  399. data/spec/fixtures/unit/provider/package/pkg/incomplete +0 -1
  400. data/spec/fixtures/unit/provider/package/pkg/solaris11 +0 -2
  401. data/spec/fixtures/unit/provider/package/pkg/unknown_status +0 -12
  402. data/spec/fixtures/unit/provider/package/pkgng/pkg.query +0 -7
  403. data/spec/fixtures/unit/provider/package/pkgng/pkg.query.zsh +0 -1
  404. data/spec/fixtures/unit/provider/package/pkgng/pkg.version +0 -5
  405. data/spec/fixtures/unit/provider/package/puppetserver_gem/gem-list-local-packages +0 -30
  406. data/spec/fixtures/unit/provider/package/sun/dummy.server +0 -12
  407. data/spec/fixtures/unit/provider/package/sun/simple +0 -24
  408. data/spec/fixtures/unit/provider/package/yum/yum-check-update-broken-notices.txt +0 -187
  409. data/spec/fixtures/unit/provider/package/yum/yum-check-update-multiline.txt +0 -201
  410. data/spec/fixtures/unit/provider/package/yum/yum-check-update-obsoletes.txt +0 -195
  411. data/spec/fixtures/unit/provider/package/yum/yum-check-update-plugin-output.txt +0 -36
  412. data/spec/fixtures/unit/provider/package/yum/yum-check-update-security.txt +0 -184
  413. data/spec/fixtures/unit/provider/package/yum/yum-check-update-simple.txt +0 -13
  414. data/spec/fixtures/unit/provider/package/yum/yum-check-update-subscription-manager.txt +0 -9
  415. data/spec/fixtures/unit/provider/package/zypper/zypper-list-updates-SLES11sp1.out +0 -369
  416. data/spec/fixtures/unit/provider/package/zypper/zypper-list-updates-empty.out +0 -3
  417. data/spec/fixtures/unit/provider/package/zypper/zypper-search-uninstalled.out +0 -13
  418. data/spec/fixtures/unit/provider/parsedfile/aliases.txt +0 -2
  419. data/spec/fixtures/unit/provider/parsedfile/simple.txt +0 -7
  420. data/spec/fixtures/unit/provider/service/base/ps_ef.mixed_encoding +0 -3
  421. data/spec/fixtures/unit/provider/service/gentoo/rc_update_show +0 -30
  422. data/spec/fixtures/unit/provider/service/openbsd/rcctl_getall +0 -6
  423. data/spec/fixtures/unit/provider/service/openrc/rcservice_list +0 -8
  424. data/spec/fixtures/unit/provider/service/openrc/rcstatus +0 -43
  425. data/spec/fixtures/unit/provider/service/smf/svcs_fmri.out +0 -6
  426. data/spec/fixtures/unit/provider/service/smf/svcs_instances.out +0 -4
  427. data/spec/fixtures/unit/provider/service/smf/svcs_multiple_fmris.out +0 -13
  428. data/spec/fixtures/unit/provider/service/systemd/list_unit_files_services +0 -16
  429. data/spec/fixtures/unit/provider/service/systemd/list_unit_files_services_vendor_preset +0 -9
  430. data/spec/fixtures/unit/provider/user/aix/aix_passwd_file.out +0 -36
  431. data/spec/fixtures/unit/reports/tagmail/tagmail_email.conf +0 -2
  432. data/spec/fixtures/unit/reports/tagmail/tagmail_failers.conf +0 -3
  433. data/spec/fixtures/unit/reports/tagmail/tagmail_passers.conf +0 -30
  434. data/spec/fixtures/unit/ssl/certificate/old-style-cert-exts.pem +0 -33
  435. data/spec/fixtures/unit/ssl/certificate_request/old-style-cert-request.pem +0 -28
  436. data/spec/fixtures/unit/type/user/authorized_keys +0 -6
  437. data/spec/fixtures/unit/util/filetype/aixtab_output +0 -44
  438. data/spec/fixtures/unit/util/filetype/suntab_output +0 -9
  439. data/spec/fixtures/unit/util/monkey_patches/x509.pem +0 -32
  440. data/spec/fixtures/unit/util/rdoc/basic.pp +0 -16
  441. 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
  442. 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
  443. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_md5/should_update_if_content_differs_on_disk.yml +0 -108
  444. 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
  445. data/spec/fixtures/vcr/cassettes/Puppet_Type_File/when_sourcing/from_http/using_mtime/should_fetch_if_no_header_specified.yml +0 -100
  446. 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
  447. 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
  448. data/spec/fixtures/yaml/report2.6.x.yaml +0 -190
  449. data/spec/fixtures/yaml/test.local.yaml +0 -16
  450. data/spec/integration/agent/logging_spec.rb +0 -179
  451. data/spec/integration/application/agent_spec.rb +0 -1012
  452. data/spec/integration/application/apply_spec.rb +0 -773
  453. data/spec/integration/application/doc_spec.rb +0 -24
  454. data/spec/integration/application/filebucket_spec.rb +0 -255
  455. data/spec/integration/application/help_spec.rb +0 -44
  456. data/spec/integration/application/lookup_spec.rb +0 -275
  457. data/spec/integration/application/module_spec.rb +0 -230
  458. data/spec/integration/application/plugin_spec.rb +0 -145
  459. data/spec/integration/application/resource_spec.rb +0 -68
  460. data/spec/integration/application/ssl_spec.rb +0 -20
  461. data/spec/integration/configurer_spec.rb +0 -164
  462. data/spec/integration/data_binding_spec.rb +0 -278
  463. data/spec/integration/defaults_spec.rb +0 -279
  464. data/spec/integration/directory_environments_spec.rb +0 -67
  465. data/spec/integration/environments/default_manifest_spec.rb +0 -215
  466. data/spec/integration/environments/setting_hooks_spec.rb +0 -27
  467. data/spec/integration/environments/settings_interpolation_spec.rb +0 -106
  468. data/spec/integration/environments/settings_spec.rb +0 -128
  469. data/spec/integration/http/client_spec.rb +0 -229
  470. data/spec/integration/indirector/catalog/compiler_spec.rb +0 -75
  471. data/spec/integration/indirector/direct_file_server_spec.rb +0 -90
  472. data/spec/integration/indirector/facts/facter_spec.rb +0 -168
  473. data/spec/integration/indirector/file_content/file_server_spec.rb +0 -106
  474. data/spec/integration/indirector/file_metadata/file_server_spec.rb +0 -75
  475. data/spec/integration/l10n/compiler_spec.rb +0 -37
  476. data/spec/integration/network/formats_spec.rb +0 -90
  477. data/spec/integration/network/http/api/indirected_routes_spec.rb +0 -60
  478. data/spec/integration/network/http_pool_spec.rb +0 -275
  479. data/spec/integration/node/environment_spec.rb +0 -170
  480. data/spec/integration/node/facts_spec.rb +0 -40
  481. data/spec/integration/node_spec.rb +0 -77
  482. data/spec/integration/parser/catalog_spec.rb +0 -68
  483. data/spec/integration/parser/class_spec.rb +0 -33
  484. data/spec/integration/parser/collection_spec.rb +0 -362
  485. data/spec/integration/parser/compiler_spec.rb +0 -1210
  486. data/spec/integration/parser/conditionals_spec.rb +0 -92
  487. data/spec/integration/parser/dynamic_scoping_spec.rb +0 -66
  488. data/spec/integration/parser/environment_spec.rb +0 -47
  489. data/spec/integration/parser/node_spec.rb +0 -163
  490. data/spec/integration/parser/parameter_defaults_spec.rb +0 -358
  491. data/spec/integration/parser/pcore_resource_spec.rb +0 -243
  492. data/spec/integration/parser/resource_expressions_spec.rb +0 -222
  493. data/spec/integration/parser/scope_spec.rb +0 -728
  494. data/spec/integration/parser/script_compiler_spec.rb +0 -113
  495. data/spec/integration/parser/undef_param_spec.rb +0 -95
  496. data/spec/integration/provider/file/windows_spec.rb +0 -162
  497. data/spec/integration/resource/catalog_spec.rb +0 -47
  498. data/spec/integration/resource/type_collection_spec.rb +0 -88
  499. data/spec/integration/transaction/report_spec.rb +0 -706
  500. data/spec/integration/transaction_spec.rb +0 -553
  501. data/spec/integration/type/exec_spec.rb +0 -114
  502. data/spec/integration/type/file_spec.rb +0 -2012
  503. data/spec/integration/type/notify_spec.rb +0 -46
  504. data/spec/integration/type/package_spec.rb +0 -200
  505. data/spec/integration/type/tidy_spec.rb +0 -45
  506. data/spec/integration/type_spec.rb +0 -30
  507. data/spec/integration/util/autoload_spec.rb +0 -104
  508. data/spec/integration/util/execution_spec.rb +0 -104
  509. data/spec/integration/util/rdoc/parser_spec.rb +0 -171
  510. data/spec/integration/util/settings_spec.rb +0 -115
  511. data/spec/integration/util/windows/adsi_spec.rb +0 -207
  512. data/spec/integration/util/windows/monkey_patches/process_spec.rb +0 -231
  513. data/spec/integration/util/windows/principal_spec.rb +0 -279
  514. data/spec/integration/util/windows/process_spec.rb +0 -96
  515. data/spec/integration/util/windows/registry_spec.rb +0 -334
  516. data/spec/integration/util/windows/security_spec.rb +0 -1010
  517. data/spec/integration/util/windows/user_spec.rb +0 -226
  518. data/spec/integration/util_spec.rb +0 -104
  519. data/spec/lib/matchers/containment_matchers.rb +0 -52
  520. data/spec/lib/matchers/include_in_order.rb +0 -20
  521. data/spec/lib/matchers/include_in_order_spec.rb +0 -30
  522. data/spec/lib/matchers/json.rb +0 -132
  523. data/spec/lib/matchers/match_tokens2.rb +0 -74
  524. data/spec/lib/matchers/relationship_graph_matchers.rb +0 -48
  525. data/spec/lib/matchers/resource.rb +0 -74
  526. data/spec/lib/puppet/certificate_factory.rb +0 -218
  527. data/spec/lib/puppet/face/1.0.0/huzzah.rb +0 -8
  528. data/spec/lib/puppet/face/basetest.rb +0 -51
  529. data/spec/lib/puppet/face/huzzah/obsolete.rb +0 -6
  530. data/spec/lib/puppet/face/huzzah.rb +0 -8
  531. data/spec/lib/puppet/face/version_matching.rb +0 -12
  532. data/spec/lib/puppet/indirector/indirector_testing/json.rb +0 -6
  533. data/spec/lib/puppet/indirector/indirector_testing/memory.rb +0 -7
  534. data/spec/lib/puppet/indirector/indirector_testing/msgpack.rb +0 -6
  535. data/spec/lib/puppet/indirector_proxy.rb +0 -34
  536. data/spec/lib/puppet/indirector_testing.rb +0 -31
  537. data/spec/lib/puppet/test_ca.rb +0 -164
  538. data/spec/lib/puppet_spec/character_encoding.rb +0 -12
  539. data/spec/lib/puppet_spec/compiler.rb +0 -112
  540. data/spec/lib/puppet_spec/files.rb +0 -107
  541. data/spec/lib/puppet_spec/fixtures.rb +0 -52
  542. data/spec/lib/puppet_spec/handler.rb +0 -53
  543. data/spec/lib/puppet_spec/https.rb +0 -95
  544. data/spec/lib/puppet_spec/language.rb +0 -75
  545. data/spec/lib/puppet_spec/matchers.rb +0 -68
  546. data/spec/lib/puppet_spec/module_tool/shared_functions.rb +0 -56
  547. data/spec/lib/puppet_spec/module_tool/stub_source.rb +0 -136
  548. data/spec/lib/puppet_spec/modules.rb +0 -82
  549. data/spec/lib/puppet_spec/network.rb +0 -109
  550. data/spec/lib/puppet_spec/pops.rb +0 -29
  551. data/spec/lib/puppet_spec/puppetserver.rb +0 -180
  552. data/spec/lib/puppet_spec/scope.rb +0 -13
  553. data/spec/lib/puppet_spec/settings.rb +0 -39
  554. data/spec/lib/puppet_spec/ssl.rb +0 -265
  555. data/spec/lib/puppet_spec/unindent.rb +0 -5
  556. data/spec/lib/puppet_spec/verbose.rb +0 -9
  557. data/spec/shared_behaviours/all_parsedfile_providers.rb +0 -21
  558. data/spec/shared_behaviours/an_indirector_face.rb +0 -6
  559. data/spec/shared_behaviours/documentation_on_faces.rb +0 -261
  560. data/spec/shared_behaviours/file_server_terminus.rb +0 -38
  561. data/spec/shared_behaviours/file_serving.rb +0 -73
  562. data/spec/shared_behaviours/hiera_indirections.rb +0 -98
  563. data/spec/shared_behaviours/iterative_functions.rb +0 -68
  564. data/spec/shared_behaviours/memory_terminus.rb +0 -28
  565. data/spec/shared_behaviours/path_parameters.rb +0 -160
  566. data/spec/shared_behaviours/store_configs_terminus.rb +0 -21
  567. data/spec/shared_behaviours/things_that_declare_options.rb +0 -262
  568. data/spec/shared_contexts/checksum.rb +0 -65
  569. data/spec/shared_contexts/digests.rb +0 -100
  570. data/spec/shared_contexts/https.rb +0 -29
  571. data/spec/shared_contexts/l10n.rb +0 -32
  572. data/spec/shared_contexts/provider.rb +0 -16
  573. data/spec/shared_contexts/types_setup.rb +0 -204
  574. data/spec/shared_examples/rhel_package_provider.rb +0 -398
  575. data/spec/spec_helper.rb +0 -240
  576. data/spec/unit/agent/disabler_spec.rb +0 -63
  577. data/spec/unit/agent/locker_spec.rb +0 -99
  578. data/spec/unit/agent_spec.rb +0 -423
  579. data/spec/unit/application/agent_spec.rb +0 -640
  580. data/spec/unit/application/apply_spec.rb +0 -559
  581. data/spec/unit/application/config_spec.rb +0 -232
  582. data/spec/unit/application/describe_spec.rb +0 -135
  583. data/spec/unit/application/device_spec.rb +0 -616
  584. data/spec/unit/application/doc_spec.rb +0 -333
  585. data/spec/unit/application/face_base_spec.rb +0 -454
  586. data/spec/unit/application/facts_spec.rb +0 -139
  587. data/spec/unit/application/filebucket_spec.rb +0 -319
  588. data/spec/unit/application/indirection_base_spec.rb +0 -50
  589. data/spec/unit/application/lookup_spec.rb +0 -691
  590. data/spec/unit/application/resource_spec.rb +0 -220
  591. data/spec/unit/application/ssl_spec.rb +0 -507
  592. data/spec/unit/application_spec.rb +0 -730
  593. data/spec/unit/certificate_factory_spec.rb +0 -170
  594. data/spec/unit/concurrent/lock_spec.rb +0 -29
  595. data/spec/unit/concurrent/thread_local_singleton_spec.rb +0 -39
  596. data/spec/unit/configurer/downloader_spec.rb +0 -252
  597. data/spec/unit/configurer/fact_handler_spec.rb +0 -147
  598. data/spec/unit/configurer/plugin_handler_spec.rb +0 -152
  599. data/spec/unit/configurer_spec.rb +0 -1488
  600. data/spec/unit/confine/exists_spec.rb +0 -82
  601. data/spec/unit/confine/false_spec.rb +0 -78
  602. data/spec/unit/confine/feature_spec.rb +0 -59
  603. data/spec/unit/confine/true_spec.rb +0 -78
  604. data/spec/unit/confine/variable_spec.rb +0 -105
  605. data/spec/unit/confine_collection_spec.rb +0 -132
  606. data/spec/unit/confine_spec.rb +0 -99
  607. data/spec/unit/confiner_spec.rb +0 -61
  608. data/spec/unit/context/trusted_information_spec.rb +0 -213
  609. data/spec/unit/context_spec.rb +0 -217
  610. data/spec/unit/daemon_spec.rb +0 -193
  611. data/spec/unit/data_binding_spec.rb +0 -11
  612. data/spec/unit/data_providers/function_data_provider_spec.rb +0 -122
  613. data/spec/unit/data_providers/hiera_data_provider_spec.rb +0 -360
  614. data/spec/unit/datatypes_spec.rb +0 -352
  615. data/spec/unit/defaults_spec.rb +0 -174
  616. data/spec/unit/environments_spec.rb +0 -1186
  617. data/spec/unit/etc_spec.rb +0 -465
  618. data/spec/unit/external/pson_spec.rb +0 -60
  619. data/spec/unit/face/config_spec.rb +0 -402
  620. data/spec/unit/face/epp_face_spec.rb +0 -385
  621. data/spec/unit/face/facts_spec.rb +0 -78
  622. data/spec/unit/face/generate_spec.rb +0 -293
  623. data/spec/unit/face/help_spec.rb +0 -208
  624. data/spec/unit/face/module/install_spec.rb +0 -40
  625. data/spec/unit/face/module/list_spec.rb +0 -256
  626. data/spec/unit/face/module/uninstall_spec.rb +0 -45
  627. data/spec/unit/face/module/upgrade_spec.rb +0 -26
  628. data/spec/unit/face/node_spec.rb +0 -129
  629. data/spec/unit/face/parser_spec.rb +0 -310
  630. data/spec/unit/face/plugin_spec.rb +0 -158
  631. data/spec/unit/face_spec.rb +0 -1
  632. data/spec/unit/facter_impl_spec.rb +0 -31
  633. data/spec/unit/file_bucket/dipper_spec.rb +0 -405
  634. data/spec/unit/file_bucket/file_spec.rb +0 -58
  635. data/spec/unit/file_serving/base_spec.rb +0 -164
  636. data/spec/unit/file_serving/configuration/parser_spec.rb +0 -206
  637. data/spec/unit/file_serving/configuration_spec.rb +0 -240
  638. data/spec/unit/file_serving/content_spec.rb +0 -98
  639. data/spec/unit/file_serving/fileset_spec.rb +0 -417
  640. data/spec/unit/file_serving/http_metadata_spec.rb +0 -109
  641. data/spec/unit/file_serving/metadata_spec.rb +0 -551
  642. data/spec/unit/file_serving/mount/file_spec.rb +0 -188
  643. data/spec/unit/file_serving/mount/locales_spec.rb +0 -72
  644. data/spec/unit/file_serving/mount/modules_spec.rb +0 -69
  645. data/spec/unit/file_serving/mount/pluginfacts_spec.rb +0 -72
  646. data/spec/unit/file_serving/mount/plugins_spec.rb +0 -72
  647. data/spec/unit/file_serving/mount/scripts_spec.rb +0 -69
  648. data/spec/unit/file_serving/mount/tasks_spec.rb +0 -71
  649. data/spec/unit/file_serving/mount_spec.rb +0 -30
  650. data/spec/unit/file_serving/terminus_helper_spec.rb +0 -114
  651. data/spec/unit/file_serving/terminus_selector_spec.rb +0 -84
  652. data/spec/unit/file_system/path_pattern_spec.rb +0 -153
  653. data/spec/unit/file_system/uniquefile_spec.rb +0 -245
  654. data/spec/unit/file_system_spec.rb +0 -1198
  655. data/spec/unit/forge/errors_spec.rb +0 -80
  656. data/spec/unit/forge/forge_spec.rb +0 -69
  657. data/spec/unit/forge/module_release_spec.rb +0 -331
  658. data/spec/unit/forge/repository_spec.rb +0 -154
  659. data/spec/unit/forge_spec.rb +0 -210
  660. data/spec/unit/functions/abs_spec.rb +0 -70
  661. data/spec/unit/functions/all_spec.rb +0 -97
  662. data/spec/unit/functions/annotate_spec.rb +0 -175
  663. data/spec/unit/functions/any_spec.rb +0 -109
  664. data/spec/unit/functions/assert_type_spec.rb +0 -97
  665. data/spec/unit/functions/binary_file_spec.rb +0 -46
  666. data/spec/unit/functions/break_spec.rb +0 -207
  667. data/spec/unit/functions/call_spec.rb +0 -131
  668. data/spec/unit/functions/camelcase_spec.rb +0 -34
  669. data/spec/unit/functions/capitalize_spec.rb +0 -34
  670. data/spec/unit/functions/ceiling_spec.rb +0 -65
  671. data/spec/unit/functions/chomp_spec.rb +0 -46
  672. data/spec/unit/functions/chop_spec.rb +0 -38
  673. data/spec/unit/functions/compare_spec.rb +0 -147
  674. data/spec/unit/functions/contain_spec.rb +0 -297
  675. data/spec/unit/functions/convert_to_spec.rb +0 -25
  676. data/spec/unit/functions/defined_spec.rb +0 -288
  677. data/spec/unit/functions/dig_spec.rb +0 -58
  678. data/spec/unit/functions/downcase_spec.rb +0 -34
  679. data/spec/unit/functions/each_spec.rb +0 -107
  680. data/spec/unit/functions/empty_spec.rb +0 -87
  681. data/spec/unit/functions/epp_spec.rb +0 -172
  682. data/spec/unit/functions/filter_spec.rb +0 -145
  683. data/spec/unit/functions/find_file_spec.rb +0 -69
  684. data/spec/unit/functions/find_template_spec.rb +0 -69
  685. data/spec/unit/functions/flatten_spec.rb +0 -31
  686. data/spec/unit/functions/floor_spec.rb +0 -65
  687. data/spec/unit/functions/get_spec.rb +0 -135
  688. data/spec/unit/functions/getvar_spec.rb +0 -121
  689. data/spec/unit/functions/group_by_spec.rb +0 -40
  690. data/spec/unit/functions/hiera_spec.rb +0 -495
  691. data/spec/unit/functions/include_spec.rb +0 -186
  692. data/spec/unit/functions/index_spec.rb +0 -184
  693. data/spec/unit/functions/inline_epp_spec.rb +0 -114
  694. data/spec/unit/functions/join_spec.rb +0 -33
  695. data/spec/unit/functions/keys_spec.rb +0 -31
  696. data/spec/unit/functions/length_spec.rb +0 -50
  697. data/spec/unit/functions/lest_spec.rb +0 -34
  698. data/spec/unit/functions/logging_spec.rb +0 -62
  699. data/spec/unit/functions/lookup_fixture_spec.rb +0 -687
  700. data/spec/unit/functions/lookup_spec.rb +0 -3425
  701. data/spec/unit/functions/lstrip_spec.rb +0 -30
  702. data/spec/unit/functions/map_spec.rb +0 -163
  703. data/spec/unit/functions/match_spec.rb +0 -74
  704. data/spec/unit/functions/max_spec.rb +0 -129
  705. data/spec/unit/functions/min_spec.rb +0 -129
  706. data/spec/unit/functions/module_directory_spec.rb +0 -43
  707. data/spec/unit/functions/new_spec.rb +0 -776
  708. data/spec/unit/functions/next_spec.rb +0 -93
  709. data/spec/unit/functions/partition_spec.rb +0 -40
  710. data/spec/unit/functions/reduce_spec.rb +0 -85
  711. data/spec/unit/functions/regsubst_spec.rb +0 -114
  712. data/spec/unit/functions/require_spec.rb +0 -82
  713. data/spec/unit/functions/return_spec.rb +0 -105
  714. data/spec/unit/functions/reverse_each_spec.rb +0 -108
  715. data/spec/unit/functions/round_spec.rb +0 -41
  716. data/spec/unit/functions/rstrip_spec.rb +0 -30
  717. data/spec/unit/functions/scanf_spec.rb +0 -32
  718. data/spec/unit/functions/shared.rb +0 -94
  719. data/spec/unit/functions/size_spec.rb +0 -50
  720. data/spec/unit/functions/slice_spec.rb +0 -136
  721. data/spec/unit/functions/sort_spec.rb +0 -79
  722. data/spec/unit/functions/split_spec.rb +0 -59
  723. data/spec/unit/functions/step_spec.rb +0 -113
  724. data/spec/unit/functions/strftime_spec.rb +0 -152
  725. data/spec/unit/functions/strip_spec.rb +0 -30
  726. data/spec/unit/functions/then_spec.rb +0 -40
  727. data/spec/unit/functions/tree_each_spec.rb +0 -493
  728. data/spec/unit/functions/type_spec.rb +0 -35
  729. data/spec/unit/functions/unique_spec.rb +0 -111
  730. data/spec/unit/functions/unwrap_spec.rb +0 -37
  731. data/spec/unit/functions/upcase_spec.rb +0 -34
  732. data/spec/unit/functions/values_spec.rb +0 -30
  733. data/spec/unit/functions/versioncmp_spec.rb +0 -70
  734. data/spec/unit/functions/with_spec.rb +0 -31
  735. data/spec/unit/functions4_spec.rb +0 -1046
  736. data/spec/unit/gettext/config_spec.rb +0 -156
  737. data/spec/unit/gettext/module_loading_spec.rb +0 -53
  738. data/spec/unit/graph/key_spec.rb +0 -41
  739. data/spec/unit/graph/rb_tree_map_spec.rb +0 -570
  740. data/spec/unit/graph/relationship_graph_spec.rb +0 -401
  741. data/spec/unit/graph/sequential_prioritizer_spec.rb +0 -32
  742. data/spec/unit/graph/simple_graph_spec.rb +0 -759
  743. data/spec/unit/hiera/scope_spec.rb +0 -100
  744. data/spec/unit/hiera_puppet_spec.rb +0 -159
  745. data/spec/unit/http/client_spec.rb +0 -937
  746. data/spec/unit/http/dns_spec.rb +0 -281
  747. data/spec/unit/http/external_client_spec.rb +0 -201
  748. data/spec/unit/http/factory_spec.rb +0 -160
  749. data/spec/unit/http/pool_entry_spec.rb +0 -49
  750. data/spec/unit/http/pool_spec.rb +0 -401
  751. data/spec/unit/http/proxy_spec.rb +0 -347
  752. data/spec/unit/http/resolver_spec.rb +0 -133
  753. data/spec/unit/http/response_spec.rb +0 -75
  754. data/spec/unit/http/service/ca_spec.rb +0 -198
  755. data/spec/unit/http/service/compiler_spec.rb +0 -744
  756. data/spec/unit/http/service/file_server_spec.rb +0 -307
  757. data/spec/unit/http/service/puppetserver_spec.rb +0 -112
  758. data/spec/unit/http/service/report_spec.rb +0 -117
  759. data/spec/unit/http/service_spec.rb +0 -143
  760. data/spec/unit/http/session_spec.rb +0 -309
  761. data/spec/unit/http/site_spec.rb +0 -96
  762. data/spec/unit/indirector/catalog/compiler_spec.rb +0 -1237
  763. data/spec/unit/indirector/catalog/json_spec.rb +0 -66
  764. data/spec/unit/indirector/catalog/msgpack_spec.rb +0 -11
  765. data/spec/unit/indirector/catalog/rest_spec.rb +0 -91
  766. data/spec/unit/indirector/catalog/store_configs_spec.rb +0 -16
  767. data/spec/unit/indirector/catalog/yaml_spec.rb +0 -23
  768. data/spec/unit/indirector/data_binding/hiera_spec.rb +0 -19
  769. data/spec/unit/indirector/data_binding/none_spec.rb +0 -28
  770. data/spec/unit/indirector/direct_file_server_spec.rb +0 -87
  771. data/spec/unit/indirector/envelope_spec.rb +0 -32
  772. data/spec/unit/indirector/exec_spec.rb +0 -63
  773. data/spec/unit/indirector/face_spec.rb +0 -82
  774. data/spec/unit/indirector/facts/facter_spec.rb +0 -290
  775. data/spec/unit/indirector/facts/json_spec.rb +0 -255
  776. data/spec/unit/indirector/facts/network_device_spec.rb +0 -77
  777. data/spec/unit/indirector/facts/rest_spec.rb +0 -99
  778. data/spec/unit/indirector/facts/store_configs_spec.rb +0 -16
  779. data/spec/unit/indirector/facts/yaml_spec.rb +0 -255
  780. data/spec/unit/indirector/file_bucket_file/file_spec.rb +0 -426
  781. data/spec/unit/indirector/file_bucket_file/rest_spec.rb +0 -89
  782. data/spec/unit/indirector/file_bucket_file/selector_spec.rb +0 -46
  783. data/spec/unit/indirector/file_content/file_server_spec.rb +0 -13
  784. data/spec/unit/indirector/file_content/file_spec.rb +0 -13
  785. data/spec/unit/indirector/file_content/rest_spec.rb +0 -60
  786. data/spec/unit/indirector/file_content/selector_spec.rb +0 -9
  787. data/spec/unit/indirector/file_metadata/file_server_spec.rb +0 -13
  788. data/spec/unit/indirector/file_metadata/file_spec.rb +0 -57
  789. data/spec/unit/indirector/file_metadata/http_spec.rb +0 -194
  790. data/spec/unit/indirector/file_metadata/rest_spec.rb +0 -116
  791. data/spec/unit/indirector/file_metadata/selector_spec.rb +0 -10
  792. data/spec/unit/indirector/file_server_spec.rb +0 -288
  793. data/spec/unit/indirector/hiera_spec.rb +0 -17
  794. data/spec/unit/indirector/indirection_spec.rb +0 -916
  795. data/spec/unit/indirector/json_spec.rb +0 -200
  796. data/spec/unit/indirector/memory_spec.rb +0 -26
  797. data/spec/unit/indirector/msgpack_spec.rb +0 -199
  798. data/spec/unit/indirector/node/exec_spec.rb +0 -107
  799. data/spec/unit/indirector/node/json_spec.rb +0 -33
  800. data/spec/unit/indirector/node/memory_spec.rb +0 -16
  801. data/spec/unit/indirector/node/msgpack_spec.rb +0 -23
  802. data/spec/unit/indirector/node/plain_spec.rb +0 -34
  803. data/spec/unit/indirector/node/rest_spec.rb +0 -66
  804. data/spec/unit/indirector/node/store_configs_spec.rb +0 -16
  805. data/spec/unit/indirector/node/yaml_spec.rb +0 -23
  806. data/spec/unit/indirector/none_spec.rb +0 -33
  807. data/spec/unit/indirector/plain_spec.rb +0 -26
  808. data/spec/unit/indirector/report/json_spec.rb +0 -72
  809. data/spec/unit/indirector/report/msgpack_spec.rb +0 -27
  810. data/spec/unit/indirector/report/processor_spec.rb +0 -99
  811. data/spec/unit/indirector/report/rest_spec.rb +0 -84
  812. data/spec/unit/indirector/report/yaml_spec.rb +0 -91
  813. data/spec/unit/indirector/request_spec.rb +0 -295
  814. data/spec/unit/indirector/resource/ral_spec.rb +0 -89
  815. data/spec/unit/indirector/resource/store_configs_spec.rb +0 -20
  816. data/spec/unit/indirector/rest_spec.rb +0 -149
  817. data/spec/unit/indirector/terminus_spec.rb +0 -264
  818. data/spec/unit/indirector/yaml_spec.rb +0 -188
  819. data/spec/unit/indirector_spec.rb +0 -148
  820. data/spec/unit/info_service_spec.rb +0 -575
  821. data/spec/unit/interface/action_builder_spec.rb +0 -216
  822. data/spec/unit/interface/action_manager_spec.rb +0 -254
  823. data/spec/unit/interface/action_spec.rb +0 -670
  824. data/spec/unit/interface/documentation_spec.rb +0 -32
  825. data/spec/unit/interface/face_collection_spec.rb +0 -219
  826. data/spec/unit/interface/option_builder_spec.rb +0 -86
  827. data/spec/unit/interface/option_spec.rb +0 -156
  828. data/spec/unit/interface_spec.rb +0 -305
  829. data/spec/unit/module_spec.rb +0 -989
  830. data/spec/unit/module_tool/application_spec.rb +0 -25
  831. data/spec/unit/module_tool/applications/checksummer_spec.rb +0 -115
  832. data/spec/unit/module_tool/applications/installer_spec.rb +0 -473
  833. data/spec/unit/module_tool/applications/uninstaller_spec.rb +0 -181
  834. data/spec/unit/module_tool/applications/unpacker_spec.rb +0 -75
  835. data/spec/unit/module_tool/applications/upgrader_spec.rb +0 -337
  836. data/spec/unit/module_tool/install_directory_spec.rb +0 -70
  837. data/spec/unit/module_tool/installed_modules_spec.rb +0 -49
  838. data/spec/unit/module_tool/metadata_spec.rb +0 -330
  839. data/spec/unit/module_tool/tar/gnu_spec.rb +0 -23
  840. data/spec/unit/module_tool/tar/mini_spec.rb +0 -109
  841. data/spec/unit/module_tool/tar_spec.rb +0 -36
  842. data/spec/unit/module_tool_spec.rb +0 -304
  843. data/spec/unit/network/authconfig_spec.rb +0 -8
  844. data/spec/unit/network/authorization_spec.rb +0 -8
  845. data/spec/unit/network/format_handler_spec.rb +0 -93
  846. data/spec/unit/network/format_spec.rb +0 -205
  847. data/spec/unit/network/format_support_spec.rb +0 -199
  848. data/spec/unit/network/formats_spec.rb +0 -584
  849. data/spec/unit/network/http/api/indirected_routes_spec.rb +0 -425
  850. data/spec/unit/network/http/api/master_spec.rb +0 -38
  851. data/spec/unit/network/http/api/server/v3/environments_spec.rb +0 -51
  852. data/spec/unit/network/http/api/server/v3_spec.rb +0 -78
  853. data/spec/unit/network/http/api_spec.rb +0 -109
  854. data/spec/unit/network/http/connection_spec.rb +0 -636
  855. data/spec/unit/network/http/error_spec.rb +0 -30
  856. data/spec/unit/network/http/handler_spec.rb +0 -164
  857. data/spec/unit/network/http/request_spec.rb +0 -108
  858. data/spec/unit/network/http/response_spec.rb +0 -106
  859. data/spec/unit/network/http/route_spec.rb +0 -90
  860. data/spec/unit/network/http_pool_spec.rb +0 -145
  861. data/spec/unit/network/uri_spec.rb +0 -47
  862. data/spec/unit/node/environment_spec.rb +0 -612
  863. data/spec/unit/node/facts_spec.rb +0 -225
  864. data/spec/unit/node_spec.rb +0 -434
  865. data/spec/unit/other/selinux_spec.rb +0 -27
  866. data/spec/unit/parameter/boolean_spec.rb +0 -35
  867. data/spec/unit/parameter/package_options_spec.rb +0 -43
  868. data/spec/unit/parameter/path_spec.rb +0 -23
  869. data/spec/unit/parameter/value_collection_spec.rb +0 -160
  870. data/spec/unit/parameter/value_spec.rb +0 -82
  871. data/spec/unit/parameter_spec.rb +0 -272
  872. data/spec/unit/parser/ast/block_expression_spec.rb +0 -66
  873. data/spec/unit/parser/ast/leaf_spec.rb +0 -136
  874. data/spec/unit/parser/compiler_spec.rb +0 -1020
  875. data/spec/unit/parser/files_spec.rb +0 -101
  876. data/spec/unit/parser/functions/create_resources_spec.rb +0 -326
  877. data/spec/unit/parser/functions/digest_spec.rb +0 -26
  878. data/spec/unit/parser/functions/fail_spec.rb +0 -23
  879. data/spec/unit/parser/functions/file_spec.rb +0 -99
  880. data/spec/unit/parser/functions/fqdn_rand_spec.rb +0 -87
  881. data/spec/unit/parser/functions/generate_spec.rb +0 -124
  882. data/spec/unit/parser/functions/hiera_array_spec.rb +0 -12
  883. data/spec/unit/parser/functions/hiera_hash_spec.rb +0 -12
  884. data/spec/unit/parser/functions/hiera_include_spec.rb +0 -12
  885. data/spec/unit/parser/functions/hiera_spec.rb +0 -12
  886. data/spec/unit/parser/functions/inline_template_spec.rb +0 -36
  887. data/spec/unit/parser/functions/lookup_spec.rb +0 -14
  888. data/spec/unit/parser/functions/realize_spec.rb +0 -70
  889. data/spec/unit/parser/functions/regsubst_spec.rb +0 -19
  890. data/spec/unit/parser/functions/scanf_spec.rb +0 -25
  891. data/spec/unit/parser/functions/shellquote_spec.rb +0 -66
  892. data/spec/unit/parser/functions/split_spec.rb +0 -13
  893. data/spec/unit/parser/functions/sprintf_spec.rb +0 -68
  894. data/spec/unit/parser/functions/tag_spec.rb +0 -30
  895. data/spec/unit/parser/functions/tagged_spec.rb +0 -36
  896. data/spec/unit/parser/functions/template_spec.rb +0 -93
  897. data/spec/unit/parser/functions/versioncmp_spec.rb +0 -28
  898. data/spec/unit/parser/functions_spec.rb +0 -156
  899. data/spec/unit/parser/relationship_spec.rb +0 -74
  900. data/spec/unit/parser/resource/param_spec.rb +0 -32
  901. data/spec/unit/parser/resource_spec.rb +0 -657
  902. data/spec/unit/parser/scope_spec.rb +0 -694
  903. data/spec/unit/parser/templatewrapper_spec.rb +0 -111
  904. data/spec/unit/parser/type_loader_spec.rb +0 -202
  905. data/spec/unit/plan_spec.rb +0 -65
  906. data/spec/unit/pops/adaptable_spec.rb +0 -139
  907. data/spec/unit/pops/benchmark_spec.rb +0 -123
  908. data/spec/unit/pops/containment_spec.rb +0 -0
  909. data/spec/unit/pops/evaluator/access_ops_spec.rb +0 -560
  910. data/spec/unit/pops/evaluator/arithmetic_ops_spec.rb +0 -309
  911. data/spec/unit/pops/evaluator/basic_expressions_spec.rb +0 -101
  912. data/spec/unit/pops/evaluator/collections_ops_spec.rb +0 -108
  913. data/spec/unit/pops/evaluator/comparison_ops_spec.rb +0 -267
  914. data/spec/unit/pops/evaluator/conditionals_spec.rb +0 -189
  915. data/spec/unit/pops/evaluator/deferred_resolver_spec.rb +0 -46
  916. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +0 -1634
  917. data/spec/unit/pops/evaluator/evaluator_rspec_helper.rb +0 -75
  918. data/spec/unit/pops/evaluator/json_strict_literal_evaluator_spec.rb +0 -63
  919. data/spec/unit/pops/evaluator/literal_evaluator_spec.rb +0 -43
  920. data/spec/unit/pops/evaluator/logical_ops_spec.rb +0 -89
  921. data/spec/unit/pops/evaluator/runtime3_converter_spec.rb +0 -181
  922. data/spec/unit/pops/evaluator/string_interpolation_spec.rb +0 -43
  923. data/spec/unit/pops/evaluator/variables_spec.rb +0 -88
  924. data/spec/unit/pops/factory_rspec_helper.rb +0 -65
  925. data/spec/unit/pops/factory_spec.rb +0 -309
  926. data/spec/unit/pops/issues_spec.rb +0 -210
  927. data/spec/unit/pops/label_provider_spec.rb +0 -46
  928. data/spec/unit/pops/loaders/dependency_loader_spec.rb +0 -122
  929. data/spec/unit/pops/loaders/environment_loader_spec.rb +0 -172
  930. data/spec/unit/pops/loaders/loader_paths_spec.rb +0 -43
  931. data/spec/unit/pops/loaders/loader_spec.rb +0 -516
  932. data/spec/unit/pops/loaders/loaders_spec.rb +0 -863
  933. data/spec/unit/pops/loaders/module_loaders_spec.rb +0 -268
  934. data/spec/unit/pops/loaders/static_loader_spec.rb +0 -85
  935. data/spec/unit/pops/lookup/context_spec.rb +0 -333
  936. data/spec/unit/pops/lookup/interpolation_spec.rb +0 -377
  937. data/spec/unit/pops/lookup/lookup_spec.rb +0 -375
  938. data/spec/unit/pops/merge_strategy_spec.rb +0 -17
  939. data/spec/unit/pops/migration_spec.rb +0 -51
  940. data/spec/unit/pops/model/model_spec.rb +0 -41
  941. data/spec/unit/pops/model/pn_transformer_spec.rb +0 -56
  942. data/spec/unit/pops/parser/epp_parser_spec.rb +0 -115
  943. data/spec/unit/pops/parser/evaluating_parser_spec.rb +0 -89
  944. data/spec/unit/pops/parser/lexer2_spec.rb +0 -942
  945. data/spec/unit/pops/parser/locator_spec.rb +0 -86
  946. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +0 -380
  947. data/spec/unit/pops/parser/parse_calls_spec.rb +0 -171
  948. data/spec/unit/pops/parser/parse_conditionals_spec.rb +0 -184
  949. data/spec/unit/pops/parser/parse_containers_spec.rb +0 -247
  950. data/spec/unit/pops/parser/parse_functions_spec.rb +0 -19
  951. data/spec/unit/pops/parser/parse_heredoc_spec.rb +0 -276
  952. data/spec/unit/pops/parser/parse_lambda_spec.rb +0 -19
  953. data/spec/unit/pops/parser/parse_plan_spec.rb +0 -47
  954. data/spec/unit/pops/parser/parse_resource_spec.rb +0 -328
  955. data/spec/unit/pops/parser/parser_rspec_helper.rb +0 -17
  956. data/spec/unit/pops/parser/parser_spec.rb +0 -211
  957. data/spec/unit/pops/parser/parsing_typed_parameters_spec.rb +0 -65
  958. data/spec/unit/pops/parser/pn_parser_spec.rb +0 -100
  959. data/spec/unit/pops/pn_spec.rb +0 -147
  960. data/spec/unit/pops/puppet_stack_spec.rb +0 -108
  961. data/spec/unit/pops/resource/resource_type_impl_spec.rb +0 -37
  962. data/spec/unit/pops/serialization/packer_spec.rb +0 -162
  963. data/spec/unit/pops/serialization/serialization_spec.rb +0 -458
  964. data/spec/unit/pops/serialization/to_from_hr_spec.rb +0 -637
  965. data/spec/unit/pops/serialization/to_stringified_spec.rb +0 -162
  966. data/spec/unit/pops/time/timespan_spec.rb +0 -121
  967. data/spec/unit/pops/time/timestamp_spec.rb +0 -13
  968. data/spec/unit/pops/types/class_loader_spec.rb +0 -10
  969. data/spec/unit/pops/types/deferred_spec.rb +0 -87
  970. data/spec/unit/pops/types/error_spec.rb +0 -207
  971. data/spec/unit/pops/types/iterable_spec.rb +0 -262
  972. data/spec/unit/pops/types/p_binary_type_spec.rb +0 -243
  973. data/spec/unit/pops/types/p_init_type_spec.rb +0 -383
  974. data/spec/unit/pops/types/p_object_type_spec.rb +0 -1730
  975. data/spec/unit/pops/types/p_sem_ver_type_spec.rb +0 -340
  976. data/spec/unit/pops/types/p_sensitive_type_spec.rb +0 -191
  977. data/spec/unit/pops/types/p_timespan_type_spec.rb +0 -323
  978. data/spec/unit/pops/types/p_timestamp_type_spec.rb +0 -391
  979. data/spec/unit/pops/types/p_type_set_type_spec.rb +0 -549
  980. data/spec/unit/pops/types/p_uri_type_spec.rb +0 -191
  981. data/spec/unit/pops/types/recursion_guard_spec.rb +0 -93
  982. data/spec/unit/pops/types/ruby_generator_spec.rb +0 -874
  983. data/spec/unit/pops/types/string_converter_spec.rb +0 -1202
  984. data/spec/unit/pops/types/task_spec.rb +0 -411
  985. data/spec/unit/pops/types/type_acceptor_spec.rb +0 -106
  986. data/spec/unit/pops/types/type_asserter_spec.rb +0 -43
  987. data/spec/unit/pops/types/type_calculator_spec.rb +0 -2504
  988. data/spec/unit/pops/types/type_factory_spec.rb +0 -322
  989. data/spec/unit/pops/types/type_formatter_spec.rb +0 -427
  990. data/spec/unit/pops/types/type_mismatch_describer_spec.rb +0 -424
  991. data/spec/unit/pops/types/type_parser_spec.rb +0 -445
  992. data/spec/unit/pops/types/types_spec.rb +0 -755
  993. data/spec/unit/pops/utils_spec.rb +0 -70
  994. data/spec/unit/pops/validation_spec.rb +0 -66
  995. data/spec/unit/pops/validator/validator_spec.rb +0 -1030
  996. data/spec/unit/pops/visitor_spec.rb +0 -93
  997. data/spec/unit/property/boolean_spec.rb +0 -24
  998. data/spec/unit/property/ensure_spec.rb +0 -11
  999. data/spec/unit/property/keyvalue_spec.rb +0 -259
  1000. data/spec/unit/property/list_spec.rb +0 -172
  1001. data/spec/unit/property/ordered_list_spec.rb +0 -59
  1002. data/spec/unit/property_spec.rb +0 -563
  1003. data/spec/unit/provider/README.markdown +0 -4
  1004. data/spec/unit/provider/aix_object_spec.rb +0 -821
  1005. data/spec/unit/provider/command_spec.rb +0 -62
  1006. data/spec/unit/provider/exec/posix_spec.rb +0 -232
  1007. data/spec/unit/provider/exec/shell_spec.rb +0 -53
  1008. data/spec/unit/provider/exec/windows_spec.rb +0 -105
  1009. data/spec/unit/provider/exec_spec.rb +0 -244
  1010. data/spec/unit/provider/file/posix_spec.rb +0 -230
  1011. data/spec/unit/provider/file/windows_spec.rb +0 -152
  1012. data/spec/unit/provider/group/aix_spec.rb +0 -91
  1013. data/spec/unit/provider/group/directoryservice_spec.rb +0 -33
  1014. data/spec/unit/provider/group/groupadd_spec.rb +0 -284
  1015. data/spec/unit/provider/group/ldap_spec.rb +0 -98
  1016. data/spec/unit/provider/group/pw_spec.rb +0 -78
  1017. data/spec/unit/provider/group/windows_adsi_spec.rb +0 -398
  1018. data/spec/unit/provider/ldap_spec.rb +0 -242
  1019. data/spec/unit/provider/nameservice/directoryservice_spec.rb +0 -157
  1020. data/spec/unit/provider/nameservice_spec.rb +0 -398
  1021. data/spec/unit/provider/package/aix_spec.rb +0 -158
  1022. data/spec/unit/provider/package/appdmg_spec.rb +0 -42
  1023. data/spec/unit/provider/package/apt_spec.rb +0 -302
  1024. data/spec/unit/provider/package/aptitude_spec.rb +0 -46
  1025. data/spec/unit/provider/package/aptrpm_spec.rb +0 -42
  1026. data/spec/unit/provider/package/base_spec.rb +0 -19
  1027. data/spec/unit/provider/package/dnf_spec.rb +0 -62
  1028. data/spec/unit/provider/package/dnfmodule_spec.rb +0 -276
  1029. data/spec/unit/provider/package/dpkg_spec.rb +0 -444
  1030. data/spec/unit/provider/package/freebsd_spec.rb +0 -51
  1031. data/spec/unit/provider/package/gem_spec.rb +0 -487
  1032. data/spec/unit/provider/package/hpux_spec.rb +0 -48
  1033. data/spec/unit/provider/package/macports_spec.rb +0 -142
  1034. data/spec/unit/provider/package/nim_spec.rb +0 -267
  1035. data/spec/unit/provider/package/openbsd_spec.rb +0 -417
  1036. data/spec/unit/provider/package/opkg_spec.rb +0 -180
  1037. data/spec/unit/provider/package/pacman_spec.rb +0 -438
  1038. data/spec/unit/provider/package/pip2_spec.rb +0 -38
  1039. data/spec/unit/provider/package/pip3_spec.rb +0 -38
  1040. data/spec/unit/provider/package/pip_spec.rb +0 -504
  1041. data/spec/unit/provider/package/pkg_spec.rb +0 -473
  1042. data/spec/unit/provider/package/pkgdmg_spec.rb +0 -166
  1043. data/spec/unit/provider/package/pkgin_spec.rb +0 -185
  1044. data/spec/unit/provider/package/pkgng_spec.rb +0 -228
  1045. data/spec/unit/provider/package/pkgutil_spec.rb +0 -231
  1046. data/spec/unit/provider/package/portage_spec.rb +0 -226
  1047. data/spec/unit/provider/package/puppet_gem_spec.rb +0 -130
  1048. data/spec/unit/provider/package/puppetserver_gem_spec.rb +0 -139
  1049. data/spec/unit/provider/package/rpm_spec.rb +0 -674
  1050. data/spec/unit/provider/package/sun_spec.rb +0 -112
  1051. data/spec/unit/provider/package/tdnf_spec.rb +0 -15
  1052. data/spec/unit/provider/package/up2date_spec.rb +0 -22
  1053. data/spec/unit/provider/package/urpmi_spec.rb +0 -84
  1054. data/spec/unit/provider/package/windows/exe_package_spec.rb +0 -114
  1055. data/spec/unit/provider/package/windows/msi_package_spec.rb +0 -111
  1056. data/spec/unit/provider/package/windows/package_spec.rb +0 -180
  1057. data/spec/unit/provider/package/windows_spec.rb +0 -272
  1058. data/spec/unit/provider/package/yum_spec.rb +0 -512
  1059. data/spec/unit/provider/package/zypper_spec.rb +0 -327
  1060. data/spec/unit/provider/package_targetable_spec.rb +0 -60
  1061. data/spec/unit/provider/parsedfile_spec.rb +0 -263
  1062. data/spec/unit/provider/service/base_spec.rb +0 -109
  1063. data/spec/unit/provider/service/bsd_spec.rb +0 -127
  1064. data/spec/unit/provider/service/daemontools_spec.rb +0 -190
  1065. data/spec/unit/provider/service/debian_spec.rb +0 -158
  1066. data/spec/unit/provider/service/freebsd_spec.rb +0 -92
  1067. data/spec/unit/provider/service/gentoo_spec.rb +0 -250
  1068. data/spec/unit/provider/service/init_spec.rb +0 -316
  1069. data/spec/unit/provider/service/launchd_spec.rb +0 -425
  1070. data/spec/unit/provider/service/openbsd_spec.rb +0 -196
  1071. data/spec/unit/provider/service/openrc_spec.rb +0 -231
  1072. data/spec/unit/provider/service/openwrt_spec.rb +0 -101
  1073. data/spec/unit/provider/service/rcng_spec.rb +0 -40
  1074. data/spec/unit/provider/service/redhat_spec.rb +0 -190
  1075. data/spec/unit/provider/service/runit_spec.rb +0 -164
  1076. data/spec/unit/provider/service/smf_spec.rb +0 -526
  1077. data/spec/unit/provider/service/src_spec.rb +0 -186
  1078. data/spec/unit/provider/service/systemd_spec.rb +0 -578
  1079. data/spec/unit/provider/service/upstart_spec.rb +0 -681
  1080. data/spec/unit/provider/service/windows_spec.rb +0 -475
  1081. data/spec/unit/provider/user/aix_spec.rb +0 -320
  1082. data/spec/unit/provider/user/directoryservice_spec.rb +0 -1256
  1083. data/spec/unit/provider/user/hpux_spec.rb +0 -72
  1084. data/spec/unit/provider/user/ldap_spec.rb +0 -286
  1085. data/spec/unit/provider/user/openbsd_spec.rb +0 -76
  1086. data/spec/unit/provider/user/pw_spec.rb +0 -252
  1087. data/spec/unit/provider/user/user_role_add_spec.rb +0 -374
  1088. data/spec/unit/provider/user/useradd_spec.rb +0 -849
  1089. data/spec/unit/provider/user/windows_adsi_spec.rb +0 -407
  1090. data/spec/unit/provider_spec.rb +0 -904
  1091. data/spec/unit/puppet_pal_2pec.rb +0 -1033
  1092. data/spec/unit/puppet_pal_catalog_spec.rb +0 -962
  1093. data/spec/unit/puppet_pal_spec.rb +0 -3
  1094. data/spec/unit/puppet_spec.rb +0 -127
  1095. data/spec/unit/relationship_spec.rb +0 -202
  1096. data/spec/unit/reports/http_spec.rb +0 -119
  1097. data/spec/unit/reports/store_spec.rb +0 -67
  1098. data/spec/unit/reports_spec.rb +0 -68
  1099. data/spec/unit/resource/catalog_spec.rb +0 -1151
  1100. data/spec/unit/resource/status_spec.rb +0 -216
  1101. data/spec/unit/resource/type_collection_spec.rb +0 -332
  1102. data/spec/unit/resource/type_spec.rb +0 -876
  1103. data/spec/unit/resource_spec.rb +0 -1189
  1104. data/spec/unit/scheduler/job_spec.rb +0 -78
  1105. data/spec/unit/scheduler/scheduler_spec.rb +0 -115
  1106. data/spec/unit/scheduler/splay_job_spec.rb +0 -34
  1107. data/spec/unit/settings/array_setting_spec.rb +0 -39
  1108. data/spec/unit/settings/autosign_setting_spec.rb +0 -104
  1109. data/spec/unit/settings/certificate_revocation_setting_spec.rb +0 -37
  1110. data/spec/unit/settings/config_file_spec.rb +0 -147
  1111. data/spec/unit/settings/directory_setting_spec.rb +0 -27
  1112. data/spec/unit/settings/duration_setting_spec.rb +0 -48
  1113. data/spec/unit/settings/enum_setting_spec.rb +0 -27
  1114. data/spec/unit/settings/environment_conf_spec.rb +0 -133
  1115. data/spec/unit/settings/file_setting_spec.rb +0 -344
  1116. data/spec/unit/settings/http_extra_headers_spec.rb +0 -62
  1117. data/spec/unit/settings/ini_file_spec.rb +0 -550
  1118. data/spec/unit/settings/integer_setting_spec.rb +0 -42
  1119. data/spec/unit/settings/path_setting_spec.rb +0 -29
  1120. data/spec/unit/settings/port_setting_spec.rb +0 -31
  1121. data/spec/unit/settings/priority_setting_spec.rb +0 -65
  1122. data/spec/unit/settings/server_list_setting_spec.rb +0 -21
  1123. data/spec/unit/settings/string_setting_spec.rb +0 -74
  1124. data/spec/unit/settings/terminus_setting_spec.rb +0 -27
  1125. data/spec/unit/settings/value_translator_spec.rb +0 -75
  1126. data/spec/unit/settings_spec.rb +0 -2343
  1127. data/spec/unit/ssl/base_spec.rb +0 -125
  1128. data/spec/unit/ssl/certificate_request_attributes_spec.rb +0 -80
  1129. data/spec/unit/ssl/certificate_request_spec.rb +0 -369
  1130. data/spec/unit/ssl/certificate_signer_spec.rb +0 -17
  1131. data/spec/unit/ssl/certificate_spec.rb +0 -183
  1132. data/spec/unit/ssl/digest_spec.rb +0 -34
  1133. data/spec/unit/ssl/oids_spec.rb +0 -73
  1134. data/spec/unit/ssl/ssl_provider_spec.rb +0 -632
  1135. data/spec/unit/ssl/state_machine_spec.rb +0 -982
  1136. data/spec/unit/ssl/verifier_spec.rb +0 -102
  1137. data/spec/unit/task_spec.rb +0 -345
  1138. data/spec/unit/test/test_helper_spec.rb +0 -17
  1139. data/spec/unit/transaction/additional_resource_generator_spec.rb +0 -534
  1140. data/spec/unit/transaction/event_manager_spec.rb +0 -365
  1141. data/spec/unit/transaction/event_spec.rb +0 -198
  1142. data/spec/unit/transaction/persistence_spec.rb +0 -276
  1143. data/spec/unit/transaction/report_spec.rb +0 -740
  1144. data/spec/unit/transaction/resource_harness_spec.rb +0 -625
  1145. data/spec/unit/transaction_spec.rb +0 -1037
  1146. data/spec/unit/type/README.markdown +0 -4
  1147. data/spec/unit/type/component_spec.rb +0 -52
  1148. data/spec/unit/type/exec_spec.rb +0 -945
  1149. data/spec/unit/type/file/checksum_spec.rb +0 -104
  1150. data/spec/unit/type/file/checksum_value_spec.rb +0 -285
  1151. data/spec/unit/type/file/content_spec.rb +0 -440
  1152. data/spec/unit/type/file/ctime_spec.rb +0 -33
  1153. data/spec/unit/type/file/ensure_spec.rb +0 -121
  1154. data/spec/unit/type/file/group_spec.rb +0 -65
  1155. data/spec/unit/type/file/mode_spec.rb +0 -220
  1156. data/spec/unit/type/file/mtime_spec.rb +0 -33
  1157. data/spec/unit/type/file/owner_spec.rb +0 -63
  1158. data/spec/unit/type/file/selinux_spec.rb +0 -86
  1159. data/spec/unit/type/file/source_spec.rb +0 -730
  1160. data/spec/unit/type/file/type_spec.rb +0 -18
  1161. data/spec/unit/type/file_spec.rb +0 -1746
  1162. data/spec/unit/type/filebucket_spec.rb +0 -104
  1163. data/spec/unit/type/group_spec.rb +0 -105
  1164. data/spec/unit/type/noop_metaparam_spec.rb +0 -37
  1165. data/spec/unit/type/package/package_settings_spec.rb +0 -156
  1166. data/spec/unit/type/package_spec.rb +0 -396
  1167. data/spec/unit/type/resources_spec.rb +0 -362
  1168. data/spec/unit/type/schedule_spec.rb +0 -621
  1169. data/spec/unit/type/service_spec.rb +0 -458
  1170. data/spec/unit/type/stage_spec.rb +0 -7
  1171. data/spec/unit/type/tidy_spec.rb +0 -493
  1172. data/spec/unit/type/user_spec.rb +0 -553
  1173. data/spec/unit/type/whit_spec.rb +0 -9
  1174. data/spec/unit/type_spec.rb +0 -1473
  1175. data/spec/unit/util/at_fork_spec.rb +0 -150
  1176. data/spec/unit/util/autoload_spec.rb +0 -330
  1177. data/spec/unit/util/backups_spec.rb +0 -130
  1178. data/spec/unit/util/character_encoding_spec.rb +0 -186
  1179. data/spec/unit/util/checksums_spec.rb +0 -223
  1180. data/spec/unit/util/colors_spec.rb +0 -44
  1181. data/spec/unit/util/command_line_spec.rb +0 -200
  1182. data/spec/unit/util/command_line_utils/puppet_option_parser_spec.rb +0 -129
  1183. data/spec/unit/util/constant_inflector_spec.rb +0 -55
  1184. data/spec/unit/util/diff_spec.rb +0 -46
  1185. data/spec/unit/util/docs_spec.rb +0 -100
  1186. data/spec/unit/util/errors_spec.rb +0 -36
  1187. data/spec/unit/util/execution_spec.rb +0 -943
  1188. data/spec/unit/util/execution_stub_spec.rb +0 -38
  1189. data/spec/unit/util/feature_spec.rb +0 -129
  1190. data/spec/unit/util/filetype_spec.rb +0 -223
  1191. data/spec/unit/util/inifile_spec.rb +0 -510
  1192. data/spec/unit/util/json_lockfile_spec.rb +0 -48
  1193. data/spec/unit/util/json_spec.rb +0 -126
  1194. data/spec/unit/util/ldap/connection_spec.rb +0 -162
  1195. data/spec/unit/util/ldap/generator_spec.rb +0 -49
  1196. data/spec/unit/util/ldap/manager_spec.rb +0 -612
  1197. data/spec/unit/util/lockfile_spec.rb +0 -117
  1198. data/spec/unit/util/log/destinations_spec.rb +0 -258
  1199. data/spec/unit/util/log_spec.rb +0 -479
  1200. data/spec/unit/util/logging_spec.rb +0 -618
  1201. data/spec/unit/util/metric_spec.rb +0 -89
  1202. data/spec/unit/util/monkey_patches_spec.rb +0 -137
  1203. data/spec/unit/util/multi_match_spec.rb +0 -38
  1204. data/spec/unit/util/network_device/config_spec.rb +0 -91
  1205. data/spec/unit/util/network_device/transport/base_spec.rb +0 -40
  1206. data/spec/unit/util/network_device_spec.rb +0 -43
  1207. data/spec/unit/util/package/version/debian_spec.rb +0 -83
  1208. data/spec/unit/util/package/version/pip_spec.rb +0 -464
  1209. data/spec/unit/util/package/version/range_spec.rb +0 -175
  1210. data/spec/unit/util/package/version/rpm_spec.rb +0 -121
  1211. data/spec/unit/util/package_spec.rb +0 -19
  1212. data/spec/unit/util/pidlock_spec.rb +0 -333
  1213. data/spec/unit/util/plist_spec.rb +0 -168
  1214. data/spec/unit/util/posix_spec.rb +0 -630
  1215. data/spec/unit/util/profiler/aggregate_spec.rb +0 -55
  1216. data/spec/unit/util/profiler/around_profiler_spec.rb +0 -61
  1217. data/spec/unit/util/profiler/logging_spec.rb +0 -70
  1218. data/spec/unit/util/profiler/object_counts_spec.rb +0 -13
  1219. data/spec/unit/util/profiler/wall_clock_spec.rb +0 -13
  1220. data/spec/unit/util/profiler_spec.rb +0 -47
  1221. data/spec/unit/util/rdoc_spec.rb +0 -55
  1222. data/spec/unit/util/reference_spec.rb +0 -38
  1223. data/spec/unit/util/resource_template_spec.rb +0 -57
  1224. data/spec/unit/util/retry_action_spec.rb +0 -84
  1225. data/spec/unit/util/rpm_compare_spec.rb +0 -196
  1226. data/spec/unit/util/rubygems_spec.rb +0 -47
  1227. data/spec/unit/util/run_mode_spec.rb +0 -217
  1228. data/spec/unit/util/selinux_spec.rb +0 -422
  1229. data/spec/unit/util/skip_tags_spec.rb +0 -14
  1230. data/spec/unit/util/splayer_spec.rb +0 -44
  1231. data/spec/unit/util/storage_spec.rb +0 -330
  1232. data/spec/unit/util/suidmanager_spec.rb +0 -278
  1233. data/spec/unit/util/symbolic_file_mode_spec.rb +0 -180
  1234. data/spec/unit/util/tag_set_spec.rb +0 -52
  1235. data/spec/unit/util/tagging_spec.rb +0 -246
  1236. data/spec/unit/util/terminal_spec.rb +0 -41
  1237. data/spec/unit/util/user_attr_spec.rb +0 -45
  1238. data/spec/unit/util/warnings_spec.rb +0 -45
  1239. data/spec/unit/util/watched_file_spec.rb +0 -52
  1240. data/spec/unit/util/watcher/periodic_watcher_spec.rb +0 -52
  1241. data/spec/unit/util/watcher_spec.rb +0 -86
  1242. data/spec/unit/util/windows/access_control_entry_spec.rb +0 -66
  1243. data/spec/unit/util/windows/access_control_list_spec.rb +0 -132
  1244. data/spec/unit/util/windows/adsi_spec.rb +0 -704
  1245. data/spec/unit/util/windows/api_types_spec.rb +0 -184
  1246. data/spec/unit/util/windows/eventlog_spec.rb +0 -120
  1247. data/spec/unit/util/windows/file_spec.rb +0 -88
  1248. data/spec/unit/util/windows/root_certs_spec.rb +0 -16
  1249. data/spec/unit/util/windows/security_descriptor_spec.rb +0 -115
  1250. data/spec/unit/util/windows/service_spec.rb +0 -677
  1251. data/spec/unit/util/windows/sid_spec.rb +0 -338
  1252. data/spec/unit/util/windows/string_spec.rb +0 -55
  1253. data/spec/unit/util/windows_spec.rb +0 -23
  1254. data/spec/unit/util/yaml_spec.rb +0 -171
  1255. data/spec/unit/util_spec.rb +0 -954
  1256. data/spec/unit/version_spec.rb +0 -61
  1257. data/spec/unit/x509/cert_provider_spec.rb +0 -614
  1258. data/spec/unit/x509/pem_store_spec.rb +0 -160
@@ -1,1151 +0,0 @@
1
- require 'spec_helper'
2
- require 'puppet_spec/compiler'
3
-
4
- require 'matchers/json'
5
-
6
- describe Puppet::Resource::Catalog, "when compiling" do
7
- include JSONMatchers
8
- include PuppetSpec::Files
9
-
10
- before do
11
- @basepath = make_absolute("/somepath")
12
- # stub this to not try to create state.yaml
13
- allow(Puppet::Util::Storage).to receive(:store)
14
- end
15
-
16
- it "should support json, pson, dot, yaml" do
17
- # msgpack is optional, so using include instead of eq
18
- expect(Puppet::Resource::Catalog.supported_formats).to include(:json, :pson, :dot, :yaml)
19
- end
20
-
21
- # audit only resources are unmanaged
22
- # as are resources without properties with should values
23
- it "should write its managed resources' types, namevars" do
24
- catalog = Puppet::Resource::Catalog.new("host")
25
-
26
- resourcefile = tmpfile('resourcefile')
27
- Puppet[:resourcefile] = resourcefile
28
-
29
- res = Puppet::Type.type('file').new(:title => File.expand_path('/tmp/sam'), :ensure => 'present')
30
- res.file = 'site.pp'
31
- res.line = 21
32
-
33
- res2 = Puppet::Type.type('exec').new(:title => 'bob', :command => "#{File.expand_path('/bin/rm')} -rf /")
34
- res2.file = File.expand_path('/modules/bob/manifests/bob.pp')
35
- res2.line = 42
36
-
37
- res3 = Puppet::Type.type('file').new(:title => File.expand_path('/tmp/susan'), :audit => 'all')
38
- res3.file = 'site.pp'
39
- res3.line = 63
40
-
41
- res4 = Puppet::Type.type('file').new(:title => File.expand_path('/tmp/lilly'))
42
- res4.file = 'site.pp'
43
- res4.line = 84
44
-
45
- comp_res = Puppet::Type.type('component').new(:title => 'Class[Main]')
46
-
47
- catalog.add_resource(res, res2, res3, res4, comp_res)
48
- catalog.write_resource_file
49
- expect(File.readlines(resourcefile).map(&:chomp)).to match_array([
50
- "file[#{res.title.downcase}]",
51
- "exec[#{res2.title.downcase}]"
52
- ])
53
- end
54
-
55
- it "should log an error if unable to write to the resource file" do
56
- catalog = Puppet::Resource::Catalog.new("host")
57
- Puppet[:resourcefile] = File.expand_path('/not/writable/file')
58
-
59
- catalog.add_resource(Puppet::Type.type('file').new(:title => File.expand_path('/tmp/foo')))
60
- catalog.write_resource_file
61
- expect(@logs.size).to eq(1)
62
- expect(@logs.first.message).to match(/Could not create resource file/)
63
- expect(@logs.first.level).to eq(:err)
64
- end
65
-
66
- it "should be able to write its list of classes to the class file" do
67
- @catalog = Puppet::Resource::Catalog.new("host")
68
-
69
- @catalog.add_class "foo", "bar"
70
-
71
- Puppet[:classfile] = File.expand_path("/class/file")
72
-
73
- fh = double('filehandle')
74
- classfile = Puppet.settings.setting(:classfile)
75
- expect(Puppet::FileSystem).to receive(:open).with(classfile.value, classfile.mode.to_i(8), "w:UTF-8").and_yield(fh)
76
-
77
- expect(fh).to receive(:puts).with("foo\nbar")
78
-
79
- @catalog.write_class_file
80
- end
81
-
82
- it "should have a client_version attribute" do
83
- @catalog = Puppet::Resource::Catalog.new("host")
84
- @catalog.client_version = 5
85
- expect(@catalog.client_version).to eq(5)
86
- end
87
-
88
- it "should have a server_version attribute" do
89
- @catalog = Puppet::Resource::Catalog.new("host")
90
- @catalog.server_version = 5
91
- expect(@catalog.server_version).to eq(5)
92
- end
93
-
94
- it "defaults code_id to nil" do
95
- catalog = Puppet::Resource::Catalog.new("host")
96
- expect(catalog.code_id).to be_nil
97
- end
98
-
99
- it "should include a catalog_uuid" do
100
- allow(SecureRandom).to receive(:uuid).and_return("827a74c8-cf98-44da-9ff7-18c5e4bee41e")
101
- catalog = Puppet::Resource::Catalog.new("host")
102
- expect(catalog.catalog_uuid).to eq("827a74c8-cf98-44da-9ff7-18c5e4bee41e")
103
- end
104
-
105
- it "should include the current catalog_format" do
106
- catalog = Puppet::Resource::Catalog.new("host")
107
- expect(catalog.catalog_format).to eq(2)
108
- end
109
-
110
- describe "when compiling" do
111
- it "should accept tags" do
112
- config = Puppet::Resource::Catalog.new("mynode")
113
- config.tag("one")
114
- expect(config).to be_tagged("one")
115
- end
116
-
117
- it "should accept multiple tags at once" do
118
- config = Puppet::Resource::Catalog.new("mynode")
119
- config.tag("one", "two")
120
- expect(config).to be_tagged("one")
121
- expect(config).to be_tagged("two")
122
- end
123
-
124
- it "should convert all tags to strings" do
125
- config = Puppet::Resource::Catalog.new("mynode")
126
- config.tag("one", :two)
127
- expect(config).to be_tagged("one")
128
- expect(config).to be_tagged("two")
129
- end
130
-
131
- it "should tag with both the qualified name and the split name" do
132
- config = Puppet::Resource::Catalog.new("mynode")
133
- config.tag("one::two")
134
- expect(config).to be_tagged("one")
135
- expect(config).to be_tagged("one::two")
136
- end
137
-
138
- it "should accept classes" do
139
- config = Puppet::Resource::Catalog.new("mynode")
140
- config.add_class("one")
141
- expect(config.classes).to eq(%w{one})
142
- config.add_class("two", "three")
143
- expect(config.classes).to eq(%w{one two three})
144
- end
145
-
146
- it "should tag itself with passed class names" do
147
- config = Puppet::Resource::Catalog.new("mynode")
148
- config.add_class("one")
149
- expect(config).to be_tagged("one")
150
- end
151
-
152
- it "handles resource titles with brackets" do
153
- config = Puppet::Resource::Catalog.new("mynode")
154
- expect(config.title_key_for_ref("Notify[[foo]bar]")).to eql(["Notify", "[foo]bar"])
155
- end
156
- end
157
-
158
- describe "when converting to a RAL catalog" do
159
- before do
160
- @original = Puppet::Resource::Catalog.new("mynode")
161
- @original.tag(*%w{one two three})
162
- @original.add_class(*%w{four five six})
163
-
164
- @top = Puppet::Resource.new :class, 'top'
165
- @topobject = Puppet::Resource.new :file, @basepath+'/topobject'
166
- @middle = Puppet::Resource.new :class, 'middle'
167
- @middleobject = Puppet::Resource.new :file, @basepath+'/middleobject'
168
- @bottom = Puppet::Resource.new :class, 'bottom'
169
- @bottomobject = Puppet::Resource.new :file, @basepath+'/bottomobject'
170
-
171
- @resources = [@top, @topobject, @middle, @middleobject, @bottom, @bottomobject]
172
-
173
- @original.add_resource(*@resources)
174
-
175
- @original.add_edge(@top, @topobject)
176
- @original.add_edge(@top, @middle)
177
- @original.add_edge(@middle, @middleobject)
178
- @original.add_edge(@middle, @bottom)
179
- @original.add_edge(@bottom, @bottomobject)
180
-
181
- @original.catalog_format = 1
182
- @catalog = @original.to_ral
183
- end
184
-
185
- it "should add all resources as RAL instances" do
186
- @resources.each do |resource|
187
- # Warning: a failure here will result in "global resource iteration is
188
- # deprecated" being raised, because the rspec rendering to get the
189
- # result tries to call `each` on the resource, and that raises.
190
- expect(@catalog.resource(resource.ref)).to be_a_kind_of(Puppet::Type)
191
- end
192
- end
193
-
194
- it "should raise if an unknown resource is being converted" do
195
- @new_res = Puppet::Resource.new "Unknown", "type", :kind => 'compilable_type'
196
- @resource_array = [@new_res]
197
-
198
- @original.add_resource(*@resource_array)
199
- @original.add_edge(@bottomobject, @new_res)
200
-
201
- @original.catalog_format = 2
202
-
203
- expect { @original.to_ral }.to raise_error(Puppet::Error, "Resource type 'Unknown' was not found")
204
- end
205
-
206
- it "should copy the tag list to the new catalog" do
207
- expect(@catalog.tags.sort).to eq(@original.tags.sort)
208
- end
209
-
210
- it "should copy the class list to the new catalog" do
211
- expect(@catalog.classes).to eq(@original.classes)
212
- end
213
-
214
- it "should duplicate the original edges" do
215
- @original.edges.each do |edge|
216
- expect(@catalog.edge?(@catalog.resource(edge.source.ref), @catalog.resource(edge.target.ref))).to be_truthy
217
- end
218
- end
219
-
220
- it "should set itself as the catalog for each converted resource" do
221
- @catalog.vertices.each { |v| expect(v.catalog.object_id).to eql(@catalog.object_id) }
222
- end
223
-
224
- # This tests #931.
225
- it "should not lose track of resources whose names vary" do
226
- changer = Puppet::Resource.new :file, @basepath+'/test/', :parameters => {:ensure => :directory}
227
-
228
- config = Puppet::Resource::Catalog.new('test')
229
- config.add_resource(changer)
230
- config.add_resource(@top)
231
-
232
- config.add_edge(@top, changer)
233
-
234
- catalog = config.to_ral
235
- expect(catalog.resource("File[#{@basepath}/test/]")).to equal(catalog.resource("File[#{@basepath}/test]"))
236
- end
237
-
238
- after do
239
- # Remove all resource instances.
240
- @catalog.clear(true)
241
- end
242
- end
243
-
244
- describe "when filtering" do
245
- before :each do
246
- @original = Puppet::Resource::Catalog.new("mynode")
247
- @original.tag(*%w{one two three})
248
- @original.add_class(*%w{four five six})
249
-
250
- @r1 = double(
251
- 'r1',
252
- :ref => "File[/a]",
253
- :[] => nil,
254
- :virtual => nil,
255
- :catalog= => nil,
256
- )
257
- allow(@r1).to receive(:respond_to?)
258
- allow(@r1).to receive(:respond_to?).with(:ref).and_return(true)
259
- allow(@r1).to receive(:copy_as_resource).and_return(@r1)
260
- allow(@r1).to receive(:is_a?).with(Puppet::Resource).and_return(true)
261
-
262
- @r2 = double(
263
- 'r2',
264
- :ref => "File[/b]",
265
- :[] => nil,
266
- :virtual => nil,
267
- :catalog= => nil,
268
- )
269
- allow(@r2).to receive(:respond_to?)
270
- allow(@r2).to receive(:respond_to?).with(:ref).and_return(true)
271
- allow(@r2).to receive(:copy_as_resource).and_return(@r2)
272
- allow(@r2).to receive(:is_a?).with(Puppet::Resource).and_return(true)
273
-
274
- @resources = [@r1,@r2]
275
-
276
- @original.add_resource(@r1,@r2)
277
- end
278
-
279
- it "should transform the catalog to a resource catalog" do
280
- expect(@original).to receive(:to_catalog).with(:to_resource)
281
-
282
- @original.filter
283
- end
284
-
285
- it "should scan each catalog resource in turn and apply filtering block" do
286
- @resources.each { |r| expect(r).to receive(:test?) }
287
- @original.filter do |r|
288
- r.test?
289
- end
290
- end
291
-
292
- it "should filter out resources which produce true when the filter block is evaluated" do
293
- expect(@original.filter do |r|
294
- r == @r1
295
- end.resource("File[/a]")).to be_nil
296
- end
297
-
298
- it "should not consider edges against resources that were filtered out" do
299
- @original.add_edge(@r1,@r2)
300
- expect(@original.filter do |r|
301
- r == @r1
302
- end.edge?(@r1,@r2)).not_to be
303
- end
304
-
305
- it "copies the version" do
306
- @original.version = '123'
307
- expect(@original.filter.version).to eq(@original.version)
308
- end
309
-
310
- it 'copies the code_id' do
311
- @original.code_id = 'b59e5df0578ef411f773ee6c33d8073c50e7b8fe'
312
- expect(@original.filter.code_id).to eq(@original.code_id)
313
- end
314
-
315
- it 'copies the catalog_uuid' do
316
- @original.catalog_uuid = '827a74c8-cf98-44da-9ff7-18c5e4bee41e'
317
- expect(@original.filter.catalog_uuid).to eq(@original.catalog_uuid)
318
- end
319
-
320
- it 'copies the catalog_format' do
321
- @original.catalog_format = 42
322
- expect(@original.filter.catalog_format).to eq(@original.catalog_format)
323
- end
324
- end
325
-
326
- describe "when functioning as a resource container" do
327
- before do
328
- @catalog = Puppet::Resource::Catalog.new("host")
329
- @one = Puppet::Type.type(:notify).new :name => "one"
330
- @two = Puppet::Type.type(:notify).new :name => "two"
331
- @three = Puppet::Type.type(:notify).new :name => "three"
332
- @dupe = Puppet::Type.type(:notify).new :name => "one"
333
- end
334
-
335
- it "should provide a method to add one or more resources" do
336
- @catalog.add_resource @one, @two
337
- expect(@catalog.resource(@one.ref)).to equal(@one)
338
- expect(@catalog.resource(@two.ref)).to equal(@two)
339
- end
340
-
341
- it "should add resources to the relationship graph if it exists" do
342
- relgraph = @catalog.relationship_graph
343
-
344
- @catalog.add_resource @one
345
-
346
- expect(relgraph).to be_vertex(@one)
347
- end
348
-
349
- it "should set itself as the resource's catalog if it is not a relationship graph" do
350
- expect(@one).to receive(:catalog=).with(@catalog)
351
- @catalog.add_resource @one
352
- end
353
-
354
- it "should make all vertices available by resource reference" do
355
- @catalog.add_resource(@one)
356
- expect(@catalog.resource(@one.ref)).to equal(@one)
357
- expect(@catalog.vertices.find { |r| r.ref == @one.ref }).to equal(@one)
358
- end
359
-
360
- it "tracks the container through edges" do
361
- @catalog.add_resource(@two)
362
- @catalog.add_resource(@one)
363
-
364
- @catalog.add_edge(@one, @two)
365
-
366
- expect(@catalog.container_of(@two)).to eq(@one)
367
- end
368
-
369
- it "a resource without a container is contained in nil" do
370
- @catalog.add_resource(@one)
371
-
372
- expect(@catalog.container_of(@one)).to be_nil
373
- end
374
-
375
- it "should canonize how resources are referred to during retrieval when both type and title are provided" do
376
- @catalog.add_resource(@one)
377
- expect(@catalog.resource("notify", "one")).to equal(@one)
378
- end
379
-
380
- it "should canonize how resources are referred to during retrieval when just the title is provided" do
381
- @catalog.add_resource(@one)
382
- expect(@catalog.resource("notify[one]", nil)).to equal(@one)
383
- end
384
-
385
- it "adds resources before an existing resource" do
386
- @catalog.add_resource(@one)
387
- @catalog.add_resource_before(@one, @two, @three)
388
-
389
- expect(@catalog.resources).to eq([@two, @three, @one])
390
- end
391
-
392
- it "raises if adding a resource before a resource not in the catalog" do
393
- expect {
394
- @catalog.add_resource_before(@one, @two)
395
- }.to raise_error(ArgumentError, "Cannot add resource Notify[two] before Notify[one] because Notify[one] is not yet in the catalog")
396
- end
397
-
398
- it "adds resources after an existing resource in reverse order" do
399
- @catalog.add_resource(@one)
400
- @catalog.add_resource_after(@one, @two, @three)
401
-
402
- expect(@catalog.resources).to eq([@one, @three, @two])
403
- end
404
-
405
- it "raises if adding a resource after a resource not in the catalog" do
406
- expect {
407
- @catalog.add_resource_after(@one, @two)
408
- }.to raise_error(ArgumentError, "Cannot add resource Notify[two] after Notify[one] because Notify[one] is not yet in the catalog")
409
- end
410
-
411
- describe 'with a duplicate resource' do
412
- def resource_at(type, name, file, line)
413
- resource = Puppet::Resource.new(type, name)
414
- resource.file = file
415
- resource.line = line
416
-
417
- Puppet::Type.type(type).new(resource)
418
- end
419
-
420
- let(:orig) { resource_at(:notify, 'duplicate-title', '/path/to/orig/file', 42) }
421
- let(:dupe) { resource_at(:notify, 'duplicate-title', '/path/to/dupe/file', 314) }
422
-
423
- it "should print the locations of the original duplicated resource" do
424
- @catalog.add_resource(orig)
425
-
426
- expect { @catalog.add_resource(dupe) }.to raise_error { |error|
427
- expect(error).to be_a Puppet::Resource::Catalog::DuplicateResourceError
428
-
429
- expect(error.message).to match %r[Duplicate declaration: Notify\[duplicate-title\] is already declared]
430
- expect(error.message).to match %r[at \(file: /path/to/orig/file, line: 42\)]
431
- expect(error.message).to match %r[cannot redeclare]
432
- expect(error.message).to match %r[\(file: /path/to/dupe/file, line: 314\)]
433
- }
434
- end
435
- end
436
-
437
- it "should remove all resources when asked" do
438
- @catalog.add_resource @one
439
- @catalog.add_resource @two
440
- expect(@one).to receive(:remove)
441
- expect(@two).to receive(:remove)
442
- @catalog.clear(true)
443
- end
444
-
445
- it "should support a mechanism for finishing resources" do
446
- expect(@one).to receive(:finish)
447
- expect(@two).to receive(:finish)
448
- @catalog.add_resource @one
449
- @catalog.add_resource @two
450
-
451
- @catalog.finalize
452
- end
453
-
454
- it "should make default resources when finalizing" do
455
- expect(@catalog).to receive(:make_default_resources)
456
- @catalog.finalize
457
- end
458
-
459
- it "should add default resources to the catalog upon creation" do
460
- @catalog.make_default_resources
461
- expect(@catalog.resource(:schedule, "daily")).not_to be_nil
462
- end
463
-
464
- it "should optionally support an initialization block and should finalize after such blocks" do
465
- expect(@one).to receive(:finish)
466
- expect(@two).to receive(:finish)
467
- Puppet::Resource::Catalog.new("host") do |conf|
468
- conf.add_resource @one
469
- conf.add_resource @two
470
- end
471
- end
472
-
473
- it "should inform the resource that it is the resource's catalog" do
474
- expect(@one).to receive(:catalog=).with(@catalog)
475
- @catalog.add_resource @one
476
- end
477
-
478
- it "should be able to find resources by reference" do
479
- @catalog.add_resource @one
480
- expect(@catalog.resource(@one.ref)).to equal(@one)
481
- end
482
-
483
- it "should be able to find resources by reference or by type/title tuple" do
484
- @catalog.add_resource @one
485
- expect(@catalog.resource("notify", "one")).to equal(@one)
486
- end
487
-
488
- it "should have a mechanism for removing resources" do
489
- @catalog.add_resource(@one)
490
- expect(@catalog.resource(@one.ref)).to be
491
- expect(@catalog.vertex?(@one)).to be_truthy
492
-
493
- @catalog.remove_resource(@one)
494
- expect(@catalog.resource(@one.ref)).to be_nil
495
- expect(@catalog.vertex?(@one)).to be_falsey
496
- end
497
-
498
- it "should have a method for creating aliases for resources" do
499
- @catalog.add_resource @one
500
- @catalog.alias(@one, "other")
501
- expect(@catalog.resource("notify", "other")).to equal(@one)
502
- end
503
-
504
- it "should ignore conflicting aliases that point to the aliased resource" do
505
- @catalog.alias(@one, "other")
506
- expect { @catalog.alias(@one, "other") }.not_to raise_error
507
- end
508
-
509
- it "should create aliases for isomorphic resources whose names do not match their titles" do
510
- resource = Puppet::Type::File.new(:title => "testing", :path => @basepath+"/something")
511
-
512
- @catalog.add_resource(resource)
513
-
514
- expect(@catalog.resource(:file, @basepath+"/something")).to equal(resource)
515
- end
516
-
517
- it "should not create aliases for non-isomorphic resources whose names do not match their titles" do
518
- resource = Puppet::Type.type(:exec).new(:title => "testing", :command => "echo", :path => %w{/bin /usr/bin /usr/local/bin})
519
-
520
- @catalog.add_resource(resource)
521
-
522
- # Yay, I've already got a 'should' method
523
- expect(@catalog.resource(:exec, "echo").object_id).to eq(nil.object_id)
524
- end
525
-
526
- # This test is the same as the previous, but the behaviour should be explicit.
527
- it "should alias using the class name from the resource reference, not the resource class name" do
528
- @catalog.add_resource @one
529
- @catalog.alias(@one, "other")
530
- expect(@catalog.resource("notify", "other")).to equal(@one)
531
- end
532
-
533
- it "should fail to add an alias if the aliased name already exists" do
534
- @catalog.add_resource @one
535
- expect { @catalog.alias @two, "one" }.to raise_error(ArgumentError)
536
- end
537
-
538
- it "should not fail when a resource has duplicate aliases created" do
539
- @catalog.add_resource @one
540
- expect { @catalog.alias @one, "one" }.not_to raise_error
541
- end
542
-
543
- it "should not create aliases that point back to the resource" do
544
- @catalog.alias(@one, "one")
545
- expect(@catalog.resource(:notify, "one")).to be_nil
546
- end
547
-
548
- it "should be able to look resources up by their aliases" do
549
- @catalog.add_resource @one
550
- @catalog.alias @one, "two"
551
- expect(@catalog.resource(:notify, "two")).to equal(@one)
552
- end
553
-
554
- it "should remove resource aliases when the target resource is removed" do
555
- @catalog.add_resource @one
556
- @catalog.alias(@one, "other")
557
- expect(@one).to receive(:remove)
558
- @catalog.remove_resource(@one)
559
- expect(@catalog.resource("notify", "other")).to be_nil
560
- end
561
-
562
- it "should add an alias for the namevar when the title and name differ on isomorphic resource types" do
563
- resource = Puppet::Type.type(:file).new :path => @basepath+"/something", :title => "other", :content => "blah"
564
- expect(resource).to receive(:isomorphic?).and_return(true)
565
- @catalog.add_resource(resource)
566
- expect(@catalog.resource(:file, "other")).to equal(resource)
567
- expect(@catalog.resource(:file, @basepath+"/something").ref).to eq(resource.ref)
568
- end
569
-
570
- it "should not add an alias for the namevar when the title and name differ on non-isomorphic resource types" do
571
- resource = Puppet::Type.type(:file).new :path => @basepath+"/something", :title => "other", :content => "blah"
572
- expect(resource).to receive(:isomorphic?).and_return(false)
573
- @catalog.add_resource(resource)
574
- expect(@catalog.resource(:file, resource.title)).to equal(resource)
575
- # We can't use .should here, because the resources respond to that method.
576
- raise "Aliased non-isomorphic resource" if @catalog.resource(:file, resource.name)
577
- end
578
-
579
- it "should provide a method to create additional resources that also registers the resource" do
580
- args = {:name => "/yay", :ensure => :file}
581
- resource = double('file', :ref => "File[/yay]", :catalog= => @catalog, :title => "/yay", :[] => "/yay")
582
- expect(Puppet::Type.type(:file)).to receive(:new).with(args).and_return(resource)
583
- @catalog.create_resource :file, args
584
- expect(@catalog.resource("File[/yay]")).to equal(resource)
585
- end
586
-
587
- describe "when adding resources with multiple namevars" do
588
- before :each do
589
- Puppet::Type.newtype(:multiple) do
590
- newparam(:color, :namevar => true)
591
- newparam(:designation, :namevar => true)
592
-
593
- def self.title_patterns
594
- [ [
595
- /^(\w+) (\w+)$/,
596
- [
597
- [:color, lambda{|x| x}],
598
- [:designation, lambda{|x| x}]
599
- ]
600
- ] ]
601
- end
602
- end
603
- end
604
-
605
- it "should add an alias using the uniqueness key" do
606
- @resource = Puppet::Type.type(:multiple).new(:title => "some resource", :color => "red", :designation => "5")
607
-
608
- @catalog.add_resource(@resource)
609
- expect(@catalog.resource(:multiple, "some resource")).to eq(@resource)
610
- expect(@catalog.resource("Multiple[some resource]")).to eq(@resource)
611
- expect(@catalog.resource("Multiple[red 5]")).to eq(@resource)
612
- end
613
-
614
- it "should conflict with a resource with the same uniqueness key" do
615
- @resource = Puppet::Type.type(:multiple).new(:title => "some resource", :color => "red", :designation => "5")
616
- @other = Puppet::Type.type(:multiple).new(:title => "another resource", :color => "red", :designation => "5")
617
-
618
- @catalog.add_resource(@resource)
619
- expect { @catalog.add_resource(@other) }.to raise_error(ArgumentError, /Cannot alias Multiple\[another resource\] to \["red", "5"\].*resource \["Multiple", "red", "5"\] already declared/)
620
- end
621
-
622
- it "should conflict when its uniqueness key matches another resource's title" do
623
- path = make_absolute("/tmp/foo")
624
- @resource = Puppet::Type.type(:file).new(:title => path)
625
- @other = Puppet::Type.type(:file).new(:title => "another file", :path => path)
626
-
627
- @catalog.add_resource(@resource)
628
- expect { @catalog.add_resource(@other) }.to raise_error(ArgumentError, /Cannot alias File\[another file\] to \["#{Regexp.escape(path)}"\].*resource \["File", "#{Regexp.escape(path)}"\] already declared/)
629
- end
630
-
631
- it "should conflict when its uniqueness key matches the uniqueness key derived from another resource's title" do
632
- @resource = Puppet::Type.type(:multiple).new(:title => "red leader")
633
- @other = Puppet::Type.type(:multiple).new(:title => "another resource", :color => "red", :designation => "leader")
634
-
635
- @catalog.add_resource(@resource)
636
- expect { @catalog.add_resource(@other) }.to raise_error(ArgumentError, /Cannot alias Multiple\[another resource\] to \["red", "leader"\].*resource \["Multiple", "red", "leader"\] already declared/)
637
- end
638
- end
639
- end
640
-
641
- describe "when applying" do
642
- before :each do
643
- @catalog = Puppet::Resource::Catalog.new("host")
644
-
645
- @transaction = Puppet::Transaction.new(@catalog, nil, Puppet::Graph::SequentialPrioritizer.new)
646
- allow(Puppet::Transaction).to receive(:new).and_return(@transaction)
647
- allow(@transaction).to receive(:evaluate)
648
- allow(@transaction).to receive(:for_network_device=)
649
-
650
- allow(Puppet.settings).to receive(:use)
651
- end
652
-
653
- it "should create and evaluate a transaction" do
654
- expect(@transaction).to receive(:evaluate)
655
- @catalog.apply
656
- end
657
-
658
- it "should add a transaction evalution time to the report" do
659
- expect(@transaction.report).to receive(:add_times).with(:transaction_evaluation, kind_of(Numeric))
660
- @catalog.apply
661
- end
662
-
663
- it "should return the transaction" do
664
- expect(@catalog.apply).to equal(@transaction)
665
- end
666
-
667
- it "should yield the transaction if a block is provided" do
668
- @catalog.apply do |trans|
669
- expect(trans).to equal(@transaction)
670
- end
671
- end
672
-
673
- it "should default to being a host catalog" do
674
- expect(@catalog.host_config).to be_truthy
675
- end
676
-
677
- it "should be able to be set to a non-host_config" do
678
- @catalog.host_config = false
679
- expect(@catalog.host_config).to be_falsey
680
- end
681
-
682
- it "should pass supplied tags on to the transaction" do
683
- expect(@transaction).to receive(:tags=).with(%w{one two})
684
- @catalog.apply(:tags => %w{one two})
685
- end
686
-
687
- it "should set ignoreschedules on the transaction if specified in apply()" do
688
- expect(@transaction).to receive(:ignoreschedules=).with(true)
689
- @catalog.apply(:ignoreschedules => true)
690
- end
691
-
692
- it "should detect transaction failure and report it" do
693
- allow(@transaction).to receive(:evaluate).and_raise(RuntimeError, 'transaction failed.')
694
- report = Puppet::Transaction::Report.new('apply')
695
-
696
- expect { @catalog.apply(:report => report) }.to raise_error(RuntimeError)
697
- report.finalize_report
698
-
699
- expect(report.status).to eq('failed')
700
- end
701
-
702
- describe "host catalogs" do
703
- # super() doesn't work in the setup method for some reason
704
- before do
705
- @catalog.host_config = true
706
- allow(Puppet::Util::Storage).to receive(:store)
707
- end
708
-
709
- it "should initialize the state database before applying a catalog" do
710
- expect(Puppet::Util::Storage).to receive(:load)
711
-
712
- # Short-circuit the apply, so we know we're loading before the transaction
713
- expect(Puppet::Transaction).to receive(:new).and_raise(ArgumentError)
714
- expect { @catalog.apply }.to raise_error(ArgumentError)
715
- end
716
-
717
- it "should sync the state database after applying" do
718
- expect(Puppet::Util::Storage).to receive(:store)
719
- allow(@transaction).to receive(:any_failed?).and_return(false)
720
- @catalog.apply
721
- end
722
- end
723
-
724
- describe "non-host catalogs" do
725
- before do
726
- @catalog.host_config = false
727
- end
728
-
729
- it "should never send reports" do
730
- Puppet[:report] = true
731
- Puppet[:summarize] = true
732
- @catalog.apply
733
- end
734
-
735
- it "should never modify the state database" do
736
- expect(Puppet::Util::Storage).not_to receive(:load)
737
- expect(Puppet::Util::Storage).not_to receive(:store)
738
- @catalog.apply
739
- end
740
- end
741
- end
742
-
743
- describe "when creating a relationship graph" do
744
- before do
745
- @catalog = Puppet::Resource::Catalog.new("host")
746
- end
747
-
748
- it "should get removed when the catalog is cleaned up" do
749
- expect(@catalog.relationship_graph).to receive(:clear)
750
-
751
- @catalog.clear
752
-
753
- expect(@catalog.instance_variable_get("@relationship_graph")).to be_nil
754
- end
755
- end
756
-
757
- describe "when writing dot files" do
758
- before do
759
- @catalog = Puppet::Resource::Catalog.new("host")
760
- @name = :test
761
- @file = File.join(Puppet[:graphdir], @name.to_s + ".dot")
762
- end
763
-
764
- it "should only write when it is a host catalog" do
765
- expect(Puppet::FileSystem).not_to receive(:open).with(@file, 0640, "w:UTF-8")
766
- @catalog.host_config = false
767
- Puppet[:graph] = true
768
- @catalog.write_graph(@name)
769
- end
770
- end
771
-
772
- describe "when indirecting" do
773
- before do
774
- @real_indirection = Puppet::Resource::Catalog.indirection
775
-
776
- @indirection = double('indirection', :name => :catalog)
777
- end
778
-
779
- it "should use the value of the 'catalog_terminus' setting to determine its terminus class" do
780
- # Puppet only checks the terminus setting the first time you ask
781
- # so this returns the object to the clean state
782
- # at the expense of making this test less pure
783
- Puppet::Resource::Catalog.indirection.reset_terminus_class
784
-
785
- Puppet.settings[:catalog_terminus] = "rest"
786
- expect(Puppet::Resource::Catalog.indirection.terminus_class).to eq(:rest)
787
- end
788
-
789
- it "should allow the terminus class to be set manually" do
790
- Puppet::Resource::Catalog.indirection.terminus_class = :rest
791
- expect(Puppet::Resource::Catalog.indirection.terminus_class).to eq(:rest)
792
- end
793
-
794
- after do
795
- @real_indirection.reset_terminus_class
796
- end
797
- end
798
-
799
- describe "when converting to yaml" do
800
- before do
801
- @catalog = Puppet::Resource::Catalog.new("me")
802
- @catalog.add_edge("one", "two")
803
- end
804
-
805
- it "should be able to be dumped to yaml" do
806
- expect(YAML.dump(@catalog)).to be_instance_of(String)
807
- end
808
- end
809
-
810
- describe "when converting from yaml" do
811
- before do
812
- @catalog = Puppet::Resource::Catalog.new("me")
813
- @catalog.add_edge("one", "two")
814
-
815
- text = YAML.dump(@catalog)
816
- @newcatalog = Puppet::Util::Yaml.safe_load(text, [Puppet::Resource::Catalog])
817
- end
818
-
819
- it "should get converted back to a catalog" do
820
- expect(@newcatalog).to be_instance_of(Puppet::Resource::Catalog)
821
- end
822
-
823
- it "should have all vertices" do
824
- expect(@newcatalog.vertex?("one")).to be_truthy
825
- expect(@newcatalog.vertex?("two")).to be_truthy
826
- end
827
-
828
- it "should have all edges" do
829
- expect(@newcatalog.edge?("one", "two")).to be_truthy
830
- end
831
- end
832
- end
833
-
834
- describe Puppet::Resource::Catalog, "when converting a resource catalog to json" do
835
- include JSONMatchers
836
- include PuppetSpec::Compiler
837
-
838
- it "should validate an empty catalog against the schema" do
839
- empty_catalog = compile_to_catalog("")
840
- expect(empty_catalog.to_json).to validate_against('api/schemas/catalog.json')
841
- end
842
-
843
- it "should validate a noop catalog against the schema" do
844
- noop_catalog = compile_to_catalog("create_resources('file', {})")
845
- expect(noop_catalog.to_json).to validate_against('api/schemas/catalog.json')
846
- end
847
-
848
- it "should validate a single resource catalog against the schema" do
849
- catalog = compile_to_catalog("create_resources('file', {'/etc/foo'=>{'ensure'=>'present'}})")
850
- expect(catalog.to_json).to validate_against('api/schemas/catalog.json')
851
- end
852
-
853
- it "should validate a virtual resource catalog against the schema" do
854
- catalog = compile_to_catalog("create_resources('@file', {'/etc/foo'=>{'ensure'=>'present'}})\nrealize(File['/etc/foo'])")
855
- expect(catalog.to_json).to validate_against('api/schemas/catalog.json')
856
- end
857
-
858
- it "should validate a single exported resource catalog against the schema" do
859
- catalog = compile_to_catalog("create_resources('@@file', {'/etc/foo'=>{'ensure'=>'present'}})")
860
- expect(catalog.to_json).to validate_against('api/schemas/catalog.json')
861
- end
862
-
863
- it "should validate a single sensitive parameter resource catalog against the schema" do
864
- catalog = compile_to_catalog("create_resources('file', {'/etc/foo'=>{'ensure'=>'present','content'=>Sensitive('hunter2')}})")
865
- expect(catalog.to_json).to validate_against('api/schemas/catalog.json')
866
- end
867
-
868
- it "should validate a two resource catalog against the schema" do
869
- catalog = compile_to_catalog("create_resources('notify', {'foo'=>{'message'=>'one'}, 'bar'=>{'message'=>'two'}})")
870
- expect(catalog.to_json).to validate_against('api/schemas/catalog.json')
871
- end
872
-
873
- it "should validate a two parameter class catalog against the schema" do
874
- catalog = compile_to_catalog(<<-MANIFEST)
875
- class multi_param_class ($one, $two) {
876
- notify {'foo':
877
- message => "One is $one, two is $two",
878
- }
879
- }
880
-
881
- class {'multi_param_class':
882
- one => 'hello',
883
- two => 'world',
884
- }
885
- MANIFEST
886
- expect(catalog.to_json).to validate_against('api/schemas/catalog.json')
887
- end
888
-
889
- context 'when dealing with parameters that have non-Data values' do
890
- context 'and rich_data is enabled' do
891
- before(:each) do
892
- Puppet.push_context(
893
- :loaders => Puppet::Pops::Loaders.new(Puppet.lookup(:environments).get(Puppet[:environment])),
894
- :rich_data => true)
895
- end
896
-
897
- after(:each) do
898
- Puppet.pop_context
899
- end
900
-
901
- let(:catalog_w_regexp) { compile_to_catalog("notify {'foo': message => /[a-z]+/ }") }
902
-
903
- it 'should generate rich value hash for parameter values that are not Data' do
904
- s = catalog_w_regexp.to_json
905
- expect(s).to include('"parameters":{"message":{"__ptype":"Regexp","__pvalue":"[a-z]+"}}')
906
- end
907
-
908
- it 'should read and convert rich value hash containing Regexp from json' do
909
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog_w_regexp.to_json))
910
- message = catalog2.resource('notify', 'foo')['message']
911
- expect(message).to be_a(Regexp)
912
- expect(message).to eql(/[a-z]+/)
913
- end
914
-
915
- it 'should read and convert rich value hash containing Version from json' do
916
- catalog = compile_to_catalog("notify {'foo': message => SemVer('1.0.0') }")
917
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog.to_json))
918
- message = catalog2.resource('notify', 'foo')['message']
919
- expect(message).to be_a(SemanticPuppet::Version)
920
- expect(message).to eql(SemanticPuppet::Version.parse('1.0.0'))
921
- end
922
-
923
- it 'should read and convert rich value hash containing VersionRange from json' do
924
- catalog = compile_to_catalog("notify {'foo': message => SemVerRange('>=1.0.0') }")
925
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog.to_json))
926
- message = catalog2.resource('notify', 'foo')['message']
927
- expect(message).to be_a(SemanticPuppet::VersionRange)
928
- expect(message).to eql(SemanticPuppet::VersionRange.parse('>=1.0.0'))
929
- end
930
-
931
- it 'should read and convert rich value hash containing Timespan from json' do
932
- catalog = compile_to_catalog("notify {'foo': message => Timespan(1234) }")
933
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog.to_json))
934
- message = catalog2.resource('notify', 'foo')['message']
935
- expect(message).to be_a(Puppet::Pops::Time::Timespan)
936
- expect(message).to eql(Puppet::Pops::Time::Timespan.parse('1234', '%S'))
937
- end
938
-
939
- it 'should read and convert rich value hash containing Timestamp from json' do
940
- catalog = compile_to_catalog("notify {'foo': message => Timestamp('2016-09-15T08:32:16.123 UTC') }")
941
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog.to_json))
942
- message = catalog2.resource('notify', 'foo')['message']
943
- expect(message).to be_a(Puppet::Pops::Time::Timestamp)
944
- expect(message).to eql(Puppet::Pops::Time::Timestamp.parse('2016-09-15T08:32:16.123 UTC'))
945
- end
946
-
947
- it 'should read and convert rich value hash containing hash with rich data from json' do
948
- catalog = compile_to_catalog("notify {'foo': message => { 'version' => SemVer('1.0.0'), 'time' => Timestamp('2016-09-15T08:32:16.123 UTC') }}")
949
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog.to_json))
950
- message = catalog2.resource('notify', 'foo')['message']
951
- expect(message).to be_a(Hash)
952
- expect(message['version']).to eql(SemanticPuppet::Version.parse('1.0.0'))
953
- expect(message['time']).to eql(Puppet::Pops::Time::Timestamp.parse('2016-09-15T08:32:16.123 UTC'))
954
- end
955
-
956
- it 'should read and convert rich value hash containing an array with rich data from json' do
957
- catalog = compile_to_catalog("notify {'foo': message => [ SemVer('1.0.0'), Timestamp('2016-09-15T08:32:16.123 UTC') ] }")
958
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog.to_json))
959
- message = catalog2.resource('notify', 'foo')['message']
960
- expect(message).to be_a(Array)
961
- expect(message[0]).to eql(SemanticPuppet::Version.parse('1.0.0'))
962
- expect(message[1]).to eql(Puppet::Pops::Time::Timestamp.parse('2016-09-15T08:32:16.123 UTC'))
963
- end
964
- end
965
-
966
- context 'and rich_data is disabled' do
967
- before(:each) do
968
- Puppet[:rich_data] = false
969
- end
970
-
971
- let(:catalog_w_regexp) { compile_to_catalog("notify {'foo': message => /[a-z]+/ }") }
972
-
973
- it 'should not generate rich value hash for parameter values that are not Data' do
974
- expect(catalog_w_regexp.to_json).not_to include('"__ptype"')
975
- end
976
-
977
- it 'should convert parameter containing Regexp into strings' do
978
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog_w_regexp.to_json))
979
- message = catalog2.resource('notify', 'foo')['message']
980
- expect(message).to be_a(String)
981
- expect(message).to eql('/[a-z]+/')
982
- end
983
-
984
- it 'should convert parameter containing Version into string' do
985
- catalog = compile_to_catalog("notify {'foo': message => SemVer('1.0.0') }")
986
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog.to_json))
987
- message = catalog2.resource('notify', 'foo')['message']
988
- expect(message).to be_a(String)
989
- expect(message).to eql('1.0.0')
990
- end
991
-
992
- it 'should convert parameter containing VersionRange into string' do
993
- catalog = compile_to_catalog("notify {'foo': message => SemVerRange('>=1.0.0') }")
994
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog.to_json))
995
- message = catalog2.resource('notify', 'foo')['message']
996
- expect(message).to be_a(String)
997
- expect(message).to eql('>=1.0.0')
998
- end
999
-
1000
- it 'should convert parameter containing Timespan into string' do
1001
- catalog = compile_to_catalog("notify {'foo': message => Timespan(1234) }")
1002
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog.to_json))
1003
- message = catalog2.resource('notify', 'foo')['message']
1004
- expect(message).to be_a(String)
1005
- expect(message).to eql('0-00:20:34.0')
1006
- end
1007
-
1008
- it 'should convert parameter containing Timestamp into string' do
1009
- catalog = compile_to_catalog("notify {'foo': message => Timestamp('2016-09-15T08:32:16.123 UTC') }")
1010
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog.to_json))
1011
- message = catalog2.resource('notify', 'foo')['message']
1012
- expect(message).to be_a(String)
1013
- expect(message).to eql('2016-09-15T08:32:16.123000000 UTC')
1014
- end
1015
-
1016
- it 'should convert param containing array with :undef entries' do
1017
- catalog = compile_to_catalog("notify {'foo': message => [ 10, undef, 20 ] }")
1018
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog.to_json))
1019
- message = catalog2.resource('notify', 'foo')['message']
1020
- expect(message).to be_a(Array)
1021
- expect(message[0]).to eql(10)
1022
- expect(message[1]).to eql(nil)
1023
- expect(message[2]).to eql(20)
1024
- end
1025
-
1026
- it 'should convert param containing hash with :undef entries' do
1027
- catalog = compile_to_catalog("notify {'foo': message => {a => undef, b => 10}}")
1028
- catalog2 = Puppet::Resource::Catalog.from_data_hash(JSON.parse(catalog.to_json))
1029
- message = catalog2.resource('notify', 'foo')['message']
1030
- expect(message).to be_a(Hash)
1031
- expect(message.has_key?('a')).to eql(true)
1032
- expect(message['a']).to eql(nil)
1033
- expect(message['b']).to eql(10)
1034
- end
1035
- end
1036
- end
1037
- end
1038
-
1039
- describe Puppet::Resource::Catalog, "when converting to json" do
1040
- before do
1041
- @catalog = Puppet::Resource::Catalog.new("myhost")
1042
- end
1043
-
1044
- { :name => 'myhost',
1045
- :version => 42,
1046
- :code_id => 'b59e5df0578ef411f773ee6c33d8073c50e7b8fe',
1047
- :catalog_uuid => '827a74c8-cf98-44da-9ff7-18c5e4bee41e',
1048
- :catalog_format => 42
1049
- }.each do |param, value|
1050
- it "emits a #{param} equal to #{value.inspect}" do
1051
- @catalog.send(param.to_s + "=", value)
1052
- json = JSON.parse(@catalog.to_json)
1053
-
1054
- expect(json[param.to_s]).to eq(@catalog.send(param))
1055
- end
1056
- end
1057
-
1058
- it "emits an array of classes" do
1059
- @catalog.add_class('foo')
1060
- json = JSON.parse(@catalog.to_json)
1061
-
1062
- expect(json['classes']).to eq(['foo'])
1063
- end
1064
-
1065
- it "should convert its resources to a JSON-encoded array and store it as the 'resources' data" do
1066
- one = double('one', :to_data_hash => "one_resource", :ref => "Foo[one]")
1067
- two = double('two', :to_data_hash => "two_resource", :ref => "Foo[two]")
1068
-
1069
- expect(one).to receive(:'[]').with(:alias).and_return(nil)
1070
- expect(two).to receive(:'[]').with(:alias).and_return(nil)
1071
-
1072
- @catalog.add_resource(one)
1073
- @catalog.add_resource(two)
1074
-
1075
- # TODO this should really guarantee sort order
1076
- expect(JSON.parse(@catalog.to_json,:create_additions => false)['resources'].sort).to eq(["one_resource", "two_resource"].sort)
1077
- end
1078
-
1079
- it "should convert its edges to a JSON-encoded array and store it as the 'edges' data" do
1080
- one = double('one', :to_data_hash => "one_resource", :ref => 'Foo[one]')
1081
- two = double('two', :to_data_hash => "two_resource", :ref => 'Foo[two]')
1082
- three = double('three', :to_data_hash => "three_resource", :ref => 'Foo[three]')
1083
-
1084
- @catalog.add_edge(one, two)
1085
- @catalog.add_edge(two, three)
1086
-
1087
- expect(@catalog.edges_between(one, two )[0]).to receive(:to_data_hash).and_return("one_two_json")
1088
- expect(@catalog.edges_between(two, three)[0]).to receive(:to_data_hash).and_return("two_three_json")
1089
-
1090
- expect(JSON.parse(@catalog.to_json,:create_additions => false)['edges'].sort).to eq(%w{one_two_json two_three_json}.sort)
1091
- end
1092
- end
1093
-
1094
- describe Puppet::Resource::Catalog, "when converting from json" do
1095
- before do
1096
- @data = {
1097
- 'name' => "myhost"
1098
- }
1099
- end
1100
-
1101
- it 'should create it with the provided name' do
1102
- @data['version'] = 50
1103
- @data['code_id'] = 'b59e5df0578ef411f773ee6c33d8073c50e7b8fe'
1104
- @data['catalog_uuid'] = '827a74c8-cf98-44da-9ff7-18c5e4bee41e'
1105
- @data['catalog_format'] = 42
1106
- @data['tags'] = %w{one two}
1107
- @data['classes'] = %w{one two}
1108
- @data['edges'] = [Puppet::Relationship.new('File[/foo]', 'File[/bar]',
1109
- :event => :one,
1110
- :callback => :refresh).to_data_hash]
1111
- @data['resources'] = [Puppet::Resource.new(:file, '/foo').to_data_hash,
1112
- Puppet::Resource.new(:file, '/bar').to_data_hash]
1113
-
1114
-
1115
- catalog = Puppet::Resource::Catalog.from_data_hash JSON.parse @data.to_json
1116
-
1117
- expect(catalog.name).to eq('myhost')
1118
- expect(catalog.version).to eq(@data['version'])
1119
- expect(catalog.code_id).to eq(@data['code_id'])
1120
- expect(catalog.catalog_uuid).to eq(@data['catalog_uuid'])
1121
- expect(catalog.catalog_format).to eq(@data['catalog_format'])
1122
- expect(catalog).to be_tagged('one')
1123
- expect(catalog).to be_tagged('two')
1124
-
1125
- expect(catalog.classes).to eq(@data['classes'])
1126
- expect(catalog.resources.collect(&:ref)).to eq(['File[/foo]', 'File[/bar]'])
1127
-
1128
- expect(catalog.edges.collect(&:event)).to eq([:one])
1129
- expect(catalog.edges[0].source).to eq(catalog.resource(:file, '/foo'))
1130
- expect(catalog.edges[0].target).to eq(catalog.resource(:file, '/bar'))
1131
- end
1132
-
1133
- it "defaults the catalog_format to 0" do
1134
- catalog = Puppet::Resource::Catalog.from_data_hash JSON.parse @data.to_json
1135
- expect(catalog.catalog_format).to eq(0)
1136
- end
1137
-
1138
- it "should fail if the source resource cannot be found" do
1139
- @data['edges'] = [Puppet::Relationship.new("File[/missing]", "File[/bar]").to_data_hash]
1140
- @data['resources'] = [Puppet::Resource.new(:file, "/bar").to_data_hash]
1141
-
1142
- expect { Puppet::Resource::Catalog.from_data_hash JSON.parse @data.to_json }.to raise_error(ArgumentError, /Could not find relationship source/)
1143
- end
1144
-
1145
- it "should fail if the target resource cannot be found" do
1146
- @data['edges'] = [Puppet::Relationship.new("File[/bar]", "File[/missing]").to_data_hash]
1147
- @data['resources'] = [Puppet::Resource.new(:file, "/bar").to_data_hash]
1148
-
1149
- expect { Puppet::Resource::Catalog.from_data_hash JSON.parse @data.to_json }.to raise_error(ArgumentError, /Could not find relationship target/)
1150
- end
1151
- end