diff options
author | Jeff McCune <jeff@puppetlabs.com> | 2012-07-23 15:59:52 -0700 |
---|---|---|
committer | Jeff McCune <jeff@puppetlabs.com> | 2012-07-23 15:59:52 -0700 |
commit | 243c7c2a499697654101af726f1f47d367e41c13 (patch) | |
tree | 855d07f105866afbb26f5e093997a7d5f295e408 /spec/unit/puppet/parser/functions/validate_string_spec.rb | |
parent | cc414a422de0d773a1012ca57f41f15b4d6caf06 (diff) | |
parent | effdfb845092fbe549c286926ac686aab1746a12 (diff) |
Merge branch '2.3.x'
* 2.3.x:
(Maint) Don't mock with mocha
(Maint) Fix up the get_module_path parser function
(Maint) use PuppetlabsSpec::PuppetSeams.parser_scope (2.3.x)
(Maint) Rename PuppetlabsSpec::Puppet{Seams,Internals}
(Maint) use PuppetlabsSpec::PuppetSeams.parser_scope
(Maint) Fix interpreter lines
Conflicts:
spec/spec_helper.rb
spec/unit/puppet/parser/functions/get_module_path_spec.rb
Diffstat (limited to 'spec/unit/puppet/parser/functions/validate_string_spec.rb')
-rw-r--r-- | spec/unit/puppet/parser/functions/validate_string_spec.rb | 42 |
1 files changed, 10 insertions, 32 deletions
diff --git a/spec/unit/puppet/parser/functions/validate_string_spec.rb b/spec/unit/puppet/parser/functions/validate_string_spec.rb index 92392da..f40bf2a 100644 --- a/spec/unit/puppet/parser/functions/validate_string_spec.rb +++ b/spec/unit/puppet/parser/functions/validate_string_spec.rb @@ -1,24 +1,9 @@ -require 'puppet' +#! /usr/bin/env ruby -S rspec -# We don't need this for the basic tests we're doing -# require 'spec_helper' +require 'spec_helper' -# Dan mentioned that Nick recommended the function method call -# to return the string value for the test description. -# this will not even try the test if the function cannot be -# loaded. describe Puppet::Parser::Functions.function(:validate_string) do - - # Pulled from Dan's create_resources function - def get_scope - @topscope = Puppet::Parser::Scope.new - # This is necessary so we don't try to use the compiler to discover our parent. - @topscope.parent = nil - @scope = Puppet::Parser::Scope.new - @scope.compiler = Puppet::Parser::Compiler.new(Puppet::Node.new("floppy", :environment => 'production')) - @scope.parent = @topscope - @compiler = @scope.compiler - end + let(:scope) { PuppetlabsSpec::PuppetInternals.scope } describe 'when calling validate_string from puppet' do @@ -26,14 +11,12 @@ describe Puppet::Parser::Functions.function(:validate_string) do it "should compile when #{the_string} is a string" do Puppet[:code] = "validate_string('#{the_string}')" - get_scope - @scope.compiler.compile + scope.compiler.compile end it "should compile when #{the_string} is a bare word" do Puppet[:code] = "validate_string(#{the_string})" - get_scope - @scope.compiler.compile + scope.compiler.compile end end @@ -41,14 +24,12 @@ describe Puppet::Parser::Functions.function(:validate_string) do %w{ true false }.each do |the_string| it "should compile when #{the_string} is a string" do Puppet[:code] = "validate_string('#{the_string}')" - get_scope - @scope.compiler.compile + scope.compiler.compile end it "should not compile when #{the_string} is a bare word" do Puppet[:code] = "validate_string(#{the_string})" - get_scope - expect { @scope.compiler.compile }.should raise_error(Puppet::ParseError, /is not a string/) + expect { scope.compiler.compile }.should raise_error(Puppet::ParseError, /is not a string/) end end @@ -58,8 +39,7 @@ describe Puppet::Parser::Functions.function(:validate_string) do $bar = 'two' validate_string($foo, $bar) ENDofPUPPETcode - get_scope - @scope.compiler.compile + scope.compiler.compile end it "should compile when an explicitly undef variable is passed (NOTE THIS MAY NOT BE DESIRABLE)" do @@ -67,16 +47,14 @@ describe Puppet::Parser::Functions.function(:validate_string) do $foo = undef validate_string($foo) ENDofPUPPETcode - get_scope - @scope.compiler.compile + scope.compiler.compile end it "should compile when an undefined variable is passed (NOTE THIS MAY NOT BE DESIRABLE)" do Puppet[:code] = <<-'ENDofPUPPETcode' validate_string($foobarbazishouldnotexist) ENDofPUPPETcode - get_scope - @scope.compiler.compile + scope.compiler.compile end end end |