summaryrefslogtreecommitdiff
path: root/spec/unit/facter/pe_version_spec.rb
diff options
context:
space:
mode:
authorJeff McCune <jeff@puppetlabs.com>2012-10-25 12:01:01 -0700
committerJeff McCune <jeff@puppetlabs.com>2012-10-25 12:01:01 -0700
commit4004a758b0c01ac17206a838f91f8cf5c57cc466 (patch)
tree4304339b93ca5a0ac044fc43add0b00f3378e0ec /spec/unit/facter/pe_version_spec.rb
parentfb8993bf48ba6e6baeb1f2b1987262a287285965 (diff)
parent1d371ab8b67b85d52f8c4932f78660de8a236b93 (diff)
Merge branch '3.1.x' into 3.x
* 3.1.x: Update Modulefile, CHANGELOG for 3.1.0 Revert "Revert "Revert "Merge branch 'hkenney-ticket/master/2157_remove_facts_dot_d'""" Update Modulefile, CHANGELOG for 2.5.0 Explicitly load functions used by ensure_resource re-formatting Add better docs about duplicate resource failures Handle undef for parameter argument Add function ensure_resource and defined_with_params Revert "Revert "Merge branch 'haus-add_pe_facts_to_stdlib' into 2.4.x"" Revert "Revert "Merge branch 'haus-add_pe_facts_to_stdlib' into 2.4.x"" Revert "Merge branch 'haus-add_pe_facts_to_stdlib' into 2.4.x" Prevent undefined method `split' for nil:NilClass with pe_foo_version facts (maint) Clear all facts before each example Add spec tests for pe_version facts Add PE facts to stdlib Fix some logical inconsistencies in README (#14422) Update README to include the bug tracker URL. Revert "Revert "Merge branch 'hkenney-ticket/master/2157_remove_facts_dot_d'""
Diffstat (limited to 'spec/unit/facter/pe_version_spec.rb')
-rw-r--r--spec/unit/facter/pe_version_spec.rb68
1 files changed, 68 insertions, 0 deletions
diff --git a/spec/unit/facter/pe_version_spec.rb b/spec/unit/facter/pe_version_spec.rb
new file mode 100644
index 0000000..202a0e5
--- /dev/null
+++ b/spec/unit/facter/pe_version_spec.rb
@@ -0,0 +1,68 @@
+#!/usr/bin/env rspec
+
+require 'spec_helper'
+
+describe "PE Version specs" do
+ before :each do
+ Facter.collection.loader.load(:pe_version)
+ end
+
+ context "If PE is installed" do
+ %w{ 2.6.1 2.10.300 }.each do |version|
+ puppetversion = "2.7.19 (Puppet Enterprise #{version})"
+ context "puppetversion => #{puppetversion}" do
+ before :each do
+ Facter.fact(:puppetversion).stubs(:value).returns(puppetversion)
+ end
+
+ (major,minor,patch) = version.split(".")
+
+ it "Should return true" do
+ Facter.fact(:is_pe).value.should == true
+ end
+
+ it "Should have a version of #{version}" do
+ Facter.fact(:pe_version).value.should == version
+ end
+
+ it "Should have a major version of #{major}" do
+ Facter.fact(:pe_major_version).value.should == major
+ end
+
+ it "Should have a minor version of #{minor}" do
+ Facter.fact(:pe_minor_version).value.should == minor
+ end
+
+ it "Should have a patch version of #{patch}" do
+ Facter.fact(:pe_patch_version).value.should == patch
+ end
+ end
+ end
+ end
+
+ context "When PE is not installed" do
+ before :each do
+ Facter.fact(:puppetversion).stubs(:value).returns("2.7.19")
+ end
+
+ it "is_pe is false" do
+ Facter.fact(:is_pe).value.should == false
+ end
+
+ it "pe_version is nil" do
+ Facter.fact(:pe_version).value.should be_nil
+ end
+
+ it "pe_major_version is nil" do
+ Facter.fact(:pe_major_version).value.should be_nil
+ end
+
+ it "pe_minor_version is nil" do
+ Facter.fact(:pe_minor_version).value.should be_nil
+ end
+
+ it "Should have a patch version" do
+ Facter.fact(:pe_patch_version).value.should be_nil
+ end
+ end
+end