aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/adapters/mysql/active_schema_test.rb
diff options
context:
space:
mode:
authordoabit <doinsist@gmail.com>2013-03-24 05:09:54 +0800
committerdoabit <doinsist@gmail.com>2013-03-24 05:09:54 +0800
commit8094156728f72d493916e3d3a8c8d90c5f2d79c0 (patch)
tree4772eec9db0ed9316941aee23fa5dd038587b3f9 /activerecord/test/cases/adapters/mysql/active_schema_test.rb
parent9e8b7d9d5bb3537f113fbda2a1720c5f412fbe62 (diff)
downloadrails-8094156728f72d493916e3d3a8c8d90c5f2d79c0.tar.gz
rails-8094156728f72d493916e3d3a8c8d90c5f2d79c0.tar.bz2
rails-8094156728f72d493916e3d3a8c8d90c5f2d79c0.zip
Custom index type support with :using.
Diffstat (limited to 'activerecord/test/cases/adapters/mysql/active_schema_test.rb')
-rw-r--r--activerecord/test/cases/adapters/mysql/active_schema_test.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/activerecord/test/cases/adapters/mysql/active_schema_test.rb b/activerecord/test/cases/adapters/mysql/active_schema_test.rb
index 5d71effb1f..568fd45888 100644
--- a/activerecord/test/cases/adapters/mysql/active_schema_test.rb
+++ b/activerecord/test/cases/adapters/mysql/active_schema_test.rb
@@ -35,6 +35,18 @@ class ActiveSchemaTest < ActiveRecord::TestCase
expected = "CREATE INDEX `index_people_on_last_name_and_first_name` ON `people` (`last_name`(15), `first_name`(10))"
assert_equal expected, add_index(:people, [:last_name, :first_name], :length => {:last_name => 15, :first_name => 10})
+
+ %w(btree hash).each do |type|
+ expected = "CREATE INDEX `index_people_on_last_name` USING #{type} ON `people` (`last_name`)"
+ assert_equal expected, add_index(:people, :last_name, :using => type)
+ end
+
+ expected = "CREATE INDEX `index_people_on_last_name` USING btree ON `people` (`last_name`(10))"
+ assert_equal expected, add_index(:people, :last_name, :length => 10, :using => :btree)
+
+ expected = "CREATE INDEX `index_people_on_last_name_and_first_name` USING btree ON `people` (`last_name`(15), `first_name`(15))"
+ assert_equal expected, add_index(:people, [:last_name, :first_name], :length => 15, :using => :btree)
+
ActiveRecord::ConnectionAdapters::MysqlAdapter.send(:remove_method, :index_name_exists?)
end