summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/puppet/provider/augeas/augeas.rb2
-rw-r--r--spec/unit/provider/augeas/augeas.rb13
2 files changed, 15 insertions, 0 deletions
diff --git a/lib/puppet/provider/augeas/augeas.rb b/lib/puppet/provider/augeas/augeas.rb
index 0c73b79be..a645fbe8a 100644
--- a/lib/puppet/provider/augeas/augeas.rb
+++ b/lib/puppet/provider/augeas/augeas.rb
@@ -66,6 +66,8 @@ Puppet::Type.type(:augeas).provide(:augeas) do
end
args = []
data.each do |line|
+ line.strip!
+ next if line.nil? || line.empty?
argline = []
sc = StringScanner.new(line)
cmd = sc.scan(/\w+|==|!=/)
diff --git a/spec/unit/provider/augeas/augeas.rb b/spec/unit/provider/augeas/augeas.rb
index 1ba614685..3b9bd2c95 100644
--- a/spec/unit/provider/augeas/augeas.rb
+++ b/spec/unit/provider/augeas/augeas.rb
@@ -35,6 +35,19 @@ describe provider_class do
tokens[1][1].should == "anakin"
end
+ it "should strip whitespace and ignore blank lines" do
+ @resource.stubs(:[]).returns("")
+ tokens = @provider.parse_commands(" set /Jar/Jar Binks \t\n \n\n rm anakin ")
+ tokens.size.should == 2
+ tokens[0].size.should == 3
+ tokens[1].size.should == 2
+ tokens[0][0].should == "set"
+ tokens[0][1].should == "/Jar/Jar"
+ tokens[0][2].should == "Binks"
+ tokens[1][0].should == "rm"
+ tokens[1][1].should == "anakin"
+ end
+
it "should handle arrays" do
@resource.stubs(:[]).returns("/foo/")
commands = ["set /Jar/Jar Binks", "rm anakin"]