public
Description: Makes tests easy on the fingers and the eyes
Homepage: http://www.thoughtbot.com/projects/shoulda
Clone URL: git://github.com/thoughtbot/shoulda.git
Search Repo:
tsaleh (author)
Mon Apr 28 10:23:41 -0700 2008
commit  051edf42e8d5d8ccddffe96660a4effe5efac25f
tree    d1db8e944fde378bf18e2b23b1699ce936136fb2
parent  c330c0ad2a4d7e7e0ac570d17e6b5f2bdb65cf62
shoulda / test
name age message
..
folder README Tue Apr 08 05:53:25 -0700 2008 - removed a bunch of unneeded files under the t... [tsaleh]
folder fixtures/ Sat Jul 14 11:35:51 -0700 2007 - completely refactored the test system to use ... [tsaleh]
folder functional/ Tue Jul 24 08:33:24 -0700 2007 stuff [tsaleh]
folder other/ Sat Apr 26 14:01:37 -0700 2008 refactored the mail assertions [tsaleh]
folder rails_root/ Sat Apr 26 14:42:14 -0700 2008 fixed should_have_and_belong_to to test for the... [tsaleh]
folder test_helper.rb Fri Aug 24 12:43:46 -0700 2007 autogenerating test plugin link [tsaleh]
folder unit/ Sat Apr 26 14:32:16 -0700 2008 added should_have_indices to test for database ... [tsaleh]
README
The Shoulda test suite (in particular - the tests that test shoulda)

Quick overview:

The test directory contains the following files and subdirectories:

* rails_root - contains the stripped down rails application that the tests run against.  The rails root contains:
** the models, controllers, and views defined under app/
** the sqlite3.rb environment file
** a migration file for each model
* fixtures - contain the sample DB data for each model
* functional - controller tests for each of the controllers under rails_root/app
* unit - model tests for each of the models under rails_root/app
* other - tests for the shoulda contexts, should statements, and assertions
* test_helper.rb - responsible for initializing the test environment
** sets the rails_env to sqlite3
** sets the rails_root
** creates the rails_root/vendor/plugins/shoulda symlink
** runs all the migrations against the in-memory sqlite3 db
** adds some magic to load the right fixture files

In order to add a new model (or controller) to the test suite:

* add that model to rails_root/app/models
* add a migration for that model
* add a fixture file
* add a test for that file under test/units

Dependencies:

* Rails gem installed in the host system
* A working sqlite3 installation.

If you have problems running these tests, please notify the mailing list:  shoulda@googlegroups.com

- Tammer Saleh <tsaleh@thoughtbot.com>