summaryrefslogtreecommitdiffstats
path: root/spec/unit
diff options
context:
space:
mode:
Diffstat (limited to 'spec/unit')
-rwxr-xr-xspec/unit/parser/scope.rb30
1 files changed, 30 insertions, 0 deletions
diff --git a/spec/unit/parser/scope.rb b/spec/unit/parser/scope.rb
index 641a3f946..665b2ed63 100755
--- a/spec/unit/parser/scope.rb
+++ b/spec/unit/parser/scope.rb
@@ -223,6 +223,36 @@ describe Puppet::Parser::Scope do
end
end
+ describe "when interpolating string" do
+ (0..9).each do |n|
+ it "should allow $#{n} to match" do
+ @scope.setvar(n.to_s, "value", :ephemeral => true)
+
+ @scope.strinterp("$#{n}").should == "value"
+ end
+ end
+
+ (0..9).each do |n|
+ it "should not allow $#{n} to match if not ephemeral" do
+ @scope.setvar(n.to_s, "value", :ephemeral => false)
+
+ @scope.strinterp("$#{n}").should_not == "value"
+ end
+ end
+
+ it "should not allow $10 to match" do
+ @scope.setvar("10", "value", :ephemeral => true)
+
+ @scope.strinterp('==$10==').should_not == "==value=="
+ end
+
+ it "should not allow ${10} to match" do
+ @scope.setvar("10", "value", :ephemeral => true)
+
+ @scope.strinterp('==${10}==').should == "==value=="
+ end
+ end
+
describe "when setting ephemeral vars from matches" do
before :each do
@match = stub 'match', :is_a? => true