Commit graph

271 commits

Author SHA1 Message Date
Jeff McCune
61891bbe61 (#13494) Specify the behavior of zero padded strings
Without this patch the specified behavior of strings that are numeric
only and zero padded is unclear and untested in the spec tests.  This is
a problem because it's not clear that range('00', '10') will actually
return [ "0", "1", ..., "10" ] instead of [ "00", "01", ..., "10" ]

This patch addresses the issue by providing explicit test coverage.  If
the string conversion behavior of puppet changes, this test will begin
to fail.
2012-03-29 15:17:30 -07:00
Ken Barber
46401caef6 Merge branch '2.1.x' into 2.2.x
* 2.1.x:
  (#12377) Avoid infinite loop when retrying require json
2012-02-07 13:37:16 +00:00
Ken Barber
52bc8809cb Merge branch 'ticket/2.2.x/12377_stdlib_facter_dot_d_loaderror_recovery_may_be_harmful' into 2.1.x
* ticket/2.2.x/12377_stdlib_facter_dot_d_loaderror_recovery_may_be_harmful:
  (#12377) Avoid infinite loop when retrying require json
2012-02-06 17:55:43 +00:00
Jeff McCune
24f7095e28 (#12377) Avoid infinite loop when retrying require json
Without this patch an infinite loop will be entered if the json and
rubygems libraries are not available.

This patch fixes the problem by retrying the `require 'json'` only if
rubygems was successfully loaded for the first time.  Subsequent
attempts to load rubygems will cause the LoadError exception from a
missing json library to be re-raised.

Thanks to Krzysztof Wilczynski for pointing out this issue.
2012-02-06 17:54:41 +00:00
Jeff McCune
a03d8cda18 Merge branch 'bug/2.2.x/is_domain_name' into 2.2.x
* bug/2.2.x/is_domain_name:
  Check according to rfc1035
  Add additional domain name tests
  (maint) Memoize scope in domain_name spec

Closes pull request GH-24
2012-01-11 19:19:19 -08:00
Stig Sandbeck Mathisen
14b77eae6d Check according to rfc1035
Update doc string to match function
2012-01-11 19:17:03 -08:00
Jeff McCune
501bcba719 Add additional domain name tests
Without this patch some valid domain names are not covered in the spec
tests as Stig Sandbeck Mathisen <ssm@debian.org> points out.  This patch
adds spec tests for the domains "." and "x.com" which are both valid.
2012-01-11 19:17:03 -08:00
Jeff McCune
39d28497a3 (maint) Memoize scope in domain_name spec
This is an opportunity improvement since I'm in the code.  Get rid of
instance variables in the spec test and replace them with a memo let
method block.
2012-01-11 19:17:03 -08:00
Jeff McCune
dc674419ae Merge branch 'ticket/2.2.x/11901-rspec_sort_order' into 2.2.x
* ticket/2.2.x/11901-rspec_sort_order:
  (#11901) Fix sort order error in tests for 'keys' and 'values'
2012-01-11 17:48:30 -08:00
Jeff McCune
b7a59a8095 (#11901) Fix sort order error in tests for 'keys' and 'values'
Between Ruby 1.8.7 p352 and p357 the way arrays were returned when using
keys and values in Ruby changed, and due to assumption about the
ordering our tests are now failing.

This patch fixes the issue by using the =~ operator matcher in rspec.
This matcher is implemented as RSpec::Matchers::MatchArray and performs
multiset equality matching of arrays.  Order doesn't matter, but
duplicate values do.

This patch also switches @scope instance variables to memoized let
methods for clarity in the code.

Original Author: Ken Barber
Reviewed-by: Nick Lewis

This commit closes GH-29
2012-01-11 17:39:15 -08:00
Daniel Pittman
b082094599 Merge pull request #28 from kbarber/ticket/2.2.x/11873-time_spec_failure
(#11873) time function spec failure on Fixnum matcher
2012-01-10 11:01:32 -08:00
Ken Barber
7d545f0d60 (#11873) time function spec failure on Fixnum matcher
The rspec code for the time function was trying to match the type to be a
'Fixnum'. Ruby will sometimes make this a 'Bignum' depending on its internals
and we can't rely on this to be true all the time.

This patch just makes sure the type is an integer instead.
2012-01-10 18:58:07 +00:00
Jeff McCune
1370c64df9 Merge branch '2.1.x' into 2.2.x
* 2.1.x:
  (#11607) Add Rakefile to enable spec testing
2011-12-30 15:49:41 -08:00
Jeff McCune
4c2bba86f8 Merge pull request #26 from jeffmccune/ticket/2.1.x/11607_fix_ci_tests_for_stdlib
(#11607) Add Rakefile to enable spec testing
2011-12-30 15:49:03 -08:00
Jeff McCune
0be3090f0f (#11607) Add Rakefile to enable spec testing
Without this patch the 2.1.x branch does not have a Rakefile like the
2.2.x and master branches do.  This is a problem for the continuous
integration testing since it executes `rake test` against 2.1.x, 2.2.x
and master currently.

This patch fixes the problem by copying the Rakefile into place enabling
the `rake test` task.

Reviewed-by: Josh Cooper
2011-12-30 15:48:15 -08:00
Jeff McCune
a70b09d5de Update CHANGELOG and Modulefile for 2.2.1 2011-12-30 12:21:21 -08:00
Jeff McCune
ed0de46a2a Merge branch '2.1.x' into 2.2.x
* 2.1.x:
  Update Modulefile CHANGELOG for v2.1.2 release

Conflicts:
	CHANGELOG
	Modulefile
2011-12-30 12:19:15 -08:00
Jeff McCune
842b0aa19c Update Modulefile CHANGELOG for v2.1.2 release 2011-12-30 12:05:15 -08:00
Jeff McCune
80c9a8feea Merge branch 'v2.1.x' into v2.2.x
* v2.1.x:
  (maint) Add semantic versioning info to README
  Docs: Clarify the use case for the anchor type
  Docs: Remove author emails from stdlib functions
  Docs: Copyedit function doc strings
  Docs: Correct indentation of markdown code examples
  Docs: Update documentation of stdlib classes
  Docs: Update file_line documentation
  Docs: Improve example in merge function
2011-12-30 11:48:21 -08:00
Jeff McCune
a8d4bbd9e2 (maint) Add semantic versioning info to README
This patch adds semantic versioning information to the README of this
module.  This information is missing and unclear without this patch.
This should help clarify the support matrix for the Standard Library as
it relates to Puppet Enterprise released versions.
2011-12-30 11:46:21 -08:00
Garrett Honeycutt
1434f3cea6 Merge pull request #21 from puppetlabs/v2.2
* v2.x:
2011-11-08 14:20:09 -08:00
James Turnbull
051764b3a1 * v2.x:
Update CHANGELOG and Modulefile for v2.2.0
2011-11-08 14:16:11 -08:00
Ken Barber
97d1c692f1 Merge pull request #19 from nanliu/ticket/10285
(#10285) Refactor json to use pson instead.
2011-10-25 16:31:47 -07:00
Nan Liu
b58810089f (#10285) Refactor json to use pson instead.
Remove json requirement since puppet already provides pson which is
equivalent.
2011-10-25 15:54:47 -07:00
Jeff McCune
d65fafd7ef Merge branch 'main/mater/watchr'
* main/mater/watchr:
  (Maint) Add watchr autotest script
2011-10-10 12:06:33 -07:00
Jeff McCune
a8ba1b388e (Maint) Add watchr autotest script
This patch adds a watchr script to autotest the stdlib module.  To use:

    % watchr spec/watchr.rb
2011-10-10 12:03:57 -07:00
Jeff McCune
01335cb8dd Merge pull request #18 from jeffmccune/maint/master/make_tests_run_on_puppet_26
(Maint) Make rspec tests work with Puppet 2.6.4
2011-10-10 12:02:34 -07:00
Jeff McCune
cc001095b3 (Maint) Make rspec tests work with Puppet 2.6.4
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.)
2011-10-10 11:58:48 -07:00
Jeff McCune
9f98d3feaf Merge branch 'ticket/master/revert_8925'
* ticket/master/revert_8925:
  (#10007) Revert "Merge pull request #13 from kbarber/issue/master/8925-user_ssl_certs"
2011-10-10 11:52:33 -07:00
Jeff McCune
07b2a3afd9 (#10007) Revert "Merge pull request #13 from kbarber/issue/master/8925-user_ssl_certs"
This reverts commit 14852e0259, reversing
changes made to a95dccd464.

This is to fix the broken build (failing tests) as per #8925 and #10007
2011-10-10 11:51:14 -07:00
James Turnbull
14852e0259 Merge pull request #13 from kbarber/issue/master/8925-user_ssl_certs
(#8925) Added new function called 'get_certificate' for retrieving
2011-10-04 13:00:16 -07:00
Jeff McCune
a95dccd464 Merge branch 'ticket/master/9859_add_root_home_fact_to_stdlib'
* ticket/master/9859_add_root_home_fact_to_stdlib:
  (#9859) Add root_home fact and tests
2011-10-03 11:53:21 -07:00
Jeff McCune
11c1837745 (#9859) Add root_home fact and tests
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.
2011-10-03 11:51:05 -07:00
Jeff McCune
bdba42dbb6 Merge pull request #16 from nfagerlund/docs/v2.0.0/XXXX_function_doc_updates
Docs/v2.0.0/xxxx function doc updates
2011-08-18 13:45:28 -07:00
nfagerlund
8e770b0423 Docs: Clarify the use case for the anchor type
This commit tweaks the docs for the anchor resource type to give more context
for its existence.
2011-08-18 12:39:05 -07:00
nfagerlund
9e87fd1457 Docs: Remove author emails from stdlib functions
Author email addresses were included in the doc strings for some (but not all)
stdlib functions. This commit removes them in the interest of consistency.
2011-08-18 12:39:05 -07:00
nfagerlund
4b5dfcc733 Docs: Copyedit function doc strings
This commit makes several minor consistency and wording edits to the doc
strings of the stdlib functions.
2011-08-18 12:39:04 -07:00
nfagerlund
400b91ab02 Docs: Correct indentation of markdown code examples
Code examples in several function doc strings were only indented by two
spaces, which would not result in proper display when rendered as HTML. This
commit corrects the indentation to four spaces.
2011-08-18 12:39:04 -07:00
nfagerlund
fa2fde6635 Docs: Update documentation of stdlib classes
This commit edits the puppetdoc text of the stdlib and stdlib::stages classes
to remove redundancy and add additional information.
2011-08-18 12:39:04 -07:00
Jeff McCune
0594aa9141 Docs: Update file_line documentation
This commit clarifies the behavior of the file_line resource type.
2011-08-18 12:39:04 -07:00
Jeff McCune
27c3b644b0 Docs: Improve example in merge function
This commit replaces the example in the merge function with a much clearer
one. It also mentions that the rightmost value wins in the event of duplicated
hash keys.
2011-08-18 12:39:04 -07:00
Jeff McCune
05018f6819 Merge branch 'v2.x'
* v2.x:
  Update CHANGELOG, README and Modulefile for v2.1.1
2011-08-18 12:07:29 -07:00
Jeff McCune
ad5316f561 Update CHANGELOG, README and Modulefile for v2.1.1 2011-08-18 12:06:44 -07:00
Jeff McCune
a8b217f39f Merge branch 'ticket/v2.x/9080_match_facts.d_to_facter2dot0' into v2.x
* ticket/v2.x/9080_match_facts.d_to_facter2dot0:
  (#9080) Make facts.d match Facter 2.0
2011-08-18 12:06:30 -07:00
Jeff McCune
44e92bb176 Update CHANGELOG, README and Modulefile for v2.1.1 2011-08-18 10:52:54 -07:00
Jeff McCune
d7bdfe1dff Merge branch 'ticket/v2.x/9080_match_facts.d_to_facter2dot0'
* ticket/v2.x/9080_match_facts.d_to_facter2dot0:
  (#9080) Make facts.d match Facter 2.0
2011-08-18 10:50:35 -07:00
Jeff McCune
d30e7f81d0 (#9080) Make facts.d match Facter 2.0
Based on feedback from Luke, the facts.d directory should at least match
the directory that will be used by Facter 2.0.

Reading #2157 I believe the Facter 2.0 facts.d feature is reasonably API
compatible with this custom fact from R.I. so I'm comfortable using the
same filesystem path.

Change in behavior:  Now look for facts in:
 * /etc/facter/facts.d
 * /etc/puppetlabs/facter/facts.d
2011-08-18 10:44:40 -07:00
Jeff McCune
e6d62cde42 Merge branch 'v2.x'
* v2.x:
  Update CHANGELOG, Modulefile and README for 2.1.0
  (#9080) Add facts from /etc/puppetlabs/facts.d
2011-08-17 16:38:14 -07:00
Jeff McCune
06b549b028 Update CHANGELOG, Modulefile and README for 2.1.0 2011-08-17 16:37:20 -07:00
Jeff McCune
82267be5be Merge branch 'ticket/v2.x/9080_add_static_facts' into v2.x
* ticket/v2.x/9080_add_static_facts:
  (#9080) Add facts from /etc/puppetlabs/facts.d
2011-08-17 16:32:46 -07:00