puppet 4.4.2-universal-darwin → 4.5.0-universal-darwin

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

Potentially problematic release.


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

Files changed (218) hide show
  1. data/CONTRIBUTING.md +5 -5
  2. data/Gemfile +2 -2
  3. data/LICENSE +2 -2
  4. data/README.md +5 -0
  5. data/ext/project_data.yaml +2 -0
  6. data/lib/hiera_puppet.rb +6 -14
  7. data/lib/puppet/application/agent.rb +2 -3
  8. data/lib/puppet/data_providers/hiera_config.rb +2 -4
  9. data/lib/puppet/data_providers/hiera_interpolate.rb +12 -154
  10. data/lib/puppet/data_providers/json_data_provider_factory.rb +0 -7
  11. data/lib/puppet/data_providers/yaml_data_provider_factory.rb +2 -8
  12. data/lib/puppet/defaults.rb +70 -7
  13. data/lib/puppet/functions.rb +69 -0
  14. data/lib/puppet/functions/dig.rb +39 -0
  15. data/lib/puppet/functions/lest.rb +53 -0
  16. data/lib/puppet/functions/lookup.rb +40 -27
  17. data/lib/puppet/functions/new.rb +502 -0
  18. data/lib/puppet/functions/regsubst.rb +11 -10
  19. data/lib/puppet/functions/then.rb +74 -0
  20. data/lib/puppet/functions/type.rb +4 -4
  21. data/lib/puppet/functions/with.rb +1 -1
  22. data/lib/puppet/indirector/catalog/compiler.rb +2 -0
  23. data/lib/puppet/indirector/resource_type/parser.rb +5 -0
  24. data/lib/puppet/indirector/rest.rb +5 -1
  25. data/lib/puppet/loaders.rb +2 -0
  26. data/lib/puppet/metatype/manager.rb +19 -2
  27. data/lib/puppet/module_tool/applications/application.rb +1 -1
  28. data/lib/puppet/module_tool/skeleton/templates/generator/Gemfile +6 -2
  29. data/lib/puppet/module_tool/skeleton/templates/generator/Rakefile +19 -4
  30. data/lib/puppet/module_tool/skeleton/templates/generator/{tests → examples}/init.pp.erb +1 -1
  31. data/lib/puppet/module_tool/skeleton/templates/generator/spec/classes/init_spec.rb.erb +0 -1
  32. data/lib/puppet/network/http/api/master/v3/environment.rb +6 -2
  33. data/lib/puppet/parser/ast/pops_bridge.rb +20 -3
  34. data/lib/puppet/parser/compiler/catalog_validator/relationship_validator.rb +24 -2
  35. data/lib/puppet/parser/e4_parser_adapter.rb +13 -12
  36. data/lib/puppet/parser/environment_compiler.rb +2 -2
  37. data/lib/puppet/parser/resource.rb +14 -5
  38. data/lib/puppet/parser/scope.rb +18 -15
  39. data/lib/puppet/plugins/data_providers/data_provider.rb +19 -8
  40. data/lib/puppet/pops.rb +6 -0
  41. data/lib/puppet/pops/adapters.rb +5 -1
  42. data/lib/puppet/pops/evaluator/access_operator.rb +52 -14
  43. data/lib/puppet/pops/evaluator/compare_operator.rb +34 -4
  44. data/lib/puppet/pops/evaluator/evaluator_impl.rb +75 -22
  45. data/lib/puppet/pops/evaluator/literal_evaluator.rb +7 -6
  46. data/lib/puppet/pops/evaluator/runtime3_converter.rb +13 -1
  47. data/lib/puppet/pops/evaluator/runtime3_support.rb +14 -4
  48. data/lib/puppet/pops/functions/dispatcher.rb +1 -1
  49. data/lib/puppet/pops/issues.rb +18 -2
  50. data/lib/puppet/pops/loader/base_loader.rb +48 -7
  51. data/lib/puppet/pops/loader/dependency_loader.rb +27 -2
  52. data/lib/puppet/pops/loader/loader.rb +12 -0
  53. data/lib/puppet/pops/loader/predefined_loader.rb +29 -0
  54. data/lib/puppet/pops/loader/runtime3_type_loader.rb +57 -0
  55. data/lib/puppet/pops/loader/static_loader.rb +92 -5
  56. data/lib/puppet/pops/loader/type_definition_instantiator.rb +25 -3
  57. data/lib/puppet/pops/loaders.rb +84 -14
  58. data/lib/puppet/pops/lookup/explainer.rb +38 -1
  59. data/lib/puppet/pops/lookup/interpolation.rb +115 -0
  60. data/lib/puppet/pops/lookup/sub_lookup.rb +86 -0
  61. data/lib/puppet/pops/model/ast_transformer.rb +8 -1
  62. data/lib/puppet/pops/model/factory.rb +31 -8
  63. data/lib/puppet/pops/model/model.rb +8 -0
  64. data/lib/puppet/pops/model/model_label_provider.rb +1 -0
  65. data/lib/puppet/pops/model/model_meta.rb +7 -1
  66. data/lib/puppet/pops/model/model_tree_dumper.rb +4 -0
  67. data/lib/puppet/pops/parser/egrammar.ra +24 -7
  68. data/lib/puppet/pops/parser/eparser.rb +863 -798
  69. data/lib/puppet/pops/parser/evaluating_parser.rb +4 -0
  70. data/lib/puppet/pops/parser/locator.rb +8 -4
  71. data/lib/puppet/pops/pcore.rb +30 -0
  72. data/lib/puppet/pops/types/class_loader.rb +2 -4
  73. data/lib/puppet/pops/types/implementation_registry.rb +146 -0
  74. data/lib/puppet/pops/types/iterable.rb +4 -4
  75. data/lib/puppet/pops/types/p_object_type.rb +846 -0
  76. data/lib/puppet/pops/types/p_runtime_type.rb +102 -0
  77. data/lib/puppet/pops/types/p_sem_ver_range_type.rb +164 -0
  78. data/lib/puppet/pops/types/p_sem_ver_type.rb +113 -0
  79. data/lib/puppet/pops/types/puppet_object.rb +21 -0
  80. data/lib/puppet/pops/types/ruby_generator.rb +258 -0
  81. data/lib/puppet/pops/types/string_converter.rb +922 -0
  82. data/lib/puppet/pops/types/type_calculator.rb +29 -5
  83. data/lib/puppet/pops/types/type_conversion_error.rb +15 -0
  84. data/lib/puppet/pops/types/type_factory.rb +49 -16
  85. data/lib/puppet/pops/types/type_formatter.rb +335 -112
  86. data/lib/puppet/pops/types/type_mismatch_describer.rb +110 -29
  87. data/lib/puppet/pops/types/type_parser.rb +205 -197
  88. data/lib/puppet/pops/types/types.rb +481 -103
  89. data/lib/puppet/pops/validation.rb +1 -1
  90. data/lib/puppet/pops/validation/checker4_0.rb +66 -4
  91. data/lib/puppet/pops/validation/validator_factory_4_0.rb +1 -0
  92. data/lib/puppet/pops/visitor.rb +3 -1
  93. data/lib/puppet/property.rb +1 -1
  94. data/lib/puppet/provider/augeas/augeas.rb +1 -1
  95. data/lib/puppet/provider/package/pip.rb +64 -20
  96. data/lib/puppet/provider/package/rpm.rb +112 -0
  97. data/lib/puppet/provider/package/yum.rb +7 -68
  98. data/lib/puppet/provider/service/daemontools.rb +3 -3
  99. data/lib/puppet/provider/service/init.rb +4 -2
  100. data/lib/puppet/provider/service/runit.rb +3 -3
  101. data/lib/puppet/provider/service/smf.rb +6 -3
  102. data/lib/puppet/provider/service/systemd.rb +59 -73
  103. data/lib/puppet/reference/providers.rb +1 -2
  104. data/lib/puppet/resource.rb +54 -37
  105. data/lib/puppet/resource/catalog.rb +31 -29
  106. data/lib/puppet/resource/type_collection.rb +23 -8
  107. data/lib/puppet/settings.rb +4 -2
  108. data/lib/puppet/settings/base_setting.rb +9 -3
  109. data/lib/puppet/settings/symbolic_enum_setting.rb +17 -0
  110. data/lib/puppet/test/test_helper.rb +0 -1
  111. data/lib/puppet/type.rb +9 -3
  112. data/lib/puppet/type/exec.rb +17 -17
  113. data/lib/puppet/type/file.rb +12 -0
  114. data/lib/puppet/type/file/content.rb +6 -6
  115. data/lib/puppet/type/file/ensure.rb +4 -4
  116. data/lib/puppet/type/file/source.rb +4 -4
  117. data/lib/puppet/type/file/target.rb +2 -2
  118. data/lib/puppet/type/mount.rb +18 -1
  119. data/lib/puppet/type/package.rb +3 -3
  120. data/lib/puppet/type/schedule.rb +4 -4
  121. data/lib/puppet/type/service.rb +15 -0
  122. data/lib/puppet/type/sshkey.rb +5 -3
  123. data/lib/puppet/type/tidy.rb +3 -3
  124. data/lib/puppet/type/zone.rb +5 -5
  125. data/lib/puppet/util/feature.rb +1 -1
  126. data/lib/puppet/util/monkey_patches.rb +8 -0
  127. data/lib/puppet/util/network_device/cisco/device.rb +16 -6
  128. data/lib/puppet/util/network_device/cisco/interface.rb +5 -6
  129. data/lib/puppet/util/plist.rb +3 -3
  130. data/lib/puppet/version.rb +1 -1
  131. data/spec/fixtures/unit/application/environments/production/data/common.yaml +13 -0
  132. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/lib/puppet/functions/abc/data.rb +2 -1
  133. data/spec/fixtures/unit/data_providers/environments/production/modules/abc/manifests/init.pp +2 -1
  134. data/spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_json/data/empty_key.json +1 -0
  135. data/spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_json/hiera.yaml +5 -0
  136. data/spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_json/manifests/init.pp +2 -0
  137. data/spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_json/metadata.json +9 -0
  138. data/spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_yaml/data/empty_key.yaml +1 -0
  139. data/spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_yaml/hiera.yaml +5 -0
  140. data/spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_yaml/manifests/init.pp +2 -0
  141. data/spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_yaml/metadata.json +9 -0
  142. data/spec/fixtures/unit/functions/lookup/environments/production/modules/empty_yaml/data/empty.yaml +1 -0
  143. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/type/usee_type.rb +5 -0
  144. data/spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/manifests/init.pp +6 -0
  145. data/spec/fixtures/unit/provider/service/smf/svcs.out +4 -3
  146. data/spec/integration/module_tool/tar/mini_spec.rb +27 -27
  147. data/spec/integration/parser/catalog_spec.rb +14 -2
  148. data/spec/integration/parser/compiler_spec.rb +94 -3
  149. data/spec/integration/parser/resource_expressions_spec.rb +1 -1
  150. data/spec/integration/resource/type_collection_spec.rb +8 -0
  151. data/spec/lib/puppet_spec/compiler.rb +11 -4
  152. data/spec/shared_contexts/types_setup.rb +4 -0
  153. data/spec/unit/application/lookup_spec.rb +91 -9
  154. data/spec/unit/appmgmt_spec.rb +44 -35
  155. data/spec/unit/capability_spec.rb +33 -53
  156. data/spec/unit/data_providers/function_data_provider_spec.rb +19 -1
  157. data/spec/unit/data_providers/hiera_data_provider_spec.rb +1 -1
  158. data/spec/unit/defaults_spec.rb +18 -0
  159. data/spec/unit/functions/assert_type_spec.rb +1 -1
  160. data/spec/unit/functions/dig_spec.rb +58 -0
  161. data/spec/unit/functions/lest_spec.rb +34 -0
  162. data/spec/unit/functions/lookup_spec.rb +108 -2
  163. data/spec/unit/functions/new_spec.rb +543 -0
  164. data/spec/unit/functions/regsubst_spec.rb +8 -0
  165. data/spec/unit/functions/then_spec.rb +40 -0
  166. data/spec/unit/functions4_spec.rb +78 -10
  167. data/spec/unit/hiera_puppet_spec.rb +49 -8
  168. data/spec/unit/indirector/resource_type/parser_spec.rb +5 -0
  169. data/spec/unit/indirector/rest_spec.rb +12 -0
  170. data/spec/unit/network/http/api/master/v3/environment_spec.rb +60 -0
  171. data/spec/unit/node/environment_spec.rb +10 -0
  172. data/spec/unit/parser/compiler_spec.rb +20 -1
  173. data/spec/unit/parser/functions/create_resources_spec.rb +2 -2
  174. data/spec/unit/parser/functions/shared.rb +1 -1
  175. data/spec/unit/parser/resource_spec.rb +8 -1
  176. data/spec/unit/parser/scope_spec.rb +45 -0
  177. data/spec/unit/pops/evaluator/access_ops_spec.rb +14 -0
  178. data/spec/unit/pops/evaluator/evaluating_parser_spec.rb +13 -5
  179. data/spec/unit/pops/loaders/static_loader_spec.rb +92 -1
  180. data/spec/unit/{data_providers/hiera_interpolation_spec.rb → pops/lookup/interpolation_spec.rb} +7 -5
  181. data/spec/unit/pops/parser/lexer2_spec.rb +2 -9
  182. data/spec/unit/pops/parser/parse_application_spec.rb +3 -8
  183. data/spec/unit/pops/parser/parse_basic_expressions_spec.rb +19 -0
  184. data/spec/unit/pops/parser/parse_capabilities_spec.rb +3 -10
  185. data/spec/unit/pops/parser/parse_site_spec.rb +19 -10
  186. data/spec/unit/pops/parser/parser_rspec_helper.rb +0 -4
  187. data/spec/unit/pops/types/enumeration_spec.rb +13 -12
  188. data/spec/unit/pops/types/iterable_spec.rb +2 -2
  189. data/spec/unit/pops/types/p_object_type_spec.rb +1060 -0
  190. data/spec/unit/pops/types/p_sem_ver_type_spec.rb +285 -0
  191. data/spec/unit/pops/types/recursion_guard_spec.rb +19 -17
  192. data/spec/unit/pops/types/ruby_generator_spec.rb +261 -0
  193. data/spec/unit/pops/types/string_converter_spec.rb +904 -0
  194. data/spec/unit/pops/types/type_calculator_spec.rb +430 -406
  195. data/spec/unit/pops/types/type_factory_spec.rb +119 -104
  196. data/spec/unit/pops/types/type_formatter_spec.rb +73 -6
  197. data/spec/unit/pops/types/type_mismatch_describer_spec.rb +2 -2
  198. data/spec/unit/pops/types/type_parser_spec.rb +54 -15
  199. data/spec/unit/pops/types/types_spec.rb +113 -8
  200. data/spec/unit/pops/validator/validator_spec.rb +84 -10
  201. data/spec/unit/provider/package/pip3_spec.rb +9 -270
  202. data/spec/unit/provider/package/pip_spec.rb +85 -30
  203. data/spec/unit/provider/package/rpm_spec.rb +160 -3
  204. data/spec/unit/provider/package/yum_spec.rb +23 -134
  205. data/spec/unit/provider/service/smf_spec.rb +14 -2
  206. data/spec/unit/provider/service/systemd_spec.rb +33 -41
  207. data/spec/unit/resource/capability_finder_spec.rb +10 -2
  208. data/spec/unit/settings/file_setting_spec.rb +6 -0
  209. data/spec/unit/transaction/additional_resource_generator_spec.rb +80 -65
  210. data/spec/unit/type/mount_spec.rb +51 -10
  211. data/spec/unit/type/service_spec.rb +16 -0
  212. data/spec/unit/type_spec.rb +14 -0
  213. data/spec/unit/util/feature_spec.rb +1 -1
  214. data/spec/unit/util/monkey_patches_spec.rb +60 -0
  215. data/spec/unit/util/network_device/cisco/device_spec.rb +1 -1
  216. metadata +63 -11
  217. data/lib/puppet/pops/types/types_meta.rb +0 -0
  218. data/spec/integration/provider/package_spec.rb +0 -35
