Age | Commit message (Collapse) | Author |
|
This is copied and changed code from an older version of puppet's internal
test setup code. It does not work with puppet4.
|
|
Tests in the new style produces the following documentation output:
abs
should not eq nil
should run abs() and raise an Puppet::ParseError
should run abs(-34) and return 34
should run abs("-34") and return 34
should run abs(34) and return 34
should run abs("34") and return 34
|
|
Usage:
describe 'puppet3 behaviour', :unless => RSpec.configuration.puppet_future do
describe 'puppet4 behaviour', :if => RSpec.configuration.puppet_future do
|
|
|
|
This only roots all Facter instances into memory, while something already
creates a new Facter instance each run.
|
|
|
|
|
|
simplecov 0.9 dropped ruby 1.8 support, and stdlib is one of the oddball
modules that uses it. So we could probably just remove it and be okay.
|
|
|
|
complaining loudly
|
|
This work updates a number of Gems to the latest versions (rspec,
rspec-puppet), and updates and tweaks a bunch of tests to work
with the updated gems.
|
|
This reverts commit d6d23b495cda0e154b4e73982acc43e586564c0e.
Why? Because this change set should actually be in master and our
merge-up process reverted the change set in master when I reverted from
2.4.x.
This patch reverts the revert, restoring the original change set.
|
|
This reverts commit 74e6411157b8df1af9a24c17971e3236f3096529, reversing
changes made to 417d219aa6e42f2a16af42c98aa063fc1d9d2ecd.
Here's why:
Actually... I just screwed this up.
I merged this new fact into 2.4.x but it's not fixing any bug. It's adding a
new fact, so this should go into master and we should release 2.5 since this is
new, backwards-compatible functionality.
|
|
Without this patch example groups must explicitly call `Facter.clear` to
clear any cached values between examples. This is a problem because
this behavior is not the concern of the example groups, the behavior is
the concern of the spec_helper or whatever facility we have in place to
initialize the system for testing.
This patch fixes the problem by duplicating the logic in the Facter
spec_helper to ensure facts are cleared out before each example.
This patch requires the example groups to explicitly load the facts they
require if the fact name does not match the filename.
|
|
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.
|
|
This patch back ports the file from the master branch. The spec tests
fail without this patch applied. This should make it easier to setup
Puppet settings using the puppet_spec_helper project.
|
|
'eshamow/tickets/bug/13595_restrict_initialize_everything_for_tests' into 2.2.x"
This reverts commit 40da421c0480f940638d0db9aabf180500d6ae5c, reversing
changes made to 69465b0f3e0c0c5284812bfa76ab8d3c254d10a9.
|
|
Replace regex used in spec_helper.rb to disallow both Puppet 2.6 and any
2.7 prior to 13.
|
|
When using MRI 1.9.x the stdlib spec helper does not invoke because
Puppet.settings.private_methods returns symbols instead of strings.
This is a problem because we need to set default configuration settings
like Puppet[:vardir] when using the compiler.
This patch fixes the issue by simply checking the Puppet version. This
seems a better choice than rescuing NoMethodError since the method might
be renamed or removed in the future.
|
|
Without this patch the spec_helper sends a message named
initialize_everything_for_tests to Puppet.settings. This is a problem
because Puppet 2.6.x does not have this method, only Puppet 2.7.x and
Puppet master have this method at this time and we're getting false
positive test failures.
This patch fixes the problem by looking before we leap. We test if the
private method exists before calling it. This works with Ruby 1.8.5 and
onwards and Puppet 2.6, 2.7 and master.
This should fix all of the failures I've caused in Jenkins today.
|
|
master
|
|
The behavior without this patch applied is that the rspec tests do not
function with Puppet 2.6.4. This patch back-ports some fixes introduced
in Puppet 2.7.x to the spec_helper to make the tests work as expected on
Puppet 2.6.4.
The specific patches back ported from Puppet are:
* 2ae88067 (Puppet::Util::ExecutionStub.reset)
* cf183534 (Switched spec tests to use a class rather than Array as the
log destination.)
|
|
Without this patch applied, the stdlib module does not provide a
root_home fact. This fact is necessary to easily determine the root
account home directory on platforms Puppet is supported on.
The major variations this fact address are:
---
solaris: /
linux: /root
macosx: /var/root
Spec tests using rspec have been provided as well to cover these three
general cases. Windows tests are marked as pending.
|
|
It was decided that maintaining puppetlabs-functions and
puppetlabs-stdlib was duplication as both are trying to
achieve the same goal.
This patch provides a merge of the puppetlabs-functions
into the puppetlabs-stdlib repository, with history
preservation.
The following conflicts were found and resolved:
* LICENSE file from functions was used as it aligns with
ASL usage instructions and contains relevant copyright
information:
http://www.apache.org/licenses/LICENSE-2.0.html
* Used spec_helper.rb from functions - this is what
Puppet core uses and doesn't break tests.
* Merged .gitignore and spec.opts options.
|
|
|
|
|