diff options
author | Marcel Molina <marcel@vernix.org> | 2006-05-14 18:37:22 +0000 |
---|---|---|
committer | Marcel Molina <marcel@vernix.org> | 2006-05-14 18:37:22 +0000 |
commit | 9c5591da2dd9404ac189690ad59670ec7d364b16 (patch) | |
tree | 82211ae534882e127cf11a88a78ba5da0366421d /activerecord/test | |
parent | f2b3deb85cab1389d6b895b2e45b33054a96a6ba (diff) | |
download | rails-9c5591da2dd9404ac189690ad59670ec7d364b16.tar.gz rails-9c5591da2dd9404ac189690ad59670ec7d364b16.tar.bz2 rails-9c5591da2dd9404ac189690ad59670ec7d364b16.zip |
Preserve MySQL boolean column defaults when changing a column in a migration. Closes #5015. [pdcawley@bofh.org.uk]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4340 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activerecord/test')
-rw-r--r-- | activerecord/test/migration_test.rb | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/activerecord/test/migration_test.rb b/activerecord/test/migration_test.rb index 5714f539ca..e71790ed1f 100644 --- a/activerecord/test/migration_test.rb +++ b/activerecord/test/migration_test.rb @@ -1,5 +1,6 @@ require 'abstract_unit' require 'fixtures/person' +require 'fixtures/topic' require File.dirname(__FILE__) + '/fixtures/migrations/1_people_have_last_names' require File.dirname(__FILE__) + '/fixtures/migrations/2_we_need_reminders' @@ -320,6 +321,13 @@ if ActiveRecord::Base.connection.supports_migrations? new_columns = Person.connection.columns(Person.table_name, "#{name} Columns") assert_nil new_columns.find { |c| c.name == 'age' and c.type == :integer } assert new_columns.find { |c| c.name == 'age' and c.type == :string } + + old_columns = Topic.connection.columns(Topic.table_name, "#{name} Columns") + assert old_columns.find { |c| c.name == 'approved' and c.type == :boolean and c.default == true } + assert_nothing_raised { Topic.connection.change_column :topics, :approved, :boolean, :default => false } + new_columns = Topic.connection.columns(Topic.table_name, "#{name} Columns") + assert_nil new_columns.find { |c| c.name == 'approved' and c.type == :boolean and c.default == true } + assert new_columns.find { |c| c.name == 'approved' and c.type == :boolean and c.default == false } end def test_change_column_with_new_default |