@@ -20,13 +20,21 @@ describe Puppet::Resource::CapabilityFinder do
20
20
  end
21
21
  end
22
22
  begin
23
- make_cap_type
24
- example.run
23
+ Puppet::Parser::Compiler.any_instance.stubs(:loaders).returns(loaders)
24
+ Puppet.override(:loaders => loaders, :current_environment => env) do
25
+ make_cap_type
26
+ example.run
27
+ end
25
28
  ensure
26
29
  Puppet::Util.send(:remove_const, 'Puppetdb') if mock_pdb
30
+ Puppet::Type.rmtype(:cap)
31
+ Puppet::Pops::Loaders.clear
27
32
  end
28
33
  end
29
34
 
35
+ let(:env) { Puppet::Node::Environment.create(:testing, []) }
36
+ let(:loaders) { Puppet::Pops::Loaders.new(env) }
37
+
30
38
  let(:response_body) { [{"type"=>"Cap", "title"=>"cap", "parameters"=>{"host"=>"ahost"}}] }
31
39
  let(:response) { stub('response', :body => response_body.to_json) }
32
40
 
@@ -169,6 +169,12 @@ describe Puppet::Settings::FileSetting do
169
169
  expect(resource.title).to eq(@basepath)
170
170
  end
171
171
 
172
+ it "should have a working directory with a root directory not called dev", :if => Puppet.features.microsoft_windows? do
173
+ # Although C:\Dev\.... is a valid path on Windows, some other code may regard it as a path to be ignored. e.g. /dev/null resolves to C:\dev\null on Windows.
174
+ path = File.expand_path('somefile')
175
+ expect(path).to_not match(/^[A-Z]:\/dev/i)
176
+ end
177
+
172
178
  it "should fully qualified returned files if necessary (#795)" do
