aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/migration_test.rb
diff options
context:
space:
mode:
authorGrant Neufeld <grant@grantneufeld.ca>2011-06-18 14:38:38 -0600
committerGrant Neufeld <grant@grantneufeld.ca>2011-06-18 14:38:38 -0600
commit3cc83a8f24ba61b648a2728efc113388cf1ec243 (patch)
tree6f79c8bf91d8739b9431442cdcaeae2962c4376d /activerecord/test/cases/migration_test.rb
parent2fbb7504e2c2b0a95398d1ef0c97ea4a403d831d (diff)
downloadrails-3cc83a8f24ba61b648a2728efc113388cf1ec243.tar.gz
rails-3cc83a8f24ba61b648a2728efc113388cf1ec243.tar.bz2
rails-3cc83a8f24ba61b648a2728efc113388cf1ec243.zip
Changed the default value for the options argument on ActiveRecord::ConnectionAdapters::Table#column_exists? from nil to an empty Hash {}.
That method calls through to ActiveRecord::ConnectionAdapters::SchemaStatements##column_exists? expects options to be a Hash. When options was nil, an error would occur in cases where the column did exist because the called method attempted to perform a key lookup on options.
Diffstat (limited to 'activerecord/test/cases/migration_test.rb')
-rw-r--r--activerecord/test/cases/migration_test.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/activerecord/test/cases/migration_test.rb b/activerecord/test/cases/migration_test.rb
index bf7565a0d0..93a1249e43 100644
--- a/activerecord/test/cases/migration_test.rb
+++ b/activerecord/test/cases/migration_test.rb
@@ -1071,6 +1071,18 @@ if ActiveRecord::Base.connection.supports_migrations?
Person.connection.drop_table :testings rescue nil
end
+ def test_column_exists_on_table_with_no_options_parameter_supplied
+ Person.connection.create_table :testings do |t|
+ t.string :foo
+ end
+ Person.connection.change_table :testings do |t|
+ assert t.column_exists?(:foo)
+ assert !(t.column_exists?(:bar))
+ end
+ ensure
+ Person.connection.drop_table :testings rescue nil
+ end
+
def test_add_table
assert !Reminder.table_exists?