beaker 4.28.1 → 4.31.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -12,6 +12,7 @@ describe Beaker do
12
12
  let( :unix_only_pkgs ) { Beaker::HostPrebuiltSteps::UNIX_PACKAGES }
13
13
  let( :sles_only_pkgs ) { Beaker::HostPrebuiltSteps::SLES_PACKAGES }
14
14
  let( :rhel8_packages ) { Beaker::HostPrebuiltSteps::RHEL8_PACKAGES }
15
+ let( :fedora_packages) { Beaker::HostPrebuiltSteps::FEDORA_PACKAGES }
15
16
  let( :platform ) { @platform || 'unix' }
16
17
  let( :ip ) { "ip.address.0.0" }
17
18
  let( :stdout) { @stdout || ip }
@@ -159,6 +160,15 @@ describe Beaker do
159
160
  subject.timesync(hosts, options)
160
161
  end
161
162
 
163
+ it "can sync time on Fedora hosts" do
164
+ hosts = make_hosts(:platform => 'fedora-32-x86_64')
165
+ expect(Beaker::Command).to receive(:new)
166
+ .with("chronyc add server #{ntpserver} prefer trust;chronyc makestep;chronyc burst 1/2")
167
+ .exactly(3)
168
+ .times
169
+ subject.timesync(hosts, options)
170
+ end
171
+
162
172
  it "can set time server on unix hosts" do
163
173
  hosts = make_hosts( { :platform => 'unix' } )
164
174
 
@@ -437,6 +447,21 @@ describe Beaker do
437
447
 
438
448
  end
439
449
 
450
+ it "can validate opensuse hosts" do
451
+ @platform = 'opensuse-15-x86_x64'
452
+
453
+ hosts.each do |host|
454
+ sles_only_pkgs.each do |pkg|
455
+ expect( host ).to receive( :check_for_package).with( pkg ).once.and_return( false )
456
+ expect( host ).to receive( :install_package ).with( pkg ).once
457
+ end
458
+
459
+ end
460
+
461
+ subject.validate_host(hosts, options)
462
+
463
+ end
464
+
440
465
  it "can validate RHEL8 hosts" do
441
466
  @platform = 'el-8-x86_x64'
442
467
 
@@ -450,6 +475,19 @@ describe Beaker do
450
475
  subject.validate_host(hosts, options)
451
476
  end
452
477
 
478
+ it "can validate Fedora hosts" do
479
+ @platform = 'fedora-32-x86_64'
480
+
481
+ hosts.each do |host|
482
+ fedora_packages.each do |pkg|
483
+ expect(host).to receive(:check_for_package).with(pkg).once.and_return(false)
484
+ expect(host).to receive(:install_package).with(pkg).once
485
+ end
486
+ end
487
+
488
+ subject.validate_host(hosts, options)
489
+ end
490
+
453
491
  it 'skips validation on cisco hosts' do
454
492
  @platform = 'cisco_nexus-7-x86_64'
455
493
  expect( subject ).to receive( :check_and_install_packages_if_needed ).never
@@ -44,9 +44,10 @@ module Beaker
44
44
  end
45
45
 
46
46
  it 'creates a new Perf object with multiple hosts, :collect_perf_data = true, SLES' do
47
- hosts = [ make_host("myHost", @options), make_host("myOtherHost", @options) ]
47
+ hosts = [ make_host("myHost", @options), make_host("myOtherHost", @options), make_host("myThirdHost", @options) ]
48
48
  hosts[0]['platform'] = "centos-6-x86_64"
49
49
  hosts[1]['platform'] = "sles-11-x86_64"
50
+ hosts[2]['platform'] = "opensuse-15-x86_64"
50
51
  @my_logger.remove_destination(STDOUT)
51
52
  perf = Perf.new( hosts, @options )
52
53
  expect( perf ).to be_a_kind_of Perf
@@ -67,6 +67,11 @@ module Beaker
67
67
 
68
68
  context 'with_version_codename' do
69
69
 
70
+ it "can convert debian-11-xxx to debian-bullseye-xxx" do
71
+ @name = 'debian-11-xxx'
72
+ expect( platform.with_version_codename ).to be === 'debian-bullseye-xxx'
73
+ end
74
+
70
75
  it "can convert debian-7-xxx to debian-wheezy-xxx" do
71
76
  @name = 'debian-7-xxx'
72
77
  expect( platform.with_version_codename ).to be === 'debian-wheezy-xxx'
data/spec/spec_helper.rb CHANGED
@@ -1,4 +1,27 @@
1
- require 'simplecov'
1
+ begin
2
+ require 'simplecov'
3
+ require 'simplecov-console'
4
+ require 'codecov'
5
+ rescue LoadError
6
+ else
7
+ SimpleCov.start do
8
+ track_files 'lib/**/*.rb'
9
+
10
+ add_filter '/spec'
11
+
12
+ enable_coverage :branch
13
+
14
+ # do not track vendored files
15
+ add_filter '/vendor'
16
+ add_filter '/.vendor'
17
+ end
18
+
19
+ SimpleCov.formatters = [
20
+ SimpleCov::Formatter::Console,
21
+ SimpleCov::Formatter::Codecov,
22
+ ]
23
+ end
24
+
2
25
  require 'beaker'
3
26
  require 'fakefs/spec_helpers'
4
27
  require 'mocks'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beaker
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.28.1
4
+ version: 4.31.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Puppet
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-03-16 00:00:00.000000000 Z
11
+ date: 2021-11-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -52,20 +52,6 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '1.0'
55
- - !ruby/object:Gem::Dependency
56
- name: simplecov
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - ">="
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: rake
71
57
  requirement: !ruby/object:Gem::Requirement
@@ -80,48 +66,6 @@ dependencies:
80
66
  - - "~>"
81
67
  - !ruby/object:Gem::Version
82
68
  version: '13.0'
83
- - !ruby/object:Gem::Dependency
84
- name: beaker-aws
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '0.1'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
95
- - !ruby/object:Gem::Version
96
- version: '0.1'
97
- - !ruby/object:Gem::Dependency
98
- name: beaker-abs
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: '0.4'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '0.4'
111
- - !ruby/object:Gem::Dependency
112
- name: beaker-vmpooler
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - "~>"
116
- - !ruby/object:Gem::Version
117
- version: '1.0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - "~>"
123
- - !ruby/object:Gem::Version
124
- version: '1.0'
125
69
  - !ruby/object:Gem::Dependency
126
70
  name: yard
127
71
  requirement: !ruby/object:Gem::Requirement
@@ -192,6 +136,20 @@ dependencies:
192
136
  - - "~>"
193
137
  - !ruby/object:Gem::Version
194
138
  version: 0.5.3
139
+ - !ruby/object:Gem::Dependency
140
+ name: rexml
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :runtime
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
195
153
  - !ruby/object:Gem::Dependency
196
154
  name: hocon
197
155
  requirement: !ruby/object:Gem::Requirement
@@ -363,6 +321,7 @@ files:
363
321
  - CONTRIBUTING.md
364
322
  - DOCUMENTING.md
365
323
  - Gemfile
324
+ - HISTORY.md
366
325
  - LICENSE
367
326
  - README.md
368
327
  - Rakefile
@@ -703,7 +662,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
703
662
  - !ruby/object:Gem::Version
704
663
  version: '0'
705
664
  requirements: []
706
- rubygems_version: 3.1.4
665
+ rubygems_version: 3.2.22
707
666
  signing_key:
708
667
  specification_version: 4
709
668
  summary: Let's test Puppet!