173
179
  @settings.stubs(:value).with(:myfile, nil, false).returns "myfile"
174
180
  path = File.expand_path('myfile')
@@ -12,86 +12,101 @@ describe Puppet::Transaction::AdditionalResourceGenerator do
12
12
  include Matchers::Resource
13
13
 
14
14
  let(:prioritizer) { Puppet::Graph::SequentialPrioritizer.new }
15
+ let(:env) { Puppet::Node::Environment.create(:testing, []) }
16
+ let(:node) { Puppet::Node.new('test', :environment => env) }
17
+ let(:loaders) { Puppet::Pops::Loaders.new(env) }
18
+
19
+ around :each do |example|
20
+ Puppet::Parser::Compiler.any_instance.stubs(:loaders).returns(loaders)
21
+ Puppet.override(:loaders => loaders, :current_environment => env) do
22
+ Puppet::Type.newtype(:generator) do
23
+ include PuppetSpec::Compiler
24
+
25
+ newparam(:name) do
26
+ isnamevar
27
+ end
28
+
29
+ newparam(:kind) do
30
+ defaultto :eval_generate
31
+ newvalues(:eval_generate, :generate)
32
+ end
33
+
34
+ newparam(:code)
35
+
36
+ def respond_to?(method_name)
37
+ method_name == self[:kind] || super
38
+ end
39
+
40
+ def eval_generate
41
+ eval_code
42
+ end
43
+
44
+ def generate
45
+ eval_code
46
+ end
47
+
48
+ def eval_code
49
+ if self[:code]
50
+ compile_to_ral(self[:code]).resources.select { |r| r.ref =~ /Notify/ }
51
+ else
52
+ []
53
+ end
54
+ end
55
+ end
15
56
 
16
- def find_vertex(graph, type, title)
17
- graph.vertices.find {|v| v.type == type and v.title == title}
18
- end
19
-
20
- Puppet::Type.newtype(:generator) do
21
- include PuppetSpec::Compiler
22
-
23
- newparam(:name) do
24
- isnamevar
25
- end
26
-
27
- newparam(:kind) do
28
- defaultto :eval_generate
29
- newvalues(:eval_generate, :generate)
30
- end
31
-
32
- newparam(:code)
57
+ Puppet::Type.newtype(:autorequire) do
58
+ newparam(:name) do
59
+ isnamevar
60
+ end
33
61
 
34
- def respond_to?(method_name)
35
- method_name == self[:kind] || super
36
- end
62
+ autorequire(:notify) do
63
+ self[:name]
64
+ end
65
+ end
37
66
 
38
- def eval_generate
39
- eval_code
40
- end
67
+ Puppet::Type.newtype(:gen_auto) do
68
+ newparam(:name) do
69
+ isnamevar
70
+ end
41
71
 
