On Teardown Restore schema to previous state.

This commit is contained in:
Russell Osborne 2014-03-14 23:52:35 -04:00
parent 0e80cd8779
commit de0c75aa80
4 changed files with 20 additions and 0 deletions

View File

@ -33,3 +33,12 @@ def change_schema
end
ActiveRecord::Migration.verbose = true
end
def restore_schema
ActiveRecord::Migration.verbose = false
ActiveRecord::Schema.define do
add_column :widgets, :sacrificial_column, :string
remove_column :versions, :custom_created_at
end
ActiveRecord::Migration.verbose = true
end

View File

@ -437,6 +437,10 @@ class HasPaperTrailModelTest < ActiveSupport::TestCase
@last = @widget.versions.last
end
teardown do
restore_schema
end
should 'reify previous version' do
assert_kind_of Widget, @last.reify
end

View File

@ -19,6 +19,7 @@ class TimestampTest < ActiveSupport::TestCase
teardown do
PaperTrail.timestamp_field = :created_at
restore_schema
end
test 'versions works with custom timestamp field' do

View File

@ -7,6 +7,12 @@ class PaperTrail::VersionTest < ActiveSupport::TestCase
assert PaperTrail::Version.creates.present?
end
teardown do
restore_schema
Animal.connection.schema_cache.clear!
Animal.reset_column_information
end
context "PaperTrail::Version.creates" do
should "return only create events" do
PaperTrail::Version.creates.each do |version|