summaryrefslogtreecommitdiff
path: root/spec/unit
AgeCommit message (Collapse)Author
2015-08-28(MODULES-2478) Support root_home fact on AIX through "lsuser" commandJon Fautley
Squashed, and amended test for comment lines.
2015-08-06allow `match` parameter to influence `ensure => absent` behavior.Johnson Earls
Split the `destroy` method of the file_type::ruby provider into two private methods: `handle_destroy_line` which is the same as the previous `destroy` method, and `handle_destroy_with_match` which will destroy any line which matches the `match` parameter, raising an error if multiple lines match and the `multiple` parameter is not `true`. This new behavior is only used if the new boolean parameter `match_for_absence` is `true` (it defaults to `false`).
2015-08-04(MODULES-2316) Change file_type boolean parameter to symbolsDominic Cleal
Puppet's boolean parameter type is only available in Puppet 3.3 and higher, so change file_type's new "replace" parameter to a regular parameter with true and false as possible values. This matches the existing "multiple" parameter.
2015-07-30(MODULES-2024) Adding replace attribute to file_lineRaymond Maika
2015-06-01Convert tests to use plain rspec-puppetDavid Schmitt
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
2015-05-29 (MODULES-2071) Refactor file_line provider to contain logic to handle ↵Raymond Maika
parameter multiple in function handle_create_with_after Without this, file_line resource without the `match` parameter but with the `after` param will throw an error if there are multiple matches for the after expression. This patch creates the handling for the `multiple` parameter in handle_create_with_after. This allows you to add a line after the `after` expression if it appears at multiple points in a file. Updated reference to `file_line` in the README to reflect that the multiple parameter can be set when using `after` and/or `match` as the matching regex.
2015-05-05specs: move function specs to where rspec-puppet expects themDavid Schmitt
2015-04-09Add spec tests and pulled in PR #427Travis Fields
Changed append line to open in 'w' mode and have to rewrite lines in order to append new line
2015-01-07(MODULES-1473) Deprecate type() function for new parserHunter Haugen
The `type()` function will cease to work on the new parser because 'type' is a reserved keyword. The `type3x()` function may be used to continue similar functionality, but will be deprecated in favor of the built-in typing system. The `type_of()` function has been included to introspect types in the new parser.
2014-12-18Merge pull request #388 from mhaskel/merge_4.5.x_into_masterHunter Haugen
Merge 4.5.x into master
2014-12-17Added basename() based on Ruby's File.basenameRob Fugina
Based on dirname code. Includes RSpec tests and docs.
2014-12-16Remove line match validationHunter Haugen
The `match` attribute was validated to match `line`, except that in many cases (even the example given in the docs) a user would want to match a line entirely different from the new line. See comments on the original commit https://github.com/puppetlabs/puppetlabs-stdlib/commit/a06c0d8115892a74666676b50d4282df9850a119 and ask https://ask.puppetlabs.com/question/14366/file_line-resource-match-problems/ for further examples of confusion.
2014-06-04Convert specs to RSpec 2.99.0 syntax with TranspecAshley Penney
This conversion is done by Transpec 2.2.1 with the following command: transpec spec/unit * 53 conversions from: obj.should to: expect(obj).to * 19 conversions from: == expected to: eq(expected) * 5 conversions from: lambda { }.should to: expect { }.to * 2 conversions from: be_true to: be_truthy For more details: https://github.com/yujinakayama/transpec#supported-conversions
2014-05-15Merge pull request #258 from mckern/enhancement/master/camelcasedemboolsAshley Penney
(MODULES-905) Narrow the confinement in bool2str
2014-05-15(MODULES-905) Extend spec tests for bool2strRyan McKern
The extended spec tests validate that the common types of values that could be passed to bool2str() are rejected.
2014-05-15Revert "Merge pull request #256 from stbenjam/2571-before"Ashley Penney
This reverts commit 8499ebdb7f892f2623295058649c67a5553d4732, reversing changes made to 08b00d9229961d7b3c3cba997bfb35c8d47e4c4b.
2014-05-15Merge pull request #255 from mckern/enhancement/master/camelcasedemboolsAshley Penney
(MODULES-905) Add bool2str() and camelcase() for string manipulation
2014-05-14(PUP-2571) add 'before' functionality to file_lineStephen Benjamin
file_line supports adding lines after a match, but there are use cases when having "before" would be useful. For example, in Debian-based OS's, the last line of /etc/rc.local is "exit 0" it's an incredible pain to deal with that scenario today. This commit adds a 'before' parameter to the file_line type, and implements it for the ruby provider.
2014-05-13(maint) Add bool2str & camelcase spec testsRyan McKern
2014-05-08Move unit tests to spec/functionsHunter Haugen
rspec-puppet matchers are defined for tests which exist in spec/functions, but the function unit tests lived in spec/unit/puppet/parser/functions. This moves them to the correct place for using rspec-puppet
2014-05-07Add mode +x to spec .rb filesHunter Haugen
2014-05-07Move the 4 misplaced testsHunter Haugen
2014-05-07Add the missing shebangs and fix the wrong ones for rpmlint to stop ↵Andrea Veri
complaining loudly
2014-04-24Merge pull request #222 from mfoo/fix/master/concat-primitivesAshley Penney
Allow concat to take non-array second parameters
2014-04-22Adjust the regular expression for facts.Ashley Penney
Previously this was incorrectly handling facts that were of the form foo=1+1=2 due to the ='s in the actual fact contents. Fix this and add tests to try and prevent regressions.
2014-04-16(maint) Remove facter versions testKylo Ginsberg
This test attempts to emulate various versions of facter, but is still dependent on the version of facter it is running against. The immediate symptom was that the test breaks with facter 2.0.1 because it adds another external facts search directory. I tried a couple ways to stub this but allowing it to pretend to run against one set of facters, while actually running against one real facter (which might itself be one of several versions) eluded me. So this patch just removes the test.
2014-03-11Merge pull request #220 from mediatemple/fix/master/deep_merge_fixAshley Penney
PUP-1724 Don't modify the paramaters to deep_merge
2014-03-08Numerous changes to update testing gems.Ashley Penney
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.
2014-02-21Allow concat to take non-array second parametersMartin Foot
Also improve and extend concat tests to lock down functionality
2014-02-17PUP-1724 Don't modify the paramaters to deep_mergeJustin Burnham
Instead of modifying the first paramater of deep_merge due to the use of the merge! function, instead use merge to return a copy of the merged object. This allows one to continue to use the original first parameter after the call to deep_merge.
2014-02-05Remove trailing whitespaceSharif Nassar
2014-01-29(PUP-638) Add a pick_default() function that always returns a value.David Schmitt
This version of pick() does not error out, instead always returning at least the last argument, even if that too has no "real" value.
2014-01-28Merge pull request #215 from blkperl/add_root_home_to_mavericksAndrew Parker
(PUP-1459) Add support for root_home on OS X 10.9
2014-01-23(PUP-1195) Fix is_numeric/is_integer when checking non-string parametersSimon Effenberg
I expect a function called "is_numeric" or "is_integer" to check if a variable is an integer or a number even if the variable passed by isn't a string nor a number at all. Otherwise we should call them is_string_a_number and is_string_an_integer and we have then to remove the check for .is_a?(Number) and .is_a?(FixNum) now checking also if it is a hex or octal number improved/corrected checking for integer * checking against Integer instead of Fixnum so that also Bignum is matching * now .is_a? Integer is done first so this is quiet fast Now many types of numerics are recognized. 1. Float/Integer values (signed or unsigned, with exponent or without) 2. octal and hex check 3. except hex numbers and the "0." in a float lower than 1 can be prefixed with a '0'. whitespaces shouldn't be allowed as prefix/suffix string representation of numbers should not contain any type of whitespace.. the user is responsible to clean a string before checking it.. fix documentation and added more checks tried to be 99.9% backward compatible * for now the decission is post poned if hex and octal numbers should be allowed or not (is_numeric) * native Bignum is now also a valid integer class fix problem with old 1.8 ruby and Hash.to_s/Array.to_s In ruby < 1.9 array and hashes would be recognized as numeric if they have a special format: 1.8: [1,2,3,4].to_s = "1234" {1=>2}.to_s = "12" 1.9: [1,2,3,4].to_s = "[1, 2, 3, 4]" {1=>2}.to_s = "{1=>2}"
2014-01-22(PUP-1459) Add support for root_home on OS X 10.9William Van Hevelingen
getent does not exist on 10.9 so this commit uses dscacheutil to query the homedir for the root user.
2013-12-20(maint) Improve test coverage for prefix and suffixAdrien Thebo
2013-12-18(Maint) Update stubbing to work with facter 1.7.4Andrew Parker
Facter 1.7.4 changed how it decides on what directory to look in for facts.d based on the user it is running as. This stubs out that bit of code to make it think it is running as root.
2013-12-18Merge pull request #211 from jhoblitt/function_is_boolAndrew Parker
(#23381) add is_bool() function
2013-12-18Merge pull request #203 from dreamlibrarian/fix/is_function_available-ruby_cAndrew Parker
calling rspec directly makes is_function_available.rb not pass ruby -c
2013-12-09(#23381) add is_bool() functionJoshua Hoblitt
2013-11-20calling rspec directly makes this not pass ruby -c. adjusting to be in line ↵Tristan Smith
with the rest.
2013-11-19Fix the tests on osxTomas Doran
2013-10-29(#20200) Add a recursive merge function.Justin Burnham
Issue #20200 notes that the merge function does not support nested hashes. To prevent unintended side effects with changing merge, add a deep_merge function instead.
2013-10-29(Main) fix typo in pick error messageMatthew Haughton
Update pick error message "at least one non empty value"
2013-09-18Merge branch 'pull-180'Adrien Thebo
This closes GH-180
2013-09-18(maint) Simplify validate_cmd specsAdrien Thebo
2013-09-18(#22214): close content file before executing checkscriptsgzijl
Right now validation seems to be done against zero byte generated temp files. We need to close the file before executing validation against it.
2013-09-18Merge pull request #184 from lmello/fix_bug_20681_delete_undef_valuesAdrien Thebo
delete_undef_values function fix bug #20681
2013-09-18(#20681) fix behaviour of delete_undef_valuesLeonardo Rodrigues de Mello
The issue #20681 describe the error of delete() function removing the elements from the origin array/hash/string. This issue affected other delete functions. Because ruby delete and delete_if functions make destructive changes to the origin array/hash. The delete_undef_values removed elements from the origin array/hash and this is not the desired behaviour. To solve this, we should dup or clone the array/hash before using the delete or delete_if ruby functions. We should also check if args[0] is not nil before using dup, since dup on nil raises exception. This fix the problem and add unit tests, so we could enforce this behaviour and prevent regressions.
2013-09-17Merge pull request #183 from lmello/fix_bug_20681_delete_atAdrien Thebo
delete_at added spec to check against bug #20681