42
- def generate
43
- eval_code
44
- end
72
+ newparam(:eval_after) do
73
+ end
45
74
 
46
- def eval_code
47
- if self[:code]
48
- compile_to_ral(self[:code]).resources.select { |r| r.ref =~ /Notify/ }
49
- else
50
- []
75
+ def generate()
76
+ [ Puppet::Type.type(:autorequire).new(:name => self[:eval_after]) ]
77
+ end
51
78
  end
52
- end
53
- end
54
79
 
55
- Puppet::Type.newtype(:autorequire) do
56
- newparam(:name) do
57
- isnamevar
58
- end
80
+ Puppet::Type.newtype(:empty) do
81
+ newparam(:name) do
82
+ isnamevar
83
+ end
84
+ end
59
85
 
60
- autorequire(:notify) do
61
- self[:name]
62
- end
63
- end
86
+ Puppet::Type.newtype(:gen_empty) do
87
+ newparam(:name) do
88
+ isnamevar
89
+ end
64
90
 
65
- Puppet::Type.newtype(:gen_auto) do
66
- newparam(:name) do
67
- isnamevar
68
- end
91
+ newparam(:eval_after) do
92
+ end
69
93
 
70
- newparam(:eval_after) do
71
- end
94
+ def generate()
95
+ [ Puppet::Type.type(:empty).new(:name => self[:eval_after], :require => "Notify[#{self[:eval_after]}]") ]
96
+ end
97
+ end
72
98
 
73
- def generate()
74
- [ Puppet::Type.type(:autorequire).new(:name => self[:eval_after]) ]
75
- end
76
- end
99
+ example.run
77
100
 
78
- Puppet::Type.newtype(:empty) do
79
- newparam(:name) do
80
- isnamevar
101
+ Puppet::Type.rmtype(:gen_empty)
102
+ Puppet::Type.rmtype(:eval_after)
103
+ Puppet::Type.rmtype(:autorequire)
104
+ Puppet::Type.rmtype(:generator)
81
105
  end
82
106
  end
83
107
 
84
- Puppet::Type.newtype(:gen_empty) do
85
- newparam(:name) do
86
- isnamevar
87
- end
88
-
89
- newparam(:eval_after) do
90
- end
91
-
92
- def generate()
93
- [ Puppet::Type.type(:empty).new(:name => self[:eval_after], :require => "Notify[#{self[:eval_after]}]") ]
94
- end
108
+ def find_vertex(graph, type, title)
109
+ graph.vertices.find {|v| v.type == type and v.title == title}
95
110
  end
96
111
 
97
112
  context "when applying eval_generate" do
@@ -545,15 +545,23 @@ describe Puppet::Type.type(:mount), :unless => Puppet.features.microsoft_windows
545
545
  end
546
546
  end
547
547
 
548
- describe "establishing autorequires" do
548
+ describe "establishing autorequires and autobefores" do
549
549
 
550
- def create_resource(path)
550
+ def create_mount_resource(path)
551
551
  described_class.new(
552
552
  :name => path,
553
553
  :provider => providerclass.new(path)
554
554
  )
555
555
  end
556
556
 
557
+ def create_file_resource(path)
558
+ file_class = Puppet::Type.type(:file)
559
+ file_class.new(
560
+ :path => path,
561
+ :provider => file_class.new(:path => path).provider
562
+ )
563
+ end
564
+
557
565
  def create_catalog(*resources)
558
566
  catalog = Puppet::Resource::Catalog.new
559
567
  resources.each do |resource|
@@ -563,38 +571,71 @@ describe Puppet::Type.type(:mount), :unless => Puppet.features.microsoft_windows
563
571
  catalog
564
572
  end
565
573
 
566
- let(:root_mount) { create_resource("/") }
567
- let(:var_mount) { create_resource("/var") }
568
- let(:log_mount) { create_resource("/var/log") }
574
+ let(:root_mount) { create_mount_resource("/") }
575
+ let(:var_mount) { create_mount_resource("/var") }
576
+ let(:log_mount) { create_mount_resource("/var/log") }
577
+ let(:var_file) { create_file_resource('/var') }
578
+ let(:log_file) { create_file_resource('/var/log') }
579
+ let(:puppet_file) { create_file_resource('/var/log/puppet') }
569
580
 
570
581
  before do
571
- create_catalog(root_mount, var_mount, log_mount)
582
+ create_catalog(root_mount, var_mount, log_mount, var_file, log_file, puppet_file)
572
583
  end
573
584
 
574
585
  it "adds no autorequires for the root mount" do
575
586
  expect(root_mount.autorequire).to be_empty
576
587
  end
577
588
 
578
- it "adds the parent autorequire for a mount with one parent" do
589
+ it "adds the parent autorequire and the file autorequire for a mount with one parent" do
579
590
  parent_relationship = var_mount.autorequire[0]
591
+ file_relationship = var_mount.autorequire[1]
580
592
 
581
- expect(var_mount.autorequire).to have_exactly(1).item
593
+ expect(var_mount.autorequire).to have_exactly(2).items
582
594
 
583
595
  expect(parent_relationship.source).to eq root_mount
584
596
  expect(parent_relationship.target).to eq var_mount
597
+
598
+ expect(file_relationship.source).to eq var_file
599
+ expect(file_relationship.target).to eq var_mount
585
600
  end
586
601
 
587
- it "adds both parent autorequires for a mount with two parents" do
602
+ it "adds both parent autorequires and the file autorequire for a mount with two parents" do
588
603
  grandparent_relationship = log_mount.autorequire[0]
589
604
  parent_relationship = log_mount.autorequire[1]
605
+ file_relationship = log_mount.autorequire[2]
590
606
 
591
- expect(log_mount.autorequire).to have_exactly(2).items
607
+ expect(log_mount.autorequire).to have_exactly(3).items
592
608
 
593
609
  expect(grandparent_relationship.source).to eq root_mount
594
610
  expect(grandparent_relationship.target).to eq log_mount
595
611
 
596
612
  expect(parent_relationship.source).to eq var_mount
597
613
  expect(parent_relationship.target).to eq log_mount
614
+
615
+ expect(file_relationship.source).to eq log_file
616
+ expect(file_relationship.target).to eq log_mount
617
+ end
618
+
619
+ it "adds the child autobefore for a mount with one file child" do
620
+ child_relationship = log_mount.autobefore[0]
621
+
622
+ expect(log_mount.autobefore).to have_exactly(1).item
623
+
624
+ expect(child_relationship.source).to eq log_mount
625
+ expect(child_relationship.target).to eq puppet_file
626
+ end
627
+
628
+ it "adds both child autobefores for a mount with two file childs" do
629
+ child_relationship = var_mount.autobefore[0]
630
+ grandchild_relationship = var_mount.autobefore[1]
631
+
632
+ expect(var_mount.autobefore).to have_exactly(2).items
633
+
634
+ expect(child_relationship.source).to eq var_mount
635
+ expect(child_relationship.target).to eq log_file
636
+
637
+ expect(grandchild_relationship.source).to eq var_mount
638
+ expect(grandchild_relationship.target).to eq puppet_file
598
639
  end
