Sha256: ca638b79e654ee4271fb8a248debf8d8c5eea4613cb1da612e2bfcbb62c3f20b

Contents?: true

Size: 1.69 KB

Versions: 3

Compression:

Stored size: 1.69 KB

Contents

#!/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

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
puppet-0.24.9 spec/unit/parser/ast/vardef.rb
puppet-0.24.7 spec/unit/parser/ast/vardef.rb
puppet-0.24.8 spec/unit/parser/ast/vardef.rb