mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
139b92495f
* TestCase: introduce declared setup and teardown callbacks. Pass a list of methods and an optional block to call before setup or after teardown. Setup callbacks are run in the order declared; teardown callbacks are run in reverse. [Jeremy Kemper] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8570 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
32 lines
769 B
Ruby
Executable file
32 lines
769 B
Ruby
Executable file
require 'abstract_unit'
|
|
|
|
class TestRecord < ActiveRecord::Base
|
|
end
|
|
|
|
class TestUnconnectedAdapter < ActiveSupport::TestCase
|
|
self.use_transactional_fixtures = false
|
|
|
|
def setup
|
|
@underlying = ActiveRecord::Base.connection
|
|
@specification = ActiveRecord::Base.remove_connection
|
|
end
|
|
|
|
def teardown
|
|
@underlying = nil
|
|
ActiveRecord::Base.establish_connection(@specification)
|
|
end
|
|
|
|
def test_connection_no_longer_established
|
|
assert_raise(ActiveRecord::ConnectionNotEstablished) do
|
|
TestRecord.find(1)
|
|
end
|
|
|
|
assert_raise(ActiveRecord::ConnectionNotEstablished) do
|
|
TestRecord.new.save
|
|
end
|
|
end
|
|
|
|
def test_underlying_adapter_no_longer_active
|
|
assert !@underlying.active?, "Removed adapter should no longer be active"
|
|
end
|
|
end
|