From 7a3a38f58c099244c2a8b490f0b69c2fa63f3e16 Mon Sep 17 00:00:00 2001 From: Brice Figureau Date: Sat, 20 Sep 2008 14:14:44 +0200 Subject: Add rspec unit test for the append operator Signed-off-by: Brice Figureau --- spec/unit/parser/parser.rb | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100755 spec/unit/parser/parser.rb (limited to 'spec/unit/parser/parser.rb') diff --git a/spec/unit/parser/parser.rb b/spec/unit/parser/parser.rb new file mode 100755 index 000000000..94b19be40 --- /dev/null +++ b/spec/unit/parser/parser.rb @@ -0,0 +1,34 @@ +#!/usr/bin/env ruby + +require File.dirname(__FILE__) + '/../../spec_helper' + +describe Puppet::Parser do + + AST = Puppet::Parser::AST + + before :each do + @parser = Puppet::Parser::Parser.new :environment => "development" + end + + describe "when parsing append operator" do + + it "should not raise syntax errors" do + lambda { @parser.parse("$var += something") }.should_not raise_error + end + + it "shouldraise syntax error on incomplete syntax " do + lambda { @parser.parse("$var += ") }.should raise_error + end + + it "should call AST::VarDef with append=true" do + AST::VarDef.expects(:new).with { |h| h[:append] == true } + @parser.parse("$var += 2") + end + + it "should work with arrays too" do + AST::VarDef.expects(:new).with { |h| h[:append] == true } + @parser.parse("$var += ['test']") + end + + end +end -- cgit