This is a place to test cookbook testing integrations
tailor- checks for preferred ruby styling. Initial guard against malformed ruby
foodcritic- lints style, correctness
knife cookbook test- checks correct syntax for a cookbook
chefspec- unit tests the chef convergence logic
- guard - run unit tests during development
- travis-ci - run integration tests post-commit
Install development dependencies:
Download any dependencies, run all tests:
rake berks rake
bundle exec guard start
chefspectests as files are saved.
Checkout a Feature branch, name it well!
git checkout -b <featurename>
Commit, issue pull request
Travis should not be checking style - that's part of development, but it does anyways.
Running unit tests against any cookbook that has dependencies (which many do) requires those dependencies to be available at test run time. Since Guard will watch files for changes, this means that getting the dependencies in place is crucial.
Berkshelf will install compiled cookbooks into
./cookbooks and then Guard will
<repo root>/cookbooks/<cookbook name>/[spec|any ruby file].