voxpupuli-test 1.1.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '0960516ba7537545787cfca6a3a266aa31a2ed11ec2cb0b58ccf81c1a7baa3ac'
4
- data.tar.gz: 52c3ae647242260fffb465f1e73f7135dc3122e0c1f783b3d002345744a509ef
3
+ metadata.gz: e645b19d5f117dfe6ecac0454f4292e3b55385f211a69af009a1dda2ca9175e5
4
+ data.tar.gz: 6587feaadca7dcadb806b95bf55a503eceaa642698627b16cdd43daee10ad767
5
5
  SHA512:
6
- metadata.gz: 372dc17a7b04c5ec3162eb698a591c573b43b07463237fe14ca209f23861ba1e79ddf4311fdbb705fc548856e5bf5c044dbd0cd8b777dfb3ebaf0e6ef525a637
7
- data.tar.gz: 110beb481fb4fc798b0ed618a5cfb4b99421c9ed5c63cdd2f7452503be8dd47dc1c299c2f96f6a3e46e12d1a71fc8dab224b26bb5a9d82df236c3aa26b14ee63
6
+ metadata.gz: 02aae2494464a14694caf65a3766d5951978e3f1783237192bdf201195f84456d54a6af892f9257ae72e5e165c9e6cc9b7f4571abb39c26ca16373f2e7f1450b
7
+ data.tar.gz: da701fc0a829ea4c48c60b6920e0bcee8edbe09faaa4695fcc2dac576a66e1030af5f5c91a6116f6d53d92ce65e482c0320b5a5ac189dabff7f197d3de6804d3
@@ -0,0 +1,34 @@
1
+ # Override facts
2
+ #
3
+ # This doesn't use deep_merge because that's highly unpredictable. It can merge
4
+ # nested hashes in place, modifying the original. It's also unable to override
5
+ # true to false.
6
+ #
7
+ # A deep copy is obtained by using Marshal so it can be modified in place. Then
8
+ # it recursively overrides values. If the result is a hash, it's recursed into.
9
+ #
10
+ # A typical example:
11
+ #
12
+ # let(:facts) do
13
+ # override_facts(super(), os: {'selinux' => {'enabled' => false}})
14
+ # end
15
+ def override_facts(base_facts, **overrides)
16
+ facts = Marshal.load(Marshal.dump(base_facts))
17
+ apply_overrides!(facts, overrides, false)
18
+ facts
19
+ end
20
+
21
+ # A private helper to override_facts
22
+ def apply_overrides!(facts, overrides, enforce_strings)
23
+ overrides.each do |key, value|
24
+ # Nested facts are strings
25
+ key = key.to_s if enforce_strings
26
+
27
+ if value.is_a?(Hash)
28
+ facts[key] = {} unless facts.key?(key)
29
+ apply_overrides!(facts[key], value, true)
30
+ else
31
+ facts[key] = value
32
+ end
33
+ end
34
+ end
@@ -5,6 +5,8 @@ PuppetLint.configuration.log_format = '%{path}:%{line}:%{check}:%{KIND}:%{messag
5
5
  desc 'Run tests'
6
6
  task test: [:release_checks]
7
7
 
8
+ task default: [:release_checks]
9
+
8
10
  namespace :check do
9
11
  desc 'Check for trailing whitespace'
10
12
  task :trailing_whitespace do
@@ -24,6 +24,7 @@ RSpec.configure do |config|
24
24
  end
25
25
  end
26
26
 
27
+ require 'voxpupuli/test/facts'
27
28
  require 'puppetlabs_spec_helper/module_spec_helper'
28
29
  require 'rspec-puppet-facts'
29
30
  include RspecPuppetFacts
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: voxpupuli-test
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vox Pupuli
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-04-11 00:00:00.000000000 Z
11
+ date: 2020-07-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: facterdb
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 1.4.0
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 1.4.0
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: metadata-json-lint
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -112,16 +126,16 @@ dependencies:
112
126
  name: rubocop-rspec
113
127
  requirement: !ruby/object:Gem::Requirement
114
128
  requirements:
115
- - - '='
129
+ - - "~>"
116
130
  - !ruby/object:Gem::Version
117
- version: 1.15.0
131
+ version: 1.16.0
118
132
  type: :runtime
119
133
  prerelease: false
120
134
  version_requirements: !ruby/object:Gem::Requirement
121
135
  requirements:
122
- - - '='
136
+ - - "~>"
123
137
  - !ruby/object:Gem::Version
124
- version: 1.15.0
138
+ version: 1.16.0
125
139
  - !ruby/object:Gem::Dependency
126
140
  name: puppet-lint-absolute_classname-check
127
141
  requirement: !ruby/object:Gem::Requirement
@@ -276,6 +290,62 @@ dependencies:
276
290
  - - ">="
277
291
  - !ruby/object:Gem::Version
278
292
  version: '0'
293
+ - !ruby/object:Gem::Dependency
294
+ name: puppet-lint-manifest_whitespace-check
295
+ requirement: !ruby/object:Gem::Requirement
296
+ requirements:
297
+ - - ">="
298
+ - !ruby/object:Gem::Version
299
+ version: '0'
300
+ type: :runtime
301
+ prerelease: false
302
+ version_requirements: !ruby/object:Gem::Requirement
303
+ requirements:
304
+ - - ">="
305
+ - !ruby/object:Gem::Version
306
+ version: '0'
307
+ - !ruby/object:Gem::Dependency
308
+ name: puppet-lint-file_ensure-check
309
+ requirement: !ruby/object:Gem::Requirement
310
+ requirements:
311
+ - - ">="
312
+ - !ruby/object:Gem::Version
313
+ version: '0'
314
+ type: :runtime
315
+ prerelease: false
316
+ version_requirements: !ruby/object:Gem::Requirement
317
+ requirements:
318
+ - - ">="
319
+ - !ruby/object:Gem::Version
320
+ version: '0'
321
+ - !ruby/object:Gem::Dependency
322
+ name: puppet-lint-strict_indent-check
323
+ requirement: !ruby/object:Gem::Requirement
324
+ requirements:
325
+ - - ">="
326
+ - !ruby/object:Gem::Version
327
+ version: '0'
328
+ type: :runtime
329
+ prerelease: false
330
+ version_requirements: !ruby/object:Gem::Requirement
331
+ requirements:
332
+ - - ">="
333
+ - !ruby/object:Gem::Version
334
+ version: '0'
335
+ - !ruby/object:Gem::Dependency
336
+ name: rspec
337
+ requirement: !ruby/object:Gem::Requirement
338
+ requirements:
339
+ - - ">="
340
+ - !ruby/object:Gem::Version
341
+ version: '0'
342
+ type: :development
343
+ prerelease: false
344
+ version_requirements: !ruby/object:Gem::Requirement
345
+ requirements:
346
+ - - ">="
347
+ - !ruby/object:Gem::Version
348
+ version: '0'
279
349
  description: A package that depends on all the gems Vox Pupuli modules need and methods
280
350
  to simplify spec helpers
281
351
  email:
@@ -285,6 +355,7 @@ extensions: []
285
355
  extra_rdoc_files: []
286
356
  files:
287
357
  - lib/voxpupuli/test.rb
358
+ - lib/voxpupuli/test/facts.rb
288
359
  - lib/voxpupuli/test/rake.rb
289
360
  - lib/voxpupuli/test/spec_helper.rb
290
361
  homepage: http://github.com/voxpupuli/voxpupuli-test