From 927dff41df8f1c236c54eaee9fa1db7a3efaf02a Mon Sep 17 00:00:00 2001 From: Luke Kanies Date: Mon, 7 Jan 2008 12:19:21 -0600 Subject: Fixing #971 -- classes can once again be included multiple times. --- spec/unit/parser/compile.rb | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'spec') diff --git a/spec/unit/parser/compile.rb b/spec/unit/parser/compile.rb index 2ae99b5fd..092bece0c 100755 --- a/spec/unit/parser/compile.rb +++ b/spec/unit/parser/compile.rb @@ -106,7 +106,7 @@ describe Puppet::Parser::Compile, " when evaluating found classes" do @class = stub 'class', :classname => "my::class" @scope.stubs(:findclass).with("myclass").returns(@class) - @resource = mock 'resource' + @resource = stub 'resource', :ref => 'Class[myclass]' end it "should create a resource for each found class" do @@ -156,6 +156,19 @@ describe Puppet::Parser::Compile, " when evaluating found classes" do @compile.evaluate_classes(%w{myclass}, @scope, false) end + it "should skip classes that have already been evaluated" do + @compile.catalog.stubs(:tag) + + @compile.expects(:class_scope).with(@class).returns("something") + + @compile.expects(:store_resource).never + + @resource.expects(:evaluate).never + + Puppet::Parser::Resource.expects(:new).never + @compile.evaluate_classes(%w{myclass}, @scope, false) + end + it "should return the list of found classes" do @compile.catalog.stubs(:tag) -- cgit