summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--spec/unit/puppet/parser/functions/validate_bool_spec.rb26
1 files changed, 17 insertions, 9 deletions
diff --git a/spec/unit/puppet/parser/functions/validate_bool_spec.rb b/spec/unit/puppet/parser/functions/validate_bool_spec.rb
index 19ecf23..e95c396 100644
--- a/spec/unit/puppet/parser/functions/validate_bool_spec.rb
+++ b/spec/unit/puppet/parser/functions/validate_bool_spec.rb
@@ -21,21 +21,29 @@ describe Puppet::Parser::Functions.function(:validate_bool) do
end
describe 'when calling validate_bool from puppet' do
- it "should validate true and false as bare words" do
- Puppet[:code] = 'validate_bool(true)'
- get_scope
- @scope.compiler.compile
- end
- it "should not compile when false is a string" do
- Puppet[:code] = 'validate_bool("false")'
- get_scope
- expect { @scope.compiler.compile }.should raise_error(Puppet::ParseError, /is not a boolean/)
+
+ %w{ true false }.each do |the_string|
+
+ it "should not compile when #{the_string} is a string" do
+ Puppet[:code] = "validate_bool('#{the_string}')"
+ get_scope
+ expect { @scope.compiler.compile }.should raise_error(Puppet::ParseError, /is not a boolean/)
+ end
+
+ it "should compile when #{the_string} is a bare word" do
+ Puppet[:code] = "validate_bool(#{the_string})"
+ get_scope
+ @scope.compiler.compile
+ end
+
end
+
it "should not compile when an arbitrary string is passed" do
Puppet[:code] = 'validate_bool("jeff and dan are awesome")'
get_scope
expect { @scope.compiler.compile }.should raise_error(Puppet::ParseError, /is not a boolean/)
end
+
it "should not compile when no arguments are passed" do
Puppet[:code] = 'validate_bool()'
get_scope