Sha256: 79dcd5678a083bf365ab48a0d90bf92ec8747a5081dfe61e8e87ecb24bfe2dcc

Contents?: true

Size: 1.98 KB

Versions: 6

Compression:

Stored size: 1.98 KB

Contents

#!/usr/bin/env ruby

require File.dirname(__FILE__) + '/../../../spec_helper'

describe Puppet::Parser::AST::Collection do
    before :each do
        @scope = stub_everything 'scope'
        @compiler = stub_everything 'compile'
        @scope.stubs(:compiler).returns(@compiler)

        @overrides = stub_everything 'overrides'
        @overrides.stubs(:is_a?).with(Puppet::Parser::AST).returns(true)

    end

    it "should evaluate its query" do
        query = mock 'query'
        collection = Puppet::Parser::AST::Collection.new :query => query, :form => :virtual

        query.expects(:safeevaluate).with(@scope)

        collection.evaluate(@scope)
    end

    it "should instantiate a Collector for this type" do
        collection = Puppet::Parser::AST::Collection.new :form => :virtual, :type => "test"

        Puppet::Parser::Collector.expects(:new).with(@scope, "test", nil, nil, :virtual)

        collection.evaluate(@scope)
    end

    it "should tell the compiler about this collector" do
        collection = Puppet::Parser::AST::Collection.new :form => :virtual, :type => "test"
        Puppet::Parser::Collector.stubs(:new).returns("whatever")

        @compiler.expects(:add_collection).with("whatever")

        collection.evaluate(@scope)
    end

    it "should evaluate overriden paramaters" do
        collector = stub_everything 'collector'
        collection = Puppet::Parser::AST::Collection.new :form => :virtual, :type => "test", :override => @overrides
        Puppet::Parser::Collector.stubs(:new).returns(collector)

        @overrides.expects(:safeevaluate).with(@scope)

        collection.evaluate(@scope)
    end

    it "should tell the collector about overrides" do
        collector = mock 'collector'
        collection = Puppet::Parser::AST::Collection.new :form => :virtual, :type => "test", :override => @overrides
        Puppet::Parser::Collector.stubs(:new).returns(collector)

        collector.expects(:add_override)

        collection.evaluate(@scope)
    end


end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
puppet-0.25.5 spec/unit/parser/ast/collection.rb
puppet-0.25.4 spec/unit/parser/ast/collection.rb
puppet-0.25.3 spec/unit/parser/ast/collection.rb
puppet-0.25.2 spec/unit/parser/ast/collection.rb
puppet-0.25.1 spec/unit/parser/ast/collection.rb
puppet-0.25.0 spec/unit/parser/ast/collection.rb