Age | Commit message (Collapse) | Author |
|
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.
|
|
A bug fix in Puppet exposed that several tests were using rvalue functions
incorrectly (this was not properly checked by puppet before). This fixes those
tests.
|
|
The module PuppetlabsSpec::PuppetSeams has been renamed in the
puppetlabs_spec_helper gem to PuppetlabsSpec::PuppetInternals.
The method to obtain a scope object has also changed slightly. Without
this patch the spec tests will fail because the stdlib module is not
aligned with the spec helper gem. This patch fixes the problem by
matching up messages with their receivers in the spec helper library.
Paired-with: Andrew Parker <andy@puppetlabs.com>
|
|
Without this patch all of the spec tests for parser functions in stdlib
would instantiate their own scope instances. This is a problem because
the standard library is tightly coupled with the internal behavior of
Puppet. Tight coupling like this creates failures when we change the
internal behavior of Puppet. This is exactly what happened recently
when we changed the method signature for the initializer of
Puppet::Parser::Scope instances.
This patch fixes the problem by creating scope instances using the
puppet labs spec helper. The specific method that provides scope
instances in Puppet-version-independent way is something like this:
let(:scope) { PuppetlabsSpec::PuppetSeams.parser_scope }
This patch simply implements this across the board.
|
|
It is difficult to use existance of keys in a hash
as a boolean condition in Puppet (see #8705)
This function provides a working solution until
the underlying issue in Puppet can be resolved.
Reviewed-by: Jeff McCune
|