599
640
  end
600
641
  end
@@ -218,6 +218,22 @@ describe Puppet::Type.type(:service), "when changing the host" do
218
218
  @service.property(:enable).sync
219
219
  end
220
220
 
221
+ it "should always consider the enable state of a static service to be in sync" do
222
+ @service.provider.class.stubs(:supports_parameter?).returns(true)
223
+ @service.provider.expects(:cached_enabled?).returns('static')
224
+ @service[:enable] = false
225
+ Puppet.expects(:debug).with("Unable to enable or disable static service yay")
226
+ expect(@service.property(:enable).insync?(:true)).to eq(true)
227
+ end
228
+
229
+ it "should determine insyncness normally when the service is not static" do
230
+ @service.provider.class.stubs(:supports_parameter?).returns(true)
231
+ @service.provider.expects(:cached_enabled?).returns('true')
232
+ @service[:enable] = true
233
+ Puppet.expects(:debug).never
234
+ expect(@service.property(:enable).insync?(:true)).to eq(true)
235
+ end
236
+
221
237
  it "should sync the service's enable state when changing the state of :ensure if :enable is being managed" do
222
238
  @service.provider.class.stubs(:supports_parameter?).returns(true)
223
239
  @service[:enable] = false
@@ -709,6 +709,20 @@ describe Puppet::Type, :unless => Puppet.features.microsoft_windows? do
709
709
  @resource.property(:ensure).stubs(:retrieve).returns :absent
710
710
  end
711
711
 
712
+ it "should always retrieve the ensure value by default" do
713
+ @ensurable_resource = Puppet::Type.type(:file).new(:name => "/not/existent", :mode => "0644")
714
+ Puppet::Type::File::Ensure.stubs(:ensure).returns :absent
715
+ Puppet::Type::File::Ensure.any_instance.expects(:retrieve).once
716
+ @ensurable_resource.retrieve_resource
717
+ end
718
+
719
+ it "should not retrieve the ensure value if specified" do
720
+ @ensurable_resource = Puppet::Type.type(:service).new(:name => "DummyService", :enable => true)
721
+ @ensurable_resource.properties.each { |prop| prop.stubs(:retrieve) }
722
+ Puppet::Type::Service::Ensure.any_instance.expects(:retrieve).never
723
+ @ensurable_resource.retrieve_resource
724
+ end
725
+
712
726
  it "should fail if its provider is unsuitable" do
713
727
  @resource = Puppet::Type.type(:mount).new(:name => "foo", :fstype => "bar", :pass => 1, :ensure => :present)
714
728
  @resource.provider.class.expects(:suitable?).returns false
@@ -89,7 +89,7 @@ describe Puppet::Util::Feature do
89
89
  end
90
90
 
91
91
  it "should cache load failures when configured to do so" do
92
- Puppet[:always_cache_features] = true
92
+ Puppet[:always_retry_plugins] = false
93
93
 
94
94
  @features.add(:myfeature, :libs => %w{foo bar})
95
95
  @features.expects(:require).with("foo").raises(LoadError)
@@ -13,6 +13,66 @@ describe Symbol do
13
13
  symbol = :foo
14
14
  expect(symbol).to equal symbol.intern
15
15
  end
16
+
17
+ describe "when :strict is off" do
18
+ before :each do
19
+ Puppet.settings[:strict] = :off
20
+ end
21
+
22
+ after :all do
23
+ Puppet.settings[:strict] = Puppet.settings.setting(:strict).default
24
+ end
25
+
26
+ it "should not warn if compared against another symbol" do
27
+ Puppet.expects(:warn_once).never
28
+ expect(:foo <=> :bar).to equal(1)
29
+ end
30
+
31
+ it "should not warn if compared against a non-symbol value" do
32
+ Puppet.expects(:warn_once).never
33
+ expect(:foo <=> "foo").to equal(0)
34
+ end
35
+ end
36
+
37
+ describe "when :strict is warning" do
38
+ before :each do
39
+ Puppet.settings[:strict] = :warning
40
+ end
41
+
42
+ after :all do
43
+ Puppet.settings[:strict] = Puppet.settings.setting(:strict).default
44
+ end
45
+
46
+ it "should not warn if compared against another symbol" do
47
+ Puppet.expects(:warn_once).never
48
+ expect(:foo <=> :bar).to equal(1)
49
+ end
50
+
51
+ it "should warn if compared against a non-symbol value" do
52
+ Puppet.expects(:warn_once).once
53
+ expect(:foo <=> "foo").to equal(0)
54
+ end
55
+ end
56
+
57
+ describe "when :strict is error" do
58
+ before :each do
59
+ Puppet.settings[:strict] = :error
60
+ end
61
+
62
+ after :all do
63
+ Puppet.settings[:strict] = Puppet.settings.setting(:strict).default
64
+ end
65
+
66
+ it "should not raise if compared against another symbol" do
67
+ Puppet.expects(:warn_once).never
68
+ expect(:foo <=> :bar).to equal(1)
69
+ end
70
+
71
+ it "should raise if compared against a non-symbol value" do
72
+ Puppet.expects(:warn_once).never
73
+ expect { :foo <=> "foo" }.to raise_error(ArgumentError, "Comparing Symbols to non-Symbol values is no longer allowed")
74
+ end
75
+ end
16
76
  end
17
77
 
18
78
  describe IO do
@@ -377,7 +377,7 @@ Self Loopback: No
377
377
  Switch#
378
378
  eos
379
379
 
380
- expect(@cisco.parse_trunking("FastEthernet0/1")).to eq({ :mode => :access, :access_vlan => "100" })
380
+ expect(@cisco.parse_trunking("FastEthernet0/1")).to eq({ :mode => :access, :access_vlan => "100", :native_vlan => "1" })
381
381
  end
382
382
 
383
383
  it "should parse auto/negotiate switchport information" do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: puppet
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.4.2
4
+ version: 4.5.0
5
5
  prerelease:
6
6
  platform: universal-darwin
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2016-04-22 00:00:00.000000000 Z
12
+ date: 2016-05-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: facter
@@ -855,6 +855,7 @@ files:
855
855
  - lib/puppet/settings/file_setting.rb
856
856
  - lib/puppet/settings/file_or_directory_setting.rb
857
857
  - lib/puppet/settings/duration_setting.rb
858
+ - lib/puppet/settings/symbolic_enum_setting.rb
858
859
  - lib/puppet/settings/environment_conf.rb
859
860
  - lib/puppet/settings/ttl_setting.rb
860
861
  - lib/puppet/settings/boolean_setting.rb
@@ -878,15 +879,23 @@ files:
878
879
  - lib/puppet/pops/visitor.rb
