]> gitweb.fluxo.info Git - puppet-stdlib.git/commitdiff
Disable tests that fail on 2.6.x due to #15912
authorPatrick Carlisle <patrick@puppetlabs.com>
Fri, 10 Aug 2012 18:43:36 +0000 (11:43 -0700)
committerPatrick Carlisle <patrick@puppetlabs.com>
Fri, 10 Aug 2012 18:43:36 +0000 (11:43 -0700)
In Puppet 2.6.x there is a bug where a function may be incorrectly detected as
an rvalue when it is not, or not detected when it is. This means that in tests
the correct syntax for calling a function will be rejected. This disables
those tests on 2.6.x, as there is no straightforward way to write them to be
compatible with both 2.6.x and newer versions of Puppet.

spec/unit/puppet/parser/functions/getvar_spec.rb
spec/unit/puppet/parser/functions/has_key_spec.rb
spec/unit/puppet/parser/functions/merge_spec.rb

index a8aeec14d3d198a93ceb588d13cf6b292873682a..5ff834ee71efa1d78d6918d767c59fd5d0e156c1 100644 (file)
@@ -6,6 +6,7 @@ describe Puppet::Parser::Functions.function(:getvar) do
   describe 'when calling getvar from puppet' do
 
     it "should not compile when no arguments are passed" do
+      pending("Fails on 2.6.x, see bug #15912") if Puppet.version =~ /^2\.6\./
       Puppet[:code] = '$foo = getvar()'
       expect {
         scope.compiler.compile
@@ -13,6 +14,7 @@ describe Puppet::Parser::Functions.function(:getvar) do
     end
 
     it "should not compile when too many arguments are passed" do
+      pending("Fails on 2.6.x, see bug #15912") if Puppet.version =~ /^2\.6\./
       Puppet[:code] = '$foo = getvar("foo::bar", "baz")'
       expect {
         scope.compiler.compile
@@ -20,6 +22,7 @@ describe Puppet::Parser::Functions.function(:getvar) do
     end
 
     it "should lookup variables in other namespaces" do
+      pending("Fails on 2.6.x, see bug #15912") if Puppet.version =~ /^2\.6\./
       Puppet[:code] = <<-'ENDofPUPPETcode'
         class site::data { $foo = 'baz' }
         include site::data
index b1eb0ff63ded979c1af8389a50a9d8239f511fa9..490daeae7cc2d30b67854b87ff783ee4be4ed52a 100644 (file)
@@ -6,6 +6,7 @@ describe Puppet::Parser::Functions.function(:has_key) do
 
   describe 'when calling has_key from puppet' do
     it "should not compile when no arguments are passed" do
+      pending("Fails on 2.6.x, see bug #15912") if Puppet.version =~ /^2\.6\./
       Puppet[:code] = '$x = has_key()'
       expect {
         scope.compiler.compile
@@ -13,6 +14,7 @@ describe Puppet::Parser::Functions.function(:has_key) do
     end
 
     it "should not compile when 1 argument is passed" do
+      pending("Fails on 2.6.x, see bug #15912") if Puppet.version =~ /^2\.6\./
       Puppet[:code] = "$x = has_key('foo')"
       expect {
         scope.compiler.compile
@@ -20,6 +22,7 @@ describe Puppet::Parser::Functions.function(:has_key) do
     end
 
     it "should require the first value to be a Hash" do
+      pending("Fails on 2.6.x, see bug #15912") if Puppet.version =~ /^2\.6\./
       Puppet[:code] = "$x = has_key('foo', 'bar')"
       expect {
         scope.compiler.compile
index 192da4c6442d0b4a6bd1a1e13c15b62414efee22..9218b9dca5b2f8b0749cc6aa554a51cde95f573a 100644 (file)
@@ -7,33 +7,40 @@ describe Puppet::Parser::Functions.function(:merge) do
 
   describe 'when calling merge from puppet' do
     it "should not compile when no arguments are passed" do
+      pending("Fails on 2.6.x, see bug #15912") if Puppet.version =~ /^2\.6\./
       Puppet[:code] = '$x = merge()'
       expect {
         scope.compiler.compile
       }.to raise_error(Puppet::ParseError, /wrong number of arguments/)
     end
+
     it "should not compile when 1 argument is passed" do
+      pending("Fails on 2.6.x, see bug #15912") if Puppet.version =~ /^2\.6\./
       Puppet[:code] = "$my_hash={'one' => 1}\n$x = merge($my_hash)"
       expect {
         scope.compiler.compile
       }.to raise_error(Puppet::ParseError, /wrong number of arguments/)
     end
   end
+
   describe 'when calling merge on the scope instance' do
     it 'should require all parameters are hashes' do
       expect { new_hash = scope.function_merge([{}, '2'])}.should raise_error(Puppet::ParseError, /unexpected argument type String/)
 
     end
+
     it 'should be able to merge two hashes' do
       new_hash = scope.function_merge([{'one' => '1', 'two' => '1'}, {'two' => '2', 'three' => '2'}])
       new_hash['one'].should   == '1'
       new_hash['two'].should   == '2'
       new_hash['three'].should == '2'
     end
+
     it 'should merge multiple hashes' do
       hash = scope.function_merge([{'one' => 1}, {'one' => '2'}, {'one' => '3'}])
       hash['one'].should == '3'
     end
+
     it 'should accept empty hashes' do
       scope.function_merge([{},{},{}]).should == {}
     end