cookbook-openstack-object-s.../TESTING.md
Mark Vanderwiel a12ec7c8a4 Cleanup cookbook contact info
* Consistent email across cookbooks
* Add Contributor.md to help out new folks
* Fix broken link in Testing.md
* Readme tweaks

Change-Id: I7df3222d77d555b5ae40c99c0626dc4a6b9fe7af
Partial-Bug: #1342735
2014-10-14 10:12:20 -05:00

1.6 KiB

Testing the Cookbook

This cookbook uses bundler and berkshelf to isolate dependencies. Make sure you have ruby 1.9.x, bundler, rake, build essentials and the header files for gecode installed before continuing. Make sure that you're using gecode version 3. More info here.

We have three test suites which you can run either, individually (there are three rake tasks):

$ rake lint
$ rake style
$ rake unit

or altogether:

$ rake test

The rake tasks will take care of installing the needed gem dependencies and cookbooks with berkshelf.

Rubocop

Rubocop is a static Ruby code analyzer, based on the community Ruby style guide. We are attempting to adhere to this where applicable, slowly cleaning up the cookbooks until we can turn on Rubocop for gating the commits.

Foodcritic

Foodcritic is a lint tool for Chef cookbooks. We ignore the following rules:

  • FC003 These cookbooks are not intended for Chef Solo.
  • FC023 Prefer conditional attributes.

Chefspec

ChefSpec is a unit testing framework for testing Chef cookbooks. ChefSpec makes it easy to write examples and get fast feedback on cookbook changes without the need for virtual machines or cloud servers.