879
880
  - lib/puppet/pops/patterns.rb
880
881
  - lib/puppet/pops/types/type_acceptor.rb
882
+ - lib/puppet/pops/types/puppet_object.rb
881
883
  - lib/puppet/pops/types/type_factory.rb
882
884
  - lib/puppet/pops/types/type_assertion_error.rb
883
885
  - lib/puppet/pops/types/class_loader.rb
884
886
  - lib/puppet/pops/types/type_calculator.rb
885
887
  - lib/puppet/pops/types/types.rb
886
- - lib/puppet/pops/types/types_meta.rb
888
+ - lib/puppet/pops/types/p_object_type.rb
889
+ - lib/puppet/pops/types/implementation_registry.rb
890
+ - lib/puppet/pops/types/p_sem_ver_range_type.rb
891
+ - lib/puppet/pops/types/ruby_generator.rb
892
+ - lib/puppet/pops/types/p_runtime_type.rb
887
893
  - lib/puppet/pops/types/type_formatter.rb
888
894
  - lib/puppet/pops/types/type_parser.rb
889
895
  - lib/puppet/pops/types/recursion_guard.rb
896
+ - lib/puppet/pops/types/string_converter.rb
897
+ - lib/puppet/pops/types/p_sem_ver_type.rb
898
+ - lib/puppet/pops/types/type_conversion_error.rb
890
899
  - lib/puppet/pops/types/type_mismatch_describer.rb
891
900
  - lib/puppet/pops/types/iterable.rb
892
901
  - lib/puppet/pops/types/enumeration.rb
@@ -916,13 +925,18 @@ files:
916
925
  - lib/puppet/pops/issues.rb
917
926
  - lib/puppet/pops/lookup/explainer.rb
918
927
  - lib/puppet/pops/lookup/invocation.rb
928
+ - lib/puppet/pops/lookup/interpolation.rb
929
+ - lib/puppet/pops/lookup/sub_lookup.rb
930
+ - lib/puppet/pops/pcore.rb
919
931
  - lib/puppet/pops/visitable.rb
920
932
  - lib/puppet/pops/adapters.rb
921
933
  - lib/puppet/pops/loader/type_definition_instantiator.rb
922
934
  - lib/puppet/pops/loader/simple_environment_loader.rb
935
+ - lib/puppet/pops/loader/predefined_loader.rb
923
936
  - lib/puppet/pops/loader/loader.rb
924
937
  - lib/puppet/pops/loader/null_loader.rb
925
938
  - lib/puppet/pops/loader/static_loader.rb
939
+ - lib/puppet/pops/loader/runtime3_type_loader.rb
926
940
  - lib/puppet/pops/loader/base_loader.rb
927
941
  - lib/puppet/pops/loader/loader_paths.rb
928
942
  - lib/puppet/pops/loader/ruby_function_instantiator.rb
@@ -1005,11 +1019,11 @@ files:
1005
1019
  - lib/puppet/module_tool/tar.rb
1006
1020
  - lib/puppet/module_tool/local_tarball.rb
1007
1021
  - lib/puppet/module_tool/skeleton/templates/generator/metadata.json.erb
1008
- - lib/puppet/module_tool/skeleton/templates/generator/tests/init.pp.erb
1009
1022
  - lib/puppet/module_tool/skeleton/templates/generator/Rakefile
1010
1023
  - lib/puppet/module_tool/skeleton/templates/generator/spec/classes/init_spec.rb.erb
1011
1024
  - lib/puppet/module_tool/skeleton/templates/generator/spec/spec_helper.rb
1012
1025
  - lib/puppet/module_tool/skeleton/templates/generator/README.md.erb
1026
+ - lib/puppet/module_tool/skeleton/templates/generator/examples/init.pp.erb
1013
1027
  - lib/puppet/module_tool/skeleton/templates/generator/Gemfile
1014
1028
  - lib/puppet/module_tool/skeleton/templates/generator/manifests/init.pp.erb
1015
1029
  - lib/puppet/module_tool/shared_behaviors.rb
@@ -1108,9 +1122,11 @@ files:
1108
1122
  - lib/puppet/resource/status.rb
1109
1123
  - lib/puppet/functions/regsubst.rb
1110
1124
  - lib/puppet/functions/epp.rb
1125
+ - lib/puppet/functions/lest.rb
1111
1126
  - lib/puppet/functions/map.rb
1112
1127
  - lib/puppet/functions/defined.rb
1113
1128
  - lib/puppet/functions/match.rb
1129
+ - lib/puppet/functions/then.rb
1114
1130
  - lib/puppet/functions/hiera_hash.rb
1115
1131
  - lib/puppet/functions/filter.rb
1116
1132
  - lib/puppet/functions/hiera_array.rb
@@ -1127,7 +1143,9 @@ files:
1127
1143
  - lib/puppet/functions/slice.rb
1128
1144
  - lib/puppet/functions/lookup.rb
1129
1145
  - lib/puppet/functions/import.rb
1146
+ - lib/puppet/functions/new.rb
1130
1147
  - lib/puppet/functions/assert_type.rb
1148
+ - lib/puppet/functions/dig.rb
1131
1149
  - lib/puppet/functions/with.rb
1132
1150
  - lib/puppet/functions/inline_epp.rb
1133
1151
  - lib/puppet/external/pson/version.rb
@@ -1735,6 +1753,7 @@ files:
1735
1753
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_puppet.pp
1736
1754
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/manifests/init.pp
1737
1755
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee2/lib/puppet/functions/usee2/callee.rb
1756
+ - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/type/usee_type.rb
1738
1757
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/functions/usee/usee_ruby.rb
1739
1758
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/functions/usee/callee.rb
1740
1759
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/types/zero.pp
@@ -1763,6 +1782,10 @@ files:
1763
1782
  - spec/fixtures/unit/functions/lookup/environments/production/modules/abc/lib/puppet/bindings/abc/default.rb
1764
1783
  - spec/fixtures/unit/functions/lookup/environments/production/modules/abc/lib/puppet/functions/abc/data.rb
1765
1784
  - spec/fixtures/unit/functions/lookup/environments/production/modules/abc/manifests/init.pp
1785
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_json/data/empty_key.json
1786
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_json/metadata.json
1787
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_json/hiera.yaml
1788
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_json/manifests/init.pp
1766
1789
  - spec/fixtures/unit/functions/lookup/environments/production/modules/meta/lib/puppet/functions/meta/data.rb
1767
1790
  - spec/fixtures/unit/functions/lookup/environments/production/modules/meta/metadata.json
1768
1791
  - spec/fixtures/unit/functions/lookup/environments/production/modules/meta/manifests/init.pp
@@ -1770,6 +1793,10 @@ files:
1770
1793
  - spec/fixtures/unit/functions/lookup/environments/production/modules/hieraprovider/metadata.json
1771
1794
  - spec/fixtures/unit/functions/lookup/environments/production/modules/hieraprovider/hiera.yaml
