diff options
Diffstat (limited to 'test/language/parser.rb')
-rw-r--r-- | test/language/parser.rb | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/language/parser.rb b/test/language/parser.rb index 722d95d95..4328096b5 100644 --- a/test/language/parser.rb +++ b/test/language/parser.rb @@ -481,6 +481,25 @@ file { "/tmp/yayness": parser.parse } end + + def test_parsingif + parser = Puppet::Parser::Parser.new() + exec = proc do |val| + %{exec { "/bin/echo #{val}": logoutput => true }} + end + str1 = %{if true { #{exec.call("true")} }} + ret = nil + assert_nothing_raised { + ret = parser.parse(str1) + } + assert_instance_of(Puppet::Parser::AST::IfStatement, ret) + str2 = %{if true { #{exec.call("true")} } else { #{exec.call("false")} }} + assert_nothing_raised { + ret = parser.parse(str2) + } + assert_instance_of(Puppet::Parser::AST::IfStatement, ret) + assert_instance_of(Puppet::Parser::AST::Else, ret.else) + end end # $Id$ |