summaryrefslogtreecommitdiff
path: root/spec/unit/defaults_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/unit/defaults_spec.rb')
-rw-r--r--spec/unit/defaults_spec.rb30
1 files changed, 30 insertions, 0 deletions
diff --git a/spec/unit/defaults_spec.rb b/spec/unit/defaults_spec.rb
index f86283a64..0d141d91c 100644
--- a/spec/unit/defaults_spec.rb
+++ b/spec/unit/defaults_spec.rb
@@ -41,4 +41,34 @@ describe "Defaults" do
end
end
end
+
+ describe 'cfacter' do
+
+ before :each do
+ Facter.reset
+ end
+
+ it 'should default to false' do
+ Puppet.settings[:cfacter].should be_false
+ end
+
+ it 'should raise an error if cfacter is not installed' do
+ Puppet.features.stubs(:cfacter?).returns false
+ lambda { Puppet.settings[:cfacter] = true }.should raise_exception ArgumentError, 'cfacter version 0.2.0 or later is not installed.'
+ end
+
+ it 'should raise an error if facter has already evaluated facts' do
+ Facter[:facterversion]
+ Puppet.features.stubs(:cfacter?).returns true
+ lambda { Puppet.settings[:cfacter] = true }.should raise_exception ArgumentError, 'facter has already evaluated facts.'
+ end
+
+ it 'should initialize cfacter when set to true' do
+ Puppet.features.stubs(:cfacter?).returns true
+ CFacter = mock
+ CFacter.stubs(:initialize)
+ Puppet.settings[:cfacter] = true
+ end
+
+ end
end