-This module has grown over time based on a range of contributions from
-people using it. If you follow these contributing guidelines your patch
+If you follow these contributing guidelines your patch
will likely make it into a release a little quicker.
1. Fork the repo.
2. Run the tests. We only take pull requests with passing tests, and
- it's great to know that you have a clean slate
+ it's great to know that you have a clean slate.
3. Add a test for your change. Only refactoring and documentation
changes require no new tests. If you are adding functionality
## Dependencies
The testing and development tools have a bunch of dependencies,
-all managed by [bundler](http://bundler.io/) according to the
+all managed by [Bundler](http://bundler.io/) according to the
[Puppet support matrix](http://docs.puppetlabs.com/guides/platforms.html#ruby-versions).
By default the tests use a baseline version of Puppet.
## Running the unit tests
-The unit test suite covers most of the code, as mentioned above please
-add tests if you're adding new functionality. If you've not used
-[rspec-puppet](http://rspec-puppet.com/) before then feel free to ask
-about how best to test your new feature. Running the test suite is done
+The unit test suite covers most of the code. As mentioned above, please
+add tests if you're adding new functionality. Running the test suite is done
with:
bundle exec rake spec
The unit tests just check the code runs, not that it does exactly what
we want on a real machine. For that we're using
-[beaker](https://github.com/puppetlabs/beaker).
+[Beaker](https://github.com/puppetlabs/beaker).
-This fires up a new virtual machine (using vagrant) and runs a series of
-simple tests against it after applying the module. You can run this
-with:
+Beaker fires up a new virtual machine (using Vagrant) and runs a series of
+simple tests against it after applying the module. You can run our Beaker
+tests with:
bundle exec rake acceptance
-This will run the tests on an CentOS 6.5 virtual machine.
+This will use the host described in `spec/acceptance/nodeset/default.yml`
+by default. To run against another host, set the `RS_SET` environment
+variable to the name of a host described by a `.yml` file in the
+`nodeset` directory. For example, to run against Fedora 20:
+
+ RS_SET=fedora-20-x64 bundle exec rake acceptance
If you don't want to have to recreate the virtual machine every time you
can use `BEAKER_DESTROY=no` and `BEAKER_PROVISION=no`. On the first run you will
at least need `BEAKER_PROVISION` set to yes (the default). The Vagrantfile
for the created virtual machines will be in `.vagrant/beaker_vagrant_files`.
-