diff options
| author | Brice Figureau <brice-puppet@daysofwonder.com> | 2008-09-20 14:14:44 +0200 |
|---|---|---|
| committer | James Turnbull <james@lovedthanlost.net> | 2008-09-21 02:32:51 +1000 |
| commit | 7a3a38f58c099244c2a8b490f0b69c2fa63f3e16 (patch) | |
| tree | c5bf762a1f3a7f9f0fa0a23eb442290e929e5a61 /spec/unit/parser/ast | |
| parent | 16793d221f95b2430260c38cd7c36bb8a5ef8d49 (diff) | |
| download | puppet-7a3a38f58c099244c2a8b490f0b69c2fa63f3e16.tar.gz puppet-7a3a38f58c099244c2a8b490f0b69c2fa63f3e16.tar.xz puppet-7a3a38f58c099244c2a8b490f0b69c2fa63f3e16.zip | |
Add rspec unit test for the append operator
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
Diffstat (limited to 'spec/unit/parser/ast')
| -rwxr-xr-x | spec/unit/parser/ast/vardef.rb | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/spec/unit/parser/ast/vardef.rb b/spec/unit/parser/ast/vardef.rb new file mode 100755 index 000000000..6bd355c89 --- /dev/null +++ b/spec/unit/parser/ast/vardef.rb @@ -0,0 +1,47 @@ +#!/usr/bin/env ruby + +require File.dirname(__FILE__) + '/../../../spec_helper' + +describe Puppet::Parser::AST::VarDef do + before :each do + @scope = Puppet::Parser::Scope.new() + end + + describe "when evaluating" do + + it "should evaluate arguments" do + name = mock 'name' + value = mock 'value' + + name.expects(:safeevaluate).with(@scope) + value.expects(:safeevaluate).with(@scope) + + vardef = Puppet::Parser::AST::VarDef.new :name => name, :value => value, :file => nil, + :line => nil + vardef.evaluate(@scope) + end + + it "should be in append=false mode if called without append" do + name = stub 'name', :safeevaluate => "var" + value = stub 'value', :safeevaluate => "1" + + @scope.expects(:setvar).with { |name,value,file,line,append| append == nil } + + vardef = Puppet::Parser::AST::VarDef.new :name => name, :value => value, :file => nil, + :line => nil + vardef.evaluate(@scope) + end + + it "should call scope in append mode if append is true" do + name = stub 'name', :safeevaluate => "var" + value = stub 'value', :safeevaluate => "1" + + @scope.expects(:setvar).with { |name,value,file,line,append| append == true } + + vardef = Puppet::Parser::AST::VarDef.new :name => name, :value => value, :file => nil, + :line => nil, :append => true + vardef.evaluate(@scope) + end + + end +end |
