diff options
-rw-r--r-- | lib/puppet/provider/augeas/augeas.rb | 2 | ||||
-rw-r--r-- | spec/unit/provider/augeas/augeas.rb | 13 |
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"] |