Skip to content

Commit 39126a7

Browse files
committed
Merge pull request #539 from mentat/MODULES-2696
Add check to ensure regex does not throw for none type.
2 parents 57a8485 + 6aa7f2d commit 39126a7

File tree

2 files changed

+19
-2
lines changed

2 files changed

+19
-2
lines changed

lib/facter/pe_version.rb

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,13 @@
1010
#
1111
Facter.add("pe_version") do
1212
setcode do
13-
pe_ver = Facter.value("puppetversion").match(/Puppet Enterprise (\d+\.\d+\.\d+)/)
14-
pe_ver[1] if pe_ver
13+
puppet_ver = Facter.value("puppetversion")
14+
if puppet_ver != nil
15+
pe_ver = puppet_ver.match(/Puppet Enterprise (\d+\.\d+\.\d+)/)
16+
pe_ver[1] if pe_ver
17+
else
18+
nil
19+
end
1520
end
1621
end
1722

spec/unit/facter/pe_version_spec.rb

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,17 @@
1414
Facter.collection.loader.load(:pe_version)
1515
end
1616
end
17+
18+
context "When puppetversion is nil" do
19+
before :each do
20+
Facter.fact(:puppetversion).stubs(:value).returns(nil)
21+
end
22+
23+
it "pe_version is nil" do
24+
expect(Facter.fact(:puppetversion).value).to be_nil
25+
expect(Facter.fact(:pe_version).value).to be_nil
26+
end
27+
end
1728

1829
context "If PE is installed" do
1930
%w{ 2.6.1 2.10.300 }.each do |version|
@@ -73,4 +84,5 @@
7384
expect(Facter.fact(:pe_patch_version).value).to be_nil
7485
end
7586
end
87+
7688
end

0 commit comments

Comments
 (0)