1772
1795
  - spec/fixtures/unit/functions/lookup/environments/production/modules/hieraprovider/manifests/init.pp
1796
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_yaml/data/empty_key.yaml
1797
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_yaml/metadata.json
1798
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_yaml/hiera.yaml
1799
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_yaml/manifests/init.pp
1773
1800
  - spec/fixtures/unit/functions/lookup/environments/production/modules/bca/lib/puppet/bindings/bca/default.rb
1774
1801
  - spec/fixtures/unit/functions/lookup/environments/production/modules/bca/lib/puppet/functions/bca/data.rb
1775
1802
  - spec/fixtures/unit/functions/lookup/environments/production/modules/bca/manifests/init.pp
@@ -1959,7 +1986,6 @@ files:
1959
1986
  - spec/integration/provider/ssh_authorized_key_spec.rb
1960
1987
  - spec/integration/provider/yumrepo_spec.rb
1961
1988
  - spec/integration/provider/mount_spec.rb
1962
- - spec/integration/provider/package_spec.rb
1963
1989
  - spec/integration/provider/sshkey_spec.rb
1964
1990
  - spec/unit/scheduler/scheduler_spec.rb
1965
1991
  - spec/unit/scheduler/splay_job_spec.rb
@@ -1995,6 +2021,7 @@ files:
1995
2021
  - spec/unit/network/http/nocache_pool_spec.rb
1996
2022
  - spec/unit/network/http/api/master/v3/environments_spec.rb
1997
2023
  - spec/unit/network/http/api/master/v3/authorization_spec.rb
2024
+ - spec/unit/network/http/api/master/v3/environment_spec.rb
1998
2025
  - spec/unit/network/http/api/master/v3_spec.rb
1999
2026
  - spec/unit/network/http/api/indirected_routes_spec.rb
2000
2027
  - spec/unit/network/http/api/ca/v1_spec.rb
@@ -2326,7 +2353,6 @@ files:
2326
2353
  - spec/unit/property_spec.rb
2327
2354
  - spec/unit/functions4_spec.rb
2328
2355
  - spec/unit/data_providers/sample_data_provider_spec.rb
2329
- - spec/unit/data_providers/hiera_interpolation_spec.rb
2330
2356
  - spec/unit/data_providers/function_data_provider_spec.rb
2331
2357
  - spec/unit/data_providers/hiera_data_provider_spec.rb
2332
2358
  - spec/unit/graph/relationship_graph_spec.rb
@@ -2368,11 +2394,15 @@ files:
2368
2394
  - spec/unit/pops/types/recursion_guard_spec.rb
2369
2395
  - spec/unit/pops/types/enumeration_spec.rb
2370
2396
  - spec/unit/pops/types/class_loader_spec.rb
2397
+ - spec/unit/pops/types/p_object_type_spec.rb
2371
2398
  - spec/unit/pops/types/type_acceptor_spec.rb
2372
2399
  - spec/unit/pops/types/type_calculator_spec.rb
2373
2400
  - spec/unit/pops/types/type_parser_spec.rb
2374
2401
  - spec/unit/pops/types/types_spec.rb
2402
+ - spec/unit/pops/types/ruby_generator_spec.rb
2375
2403
  - spec/unit/pops/types/iterable_spec.rb
2404
+ - spec/unit/pops/types/string_converter_spec.rb
2405
+ - spec/unit/pops/types/p_sem_ver_type_spec.rb
2376
2406
  - spec/unit/pops/types/type_asserter_spec.rb
2377
2407
  - spec/unit/pops/types/type_factory_spec.rb
2378
2408
  - spec/unit/pops/types/type_formatter_spec.rb
@@ -2394,6 +2424,7 @@ files:
2394
2424
  - spec/unit/pops/evaluator/json_strict_literal_evaluator_spec.rb
2395
2425
  - spec/unit/pops/evaluator/arithmetic_ops_spec.rb
2396
2426
  - spec/unit/pops/containment_spec.rb
2427
+ - spec/unit/pops/lookup/interpolation_spec.rb
2397
2428
  - spec/unit/pops/issues_spec.rb
2398
2429
  - spec/unit/pops/parser/parse_containers_spec.rb
2399
2430
  - spec/unit/pops/parser/parse_basic_expressions_spec.rb
@@ -2491,7 +2522,9 @@ files:
2491
2522
  - spec/unit/functions/split_spec.rb
2492
2523
  - spec/unit/functions/scanf_spec.rb
2493
2524
  - spec/unit/functions/regsubst_spec.rb
2525
+ - spec/unit/functions/dig_spec.rb
2494
2526
  - spec/unit/functions/reverse_each_spec.rb
2527
+ - spec/unit/functions/then_spec.rb
2495
2528
  - spec/unit/functions/with_spec.rb
2496
2529
  - spec/unit/functions/step_spec.rb
2497
2530
  - spec/unit/functions/defined_spec.rb
@@ -2503,9 +2536,11 @@ files:
2503
2536
  - spec/unit/functions/filter_spec.rb
2504
2537
  - spec/unit/functions/assert_type_spec.rb
2505
2538
  - spec/unit/functions/inline_epp_spec.rb
2539
+ - spec/unit/functions/lest_spec.rb
2506
2540
  - spec/unit/functions/type_spec.rb
2507
2541
  - spec/unit/functions/map_spec.rb
2508
2542
  - spec/unit/functions/each_spec.rb
2543
+ - spec/unit/functions/new_spec.rb
2509
2544
  - spec/unit/functions/epp_spec.rb
2510
2545
  - spec/unit/functions/hiera_spec.rb
2511
2546
  - spec/unit/confine_collection_spec.rb
@@ -2658,13 +2693,13 @@ required_ruby_version: !ruby/object:Gem::Requirement
2658
2693
  requirements:
2659
2694
  - - ! '>='
2660
2695
  - !ruby/object:Gem::Version
2661
- version: '0'
2696
+ version: 1.9.3
2662
2697
  required_rubygems_version: !ruby/object:Gem::Requirement
2663
2698
  none: false
2664
2699
  requirements:
2665
- - - ! '>='
2700
+ - - ! '>'
2666
2701
  - !ruby/object:Gem::Version
2667
- version: '0'
2702
+ version: 1.3.1
2668
2703
  requirements: []
2669
2704
  rubyforge_project: puppet
2670
2705
  rubygems_version: 1.8.23
@@ -2948,6 +2983,7 @@ test_files:
2948
2983
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/functions/puppet_calling_puppet.pp
2949
2984
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/user/manifests/init.pp
2950
2985
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee2/lib/puppet/functions/usee2/callee.rb
2986
+ - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/type/usee_type.rb
2951
2987
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/functions/usee/usee_ruby.rb
2952
2988
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/lib/puppet/functions/usee/callee.rb
2953
2989
  - spec/fixtures/unit/pops/loaders/loaders/dependent_modules_with_metadata/modules/usee/types/zero.pp
