diff options
author | Ashley Penney <ashley.penney@puppetlabs.com> | 2014-04-22 23:14:16 +0200 |
---|---|---|
committer | Ashley Penney <ashley.penney@puppetlabs.com> | 2014-04-22 23:15:16 +0200 |
commit | 68acb59bf77d8d818489b1e2a97491cb7f327a0a (patch) | |
tree | 158f31acabe32a690c7261f99b17b89a21b5257b /spec/unit/facter | |
parent | 6a5dee25a6005280ef86a523192acf9b4d02e7ce (diff) |
Adjust the regular expression for facts.
Previously this was incorrectly handling facts that were of the form
foo=1+1=2 due to the ='s in the actual fact contents. Fix this and
add tests to try and prevent regressions.
Diffstat (limited to 'spec/unit/facter')
-rw-r--r-- | spec/unit/facter/facter_dot_d_spec.rb | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/spec/unit/facter/facter_dot_d_spec.rb b/spec/unit/facter/facter_dot_d_spec.rb new file mode 100644 index 0000000..1ecffc8 --- /dev/null +++ b/spec/unit/facter/facter_dot_d_spec.rb @@ -0,0 +1,31 @@ +require 'spec_helper' +require 'facter/facter_dot_d' + +describe Facter::Util::DotD do + + context 'returns a simple fact' do + before :each do + Facter.stubs(:version).returns('1.6.1') + subject.stubs(:entries).returns(['/etc/facter/facts.d/fake_fact.txt']) + File.stubs(:readlines).with('/etc/facter/facts.d/fake_fact.txt').returns(['fake_fact=fake fact']) + subject.create + end + + it 'should return successfully' do + Facter.fact(:fake_fact).value.should == 'fake fact' + end + end + + context 'returns a fact with equals signs' do + before :each do + Facter.stubs(:version).returns('1.6.1') + subject.stubs(:entries).returns(['/etc/facter/facts.d/foo.txt']) + File.stubs(:readlines).with('/etc/facter/facts.d/foo.txt').returns(['foo=1+1=2']) + subject.create + end + + it 'should return successfully' do + Facter.fact(:foo).value.should == '1+1=2' + end + end +end |