aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
diff options
context:
space:
mode:
authornanaya <me@myconan.net>2016-08-18 21:56:15 +0900
committernanaya <me@myconan.net>2016-09-01 14:06:35 +0900
commit4c2f7ee36a623090d276ef811d959adb0ecff743 (patch)
tree9df064414cd43d0fb6c2d6f65588014695261091 /activerecord/test/cases
parent501e979e186a3861581aa54f9930421223688d01 (diff)
downloadrails-4c2f7ee36a623090d276ef811d959adb0ecff743.tar.gz
rails-4c2f7ee36a623090d276ef811d959adb0ecff743.tar.bz2
rails-4c2f7ee36a623090d276ef811d959adb0ecff743.zip
Fix case insensitive check for text column in pg
There's no 'text to text' casting in the cast table so the feature detection fails.
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r--activerecord/test/cases/adapters/postgresql/case_insensitive_test.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/activerecord/test/cases/adapters/postgresql/case_insensitive_test.rb b/activerecord/test/cases/adapters/postgresql/case_insensitive_test.rb
new file mode 100644
index 0000000000..d04e55f5bf
--- /dev/null
+++ b/activerecord/test/cases/adapters/postgresql/case_insensitive_test.rb
@@ -0,0 +1,26 @@
+require "cases/helper"
+
+class PostgresqlCaseInsensitiveTest < ActiveRecord::PostgreSQLTestCase
+ class Default < ActiveRecord::Base; end
+
+ def test_case_insensitiveness
+ connection = ActiveRecord::Base.connection
+ table = Default.arel_table
+
+ column = Default.columns_hash["char1"]
+ comparison = connection.case_insensitive_comparison table, :char1, column, nil
+ assert_match /lower/i, comparison.to_sql
+
+ column = Default.columns_hash["char2"]
+ comparison = connection.case_insensitive_comparison table, :char2, column, nil
+ assert_match /lower/i, comparison.to_sql
+
+ column = Default.columns_hash["char3"]
+ comparison = connection.case_insensitive_comparison table, :char3, column, nil
+ assert_match /lower/i, comparison.to_sql
+
+ column = Default.columns_hash["multiline_default"]
+ comparison = connection.case_insensitive_comparison table, :multiline_default, column, nil
+ assert_match /lower/i, comparison.to_sql
+ end
+end