collab/test/test_helper.rb

54 lines
2.0 KiB
Ruby
Raw Normal View History

2010-03-04 06:22:45 +00:00
ENV["RAILS_ENV"] = "test"
require File.expand_path(File.dirname(__FILE__) + "/../config/environment")
require 'test_help'
2010-03-05 06:48:00 +00:00
require 'factory_girl'
require 'factories/factory_loader'
2010-03-04 06:22:45 +00:00
class ActiveSupport::TestCase
# Transactional fixtures accelerate your tests by wrapping each test method
# in a transaction that's rolled back on completion. This ensures that the
# test database remains unchanged so your fixtures don't have to be reloaded
# between every test method. Fewer database queries means faster tests.
#
# Read Mike Clark's excellent walkthrough at
# http://clarkware.com/cgi/blosxom/2005/10/24#Rails10FastTesting
#
# Every Active Record database supports transactions except MyISAM tables
# in MySQL. Turn off transactional fixtures in this case; however, if you
# don't care one way or the other, switching from MyISAM to InnoDB tables
# is recommended.
#
# The only drawback to using transactional fixtures is when you actually
# need to test transactions. Since your test is bracketed by a transaction,
# any transactions started in your code will be automatically rolled back.
self.use_transactional_fixtures = true
# Instantiated fixtures are slow, but give you @david where otherwise you
# would need people(:david). If you don't want to migrate your existing
# test cases which use the @david style and don't mind the speed hit (each
# instantiated fixtures translates to a database query per test method),
# then set this back to true.
self.use_instantiated_fixtures = false
# Setup all fixtures in test/fixtures/*.(yml|csv) for all tests in alphabetical order.
#
# Note: You'll currently still have to declare fixtures explicitly in integration tests
# -- they do not yet inherit this setting
2010-03-05 06:48:00 +00:00
#fixtures :all
2010-03-04 06:22:45 +00:00
# Add more helper methods to be used by all tests here...
2010-03-15 15:47:32 +00:00
def sign_in_as(user)
@controller.current_user = user
return user
end
def sign_in
sign_in_as Factory(:email_confirmed_user)
end
def sign_out
@controller.current_user = nil
end
2010-03-04 06:22:45 +00:00
end