Merge pull request #242 from apenney/facts_d

Adjust the regular expression for facts.
This commit is contained in:
Hunter Haugen 2014-04-22 14:21:44 -07:00
commit 1bdb213778
2 changed files with 32 additions and 1 deletions

View file

@ -40,7 +40,7 @@ class Facter::Util::DotD
def txt_parser(file)
File.readlines(file).each do |line|
if line =~ /^(.+)=(.+)$/
if line =~ /^([^=]+)=(.+)$/
var = $1; val = $2
Facter.add(var) do

View file

@ -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