mirror of
https://github.com/thoughtbot/shoulda-matchers.git
synced 2022-11-09 12:01:38 -05:00
.. | ||
fixtures | ||
functional | ||
matchers | ||
other | ||
rails_root | ||
unit | ||
fail_macros.rb | ||
model_builder.rb | ||
README | ||
rspec_test.rb | ||
test_helper.rb |
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 test.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 test ** 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>