public
Rubygem
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
shoulda / test / README
100644 37 lines (27 sloc) 1.444 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
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
** a shoulda initializer that simulates loading the plugin but without relying on vendor/plugins
* 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
** 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>