summaryrefslogtreecommitdiffstats
path: root/spec/unit/parser
diff options
context:
space:
mode:
authorBrice Figureau <brice-puppet@daysofwonder.com>2008-10-05 18:52:20 +0200
committerJames Turnbull <james@lovedthanlost.net>2008-10-14 10:10:27 +1100
commit00d5fe403d754e61ae32f01f6879dfc93bfa6111 (patch)
tree64a005082df7b58a2d8b5d9f0e6e239ab677196a /spec/unit/parser
parentf5fb2d383ee9836bddd031b714907cddacd28046 (diff)
downloadpuppet-00d5fe403d754e61ae32f01f6879dfc93bfa6111.tar.gz
puppet-00d5fe403d754e61ae32f01f6879dfc93bfa6111.tar.xz
puppet-00d5fe403d754e61ae32f01f6879dfc93bfa6111.zip
Fix #1115 - Allow checking tags/classes from ERb templates
Add to predefined variables to the ERB template space. "classes" and "tags" which provide arrays of all the defined classes and tags for a node. Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
Diffstat (limited to 'spec/unit/parser')
-rwxr-xr-xspec/unit/parser/templatewrapper.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/spec/unit/parser/templatewrapper.rb b/spec/unit/parser/templatewrapper.rb
index 2d4bd141b..20ea76921 100755
--- a/spec/unit/parser/templatewrapper.rb
+++ b/spec/unit/parser/templatewrapper.rb
@@ -55,6 +55,20 @@ describe Puppet::Parser::TemplateWrapper do
tw.has_variable?("chicken").should eql(false)
end
+ it "should allow you to retrieve the defined classes with classes" do
+ catalog = mock 'catalog', :classes => ["class1", "class2"]
+ @scope.expects(:catalog).returns( catalog )
+ tw = Puppet::Parser::TemplateWrapper.new(@scope, @file)
+ tw.classes().should == ["class1", "class2"]
+ end
+
+ it "should allow you to retrieve the defined tags with tags" do
+ catalog = mock 'catalog', :tags => ["tag1", "tag2"]
+ @scope.expects(:catalog).returns( catalog )
+ tw = Puppet::Parser::TemplateWrapper.new(@scope, @file)
+ tw.tags().should == ["tag1","tag2"]
+ end
+
it "should set all of the scope's variables as instance variables" do
template_mock = mock("template", :result => "woot!")
File.expects(:read).with("/tmp/fake_template").returns("template contents")