]> git.donarmstrong.com Git - dsa-puppet.git/blob - 3rdparty/modules/stdlib/spec/unit/facter/pe_version_spec.rb
upgrade to stdlib 4.6.1
[dsa-puppet.git] / 3rdparty / modules / stdlib / spec / unit / facter / pe_version_spec.rb
1 #!/usr/bin/env rspec
2
3 require 'spec_helper'
4
5 describe "PE Version specs" do
6   before :each do
7     # Explicitly load the pe_version.rb file which contains generated facts
8     # that cannot be automatically loaded.  Puppet 2.x implements
9     # Facter.collection.load while Facter 1.x markes Facter.collection.load as
10     # a private method.
11     if Facter.collection.respond_to? :load
12       Facter.collection.load(:pe_version)
13     else
14       Facter.collection.loader.load(:pe_version)
15     end
16   end
17
18   context "If PE is installed" do
19     %w{ 2.6.1 2.10.300 }.each do |version|
20       puppetversion = "2.7.19 (Puppet Enterprise #{version})"
21       context "puppetversion => #{puppetversion}" do
22         before :each do
23           Facter.fact(:puppetversion).stubs(:value).returns(puppetversion)
24         end
25
26         (major,minor,patch) = version.split(".")
27
28         it "Should return true" do
29           expect(Facter.fact(:is_pe).value).to eq(true)
30         end
31
32         it "Should have a version of #{version}" do
33           expect(Facter.fact(:pe_version).value).to eq(version)
34         end
35
36         it "Should have a major version of #{major}" do
37           expect(Facter.fact(:pe_major_version).value).to eq(major)
38         end
39
40         it "Should have a minor version of #{minor}" do
41           expect(Facter.fact(:pe_minor_version).value).to eq(minor)
42         end
43
44         it "Should have a patch version of #{patch}" do
45           expect(Facter.fact(:pe_patch_version).value).to eq(patch)
46         end
47       end
48     end
49   end
50
51   context "When PE is not installed" do
52     before :each do
53       Facter.fact(:puppetversion).stubs(:value).returns("2.7.19")
54     end
55
56     it "is_pe is false" do
57       expect(Facter.fact(:is_pe).value).to eq(false)
58     end
59
60     it "pe_version is nil" do
61       expect(Facter.fact(:pe_version).value).to be_nil
62     end
63
64     it "pe_major_version is nil" do
65       expect(Facter.fact(:pe_major_version).value).to be_nil
66     end
67
68     it "pe_minor_version is nil" do
69       expect(Facter.fact(:pe_minor_version).value).to be_nil
70     end
71
72     it "Should have a patch version" do
73       expect(Facter.fact(:pe_patch_version).value).to be_nil
74     end
75   end
76 end