| 1 |
ENV["RAILS_ENV"] = "test" |
|---|
| 2 |
require File.expand_path(File.dirname(__FILE__) + "/../config/environment") |
|---|
| 3 |
require 'test_help' |
|---|
| 4 |
|
|---|
| 5 |
class Test::Unit::TestCase |
|---|
| 6 |
# Transactional fixtures accelerate your tests by wrapping each test method |
|---|
| 7 |
# in a transaction that's rolled back on completion. This ensures that the |
|---|
| 8 |
# test database remains unchanged so your fixtures don't have to be reloaded |
|---|
| 9 |
# between every test method. Fewer database queries means faster tests. |
|---|
| 10 |
# |
|---|
| 11 |
# Read Mike Clark's excellent walkthrough at |
|---|
| 12 |
# http://clarkware.com/cgi/blosxom/2005/10/24#Rails10FastTesting |
|---|
| 13 |
# |
|---|
| 14 |
# Every Active Record database supports transactions except MyISAM tables |
|---|
| 15 |
# in MySQL. Turn off transactional fixtures in this case; however, if you |
|---|
| 16 |
# don't care one way or the other, switching from MyISAM to InnoDB tables |
|---|
| 17 |
# is recommended. |
|---|
| 18 |
# |
|---|
| 19 |
# The only drawback to using transactional fixtures is when you actually |
|---|
| 20 |
# need to test transactions. Since your test is bracketed by a transaction, |
|---|
| 21 |
# any transactions started in your code will be automatically rolled back. |
|---|
| 22 |
self.use_transactional_fixtures = true |
|---|
| 23 |
|
|---|
| 24 |
# Instantiated fixtures are slow, but give you @david where otherwise you |
|---|
| 25 |
# would need people(:david). If you don't want to migrate your existing |
|---|
| 26 |
# test cases which use the @david style and don't mind the speed hit (each |
|---|
| 27 |
# instantiated fixtures translates to a database query per test method), |
|---|
| 28 |
# then set this back to true. |
|---|
| 29 |
self.use_instantiated_fixtures = false |
|---|
| 30 |
|
|---|
| 31 |
# Setup all fixtures in test/fixtures/*.(yml|csv) for all tests in alphabetical order. |
|---|
| 32 |
# |
|---|
| 33 |
# Note: You'll currently still have to declare fixtures explicitly in integration tests |
|---|
| 34 |
# -- they do not yet inherit this setting |
|---|
| 35 |
fixtures :all |
|---|
| 36 |
|
|---|
| 37 |
# Add more helper methods to be used by all tests here... |
|---|
| 38 |
end |
|---|