2012-01-12 14:33:07 -05:00
|
|
|
require "cases/helper"
|
|
|
|
|
|
|
|
module ActiveRecord
|
|
|
|
class Migration
|
2012-01-16 14:21:20 -05:00
|
|
|
class << self
|
|
|
|
attr_accessor :message_count
|
|
|
|
end
|
|
|
|
|
|
|
|
def puts(text="")
|
|
|
|
ActiveRecord::Migration.message_count ||= 0
|
|
|
|
ActiveRecord::Migration.message_count += 1
|
|
|
|
end
|
|
|
|
|
2012-01-12 14:33:07 -05:00
|
|
|
module TestHelper
|
|
|
|
attr_reader :connection, :table_name
|
|
|
|
|
2012-07-02 15:41:49 -04:00
|
|
|
CONNECTION_METHODS = %w[add_column remove_column rename_column add_index change_column rename_table column_exists? index_exists? add_reference add_belongs_to remove_reference remove_references remove_belongs_to]
|
2012-06-30 09:09:35 -04:00
|
|
|
|
2012-01-12 14:33:07 -05:00
|
|
|
class TestModel < ActiveRecord::Base
|
2012-06-30 09:09:35 -04:00
|
|
|
self.table_name = :test_models
|
2012-01-12 14:33:07 -05:00
|
|
|
end
|
|
|
|
|
|
|
|
def setup
|
|
|
|
super
|
|
|
|
@connection = ActiveRecord::Base.connection
|
|
|
|
connection.create_table :test_models do |t|
|
|
|
|
t.timestamps
|
|
|
|
end
|
|
|
|
|
|
|
|
TestModel.reset_column_information
|
|
|
|
end
|
|
|
|
|
|
|
|
def teardown
|
|
|
|
super
|
2012-01-12 17:16:47 -05:00
|
|
|
TestModel.reset_table_name
|
|
|
|
TestModel.reset_sequence_name
|
2012-01-12 14:33:07 -05:00
|
|
|
connection.drop_table :test_models rescue nil
|
|
|
|
end
|
|
|
|
|
|
|
|
private
|
2012-01-12 16:14:58 -05:00
|
|
|
|
2012-06-30 09:09:35 -04:00
|
|
|
delegate(*CONNECTION_METHODS, to: :connection)
|
2012-01-12 14:33:07 -05:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|