From e28ddea098d0422bae08324fb1d72f2b100152d0 Mon Sep 17 00:00:00 2001 From: Marc-Andre Lafortune Date: Mon, 19 Nov 2012 01:34:12 -0500 Subject: Differentiate between remove_column and remove_columns. Make remove_column reversible. [#8267] --- activerecord/test/cases/migration/change_table_test.rb | 4 ++-- activerecord/test/cases/migration/command_recorder_test.rb | 13 ++++++++++++- 2 files changed, 14 insertions(+), 3 deletions(-) (limited to 'activerecord/test/cases/migration') diff --git a/activerecord/test/cases/migration/change_table_test.rb b/activerecord/test/cases/migration/change_table_test.rb index 5800c46976..ac1ad176db 100644 --- a/activerecord/test/cases/migration/change_table_test.rb +++ b/activerecord/test/cases/migration/change_table_test.rb @@ -173,14 +173,14 @@ module ActiveRecord def test_remove_drops_single_column with_change_table do |t| - @connection.expect :remove_column, nil, [:delete_me, :bar] + @connection.expect :remove_columns, nil, [:delete_me, :bar] t.remove :bar end end def test_remove_drops_multiple_columns with_change_table do |t| - @connection.expect :remove_column, nil, [:delete_me, :bar, :baz] + @connection.expect :remove_columns, nil, [:delete_me, :bar, :baz] t.remove :bar, :baz end end diff --git a/activerecord/test/cases/migration/command_recorder_test.rb b/activerecord/test/cases/migration/command_recorder_test.rb index 66be0df4cd..8ebc1adaa6 100644 --- a/activerecord/test/cases/migration/command_recorder_test.rb +++ b/activerecord/test/cases/migration/command_recorder_test.rb @@ -127,7 +127,18 @@ module ActiveRecord def test_invert_add_column remove = @recorder.inverse_of :add_column, [:table, :column, :type, {}] - assert_equal [:remove_column, [:table, :column]], remove + assert_equal [:remove_column, [:table, :column, :type, {}]], remove + end + + def test_invert_remove_column + add = @recorder.inverse_of :remove_column, [:table, :column, :type, {}] + assert_equal [:add_column, [:table, :column, :type, {}]], add + end + + def test_invert_remove_column_without_type + assert_raises(ActiveRecord::IrreversibleMigration) do + @recorder.inverse_of :remove_column, [:table, :column] + end end def test_invert_rename_column -- cgit v1.2.3