@@ -2976,6 +3012,10 @@ test_files:
2976
3012
  - spec/fixtures/unit/functions/lookup/environments/production/modules/abc/lib/puppet/bindings/abc/default.rb
2977
3013
  - spec/fixtures/unit/functions/lookup/environments/production/modules/abc/lib/puppet/functions/abc/data.rb
2978
3014
  - spec/fixtures/unit/functions/lookup/environments/production/modules/abc/manifests/init.pp
3015
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_json/data/empty_key.json
3016
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_json/metadata.json
3017
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_json/hiera.yaml
3018
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_json/manifests/init.pp
2979
3019
  - spec/fixtures/unit/functions/lookup/environments/production/modules/meta/lib/puppet/functions/meta/data.rb
2980
3020
  - spec/fixtures/unit/functions/lookup/environments/production/modules/meta/metadata.json
2981
3021
  - spec/fixtures/unit/functions/lookup/environments/production/modules/meta/manifests/init.pp
@@ -2983,6 +3023,10 @@ test_files:
2983
3023
  - spec/fixtures/unit/functions/lookup/environments/production/modules/hieraprovider/metadata.json
2984
3024
  - spec/fixtures/unit/functions/lookup/environments/production/modules/hieraprovider/hiera.yaml
2985
3025
  - spec/fixtures/unit/functions/lookup/environments/production/modules/hieraprovider/manifests/init.pp
3026
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_yaml/data/empty_key.yaml
3027
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_yaml/metadata.json
3028
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_yaml/hiera.yaml
3029
+ - spec/fixtures/unit/functions/lookup/environments/production/modules/empty_key_yaml/manifests/init.pp
2986
3030
  - spec/fixtures/unit/functions/lookup/environments/production/modules/bca/lib/puppet/bindings/bca/default.rb
2987
3031
  - spec/fixtures/unit/functions/lookup/environments/production/modules/bca/lib/puppet/functions/bca/data.rb
2988
3032
  - spec/fixtures/unit/functions/lookup/environments/production/modules/bca/manifests/init.pp
@@ -3172,7 +3216,6 @@ test_files:
3172
3216
  - spec/integration/provider/ssh_authorized_key_spec.rb
3173
3217
  - spec/integration/provider/yumrepo_spec.rb
3174
3218
  - spec/integration/provider/mount_spec.rb
3175
- - spec/integration/provider/package_spec.rb
3176
3219
  - spec/integration/provider/sshkey_spec.rb
3177
3220
  - spec/unit/scheduler/scheduler_spec.rb
3178
3221
  - spec/unit/scheduler/splay_job_spec.rb
@@ -3208,6 +3251,7 @@ test_files:
3208
3251
  - spec/unit/network/http/nocache_pool_spec.rb
3209
3252
  - spec/unit/network/http/api/master/v3/environments_spec.rb
3210
3253
  - spec/unit/network/http/api/master/v3/authorization_spec.rb
3254
+ - spec/unit/network/http/api/master/v3/environment_spec.rb
3211
3255
  - spec/unit/network/http/api/master/v3_spec.rb
3212
3256
  - spec/unit/network/http/api/indirected_routes_spec.rb
3213
3257
  - spec/unit/network/http/api/ca/v1_spec.rb
@@ -3539,7 +3583,6 @@ test_files:
3539
3583
  - spec/unit/property_spec.rb
3540
3584
  - spec/unit/functions4_spec.rb
3541
3585
  - spec/unit/data_providers/sample_data_provider_spec.rb
3542
- - spec/unit/data_providers/hiera_interpolation_spec.rb
3543
3586
  - spec/unit/data_providers/function_data_provider_spec.rb
3544
3587
  - spec/unit/data_providers/hiera_data_provider_spec.rb
3545
3588
  - spec/unit/graph/relationship_graph_spec.rb
@@ -3581,11 +3624,15 @@ test_files:
3581
3624
  - spec/unit/pops/types/recursion_guard_spec.rb
3582
3625
  - spec/unit/pops/types/enumeration_spec.rb
3583
3626
  - spec/unit/pops/types/class_loader_spec.rb
3627
+ - spec/unit/pops/types/p_object_type_spec.rb
3584
3628
  - spec/unit/pops/types/type_acceptor_spec.rb
3585
3629
  - spec/unit/pops/types/type_calculator_spec.rb
3586
3630
  - spec/unit/pops/types/type_parser_spec.rb
3587
3631
  - spec/unit/pops/types/types_spec.rb
3632
+ - spec/unit/pops/types/ruby_generator_spec.rb
3588
3633
  - spec/unit/pops/types/iterable_spec.rb
3634
+ - spec/unit/pops/types/string_converter_spec.rb
3635
+ - spec/unit/pops/types/p_sem_ver_type_spec.rb
3589
3636
  - spec/unit/pops/types/type_asserter_spec.rb
3590
3637
  - spec/unit/pops/types/type_factory_spec.rb
3591
3638
  - spec/unit/pops/types/type_formatter_spec.rb
@@ -3607,6 +3654,7 @@ test_files:
3607
3654
  - spec/unit/pops/evaluator/json_strict_literal_evaluator_spec.rb
3608
3655
  - spec/unit/pops/evaluator/arithmetic_ops_spec.rb
3609
3656
  - spec/unit/pops/containment_spec.rb
3657
+ - spec/unit/pops/lookup/interpolation_spec.rb
3610
3658
  - spec/unit/pops/issues_spec.rb
3611
3659
  - spec/unit/pops/parser/parse_containers_spec.rb
3612
3660
  - spec/unit/pops/parser/parse_basic_expressions_spec.rb
@@ -3704,7 +3752,9 @@ test_files:
3704
3752
  - spec/unit/functions/split_spec.rb
3705
3753
  - spec/unit/functions/scanf_spec.rb
3706
3754
  - spec/unit/functions/regsubst_spec.rb
3755
+ - spec/unit/functions/dig_spec.rb
3707
3756
  - spec/unit/functions/reverse_each_spec.rb
3757
+ - spec/unit/functions/then_spec.rb
3708
3758
  - spec/unit/functions/with_spec.rb
3709
3759
  - spec/unit/functions/step_spec.rb
3710
3760
  - spec/unit/functions/defined_spec.rb
@@ -3716,9 +3766,11 @@ test_files:
3716
3766
  - spec/unit/functions/filter_spec.rb
3717
3767
  - spec/unit/functions/assert_type_spec.rb
3718
3768
  - spec/unit/functions/inline_epp_spec.rb
3769
+ - spec/unit/functions/lest_spec.rb
3719
3770
  - spec/unit/functions/type_spec.rb
3720
3771
  - spec/unit/functions/map_spec.rb
3721
3772
  - spec/unit/functions/each_spec.rb
3773
+ - spec/unit/functions/new_spec.rb
3722
3774
  - spec/unit/functions/epp_spec.rb
3723
3775
  - spec/unit/functions/hiera_spec.rb
3724
3776
  - spec/unit/confine_collection_spec.rb