diff options
Diffstat (limited to 'spec/unit/parser/functions/inline_epp_spec.rb')
-rw-r--r-- | spec/unit/parser/functions/inline_epp_spec.rb | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/spec/unit/parser/functions/inline_epp_spec.rb b/spec/unit/parser/functions/inline_epp_spec.rb deleted file mode 100644 index 44b24528b..000000000 --- a/spec/unit/parser/functions/inline_epp_spec.rb +++ /dev/null @@ -1,82 +0,0 @@ - -require 'spec_helper' - -describe "the inline_epp function" do - include PuppetSpec::Files - - before :all do - Puppet::Parser::Functions.autoloader.loadall - end - - before :each do - Puppet[:parser] = 'future' - end - - let :node do Puppet::Node.new('localhost') end - let :compiler do Puppet::Parser::Compiler.new(node) end - let :scope do Puppet::Parser::Scope.new(compiler) end - - context "when accessing scope variables as $ variables" do - it "looks up the value from the scope" do - scope["what"] = "are belong" - eval_template("all your base <%= $what %> to us").should == "all your base are belong to us" - end - - it "get nil accessing a variable that does not exist" do - eval_template("<%= $kryptonite == undef %>").should == "true" - end - - it "get nil accessing a variable that is undef" do - scope['undef_var'] = :undef - eval_template("<%= $undef_var == undef %>").should == "true" - end - - it "gets shadowed variable if args are given" do - scope['phantom'] = 'of the opera' - eval_template_with_args("<%= $phantom == dragos %>", 'phantom' => 'dragos').should == "true" - end - - it "gets shadowed variable if args are given and parameters are specified" do - scope['x'] = 'wrong one' - eval_template_with_args("<%-| $x |-%><%= $x == correct %>", 'x' => 'correct').should == "true" - end - - it "raises an error if required variable is not given" do - scope['x'] = 'wrong one' - expect { - eval_template_with_args("<%-| $x |-%><%= $x == correct %>", 'y' => 'correct') - }.to raise_error(/no value given for required parameters x/) - end - - it "raises an error if too many arguments are given" do - scope['x'] = 'wrong one' - expect { - eval_template_with_args("<%-| $x |-%><%= $x == correct %>", 'x' => 'correct', 'y' => 'surplus') - }.to raise_error(/Too many arguments: 2 for 1/) - end - end - - it "renders a block expression" do - eval_template_with_args("<%= {($x) $x + 1} %>", 'x' => 2).should == "3" - end - - # although never a problem with epp - it "is not interfered with by having a variable named 'string' (#14093)" do - scope['string'] = "this output should not be seen" - eval_template("some text that is static").should == "some text that is static" - end - - it "has access to a variable named 'string' (#14093)" do - scope['string'] = "the string value" - eval_template("string was: <%= $string %>").should == "string was: the string value" - end - - - def eval_template_with_args(content, args_hash) - scope.function_inline_epp([content, args_hash]) - end - - def eval_template(content) - scope.function_inline_epp([content]) - end -end |