aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/adapters
diff options
context:
space:
mode:
authorRyuta Kamizono <kamipo@gmail.com>2018-05-19 20:39:52 +0900
committerRyuta Kamizono <kamipo@gmail.com>2018-05-25 23:55:38 +0900
commit8a600183550298a1f350a8fa8d72630da607fb60 (patch)
tree31d1b57cd110c16255a9faeeae89569634b61018 /activerecord/test/cases/adapters
parentcd4a88123dc17462d5c2ff29172b0366bca14e0e (diff)
downloadrails-8a600183550298a1f350a8fa8d72630da607fb60.tar.gz
rails-8a600183550298a1f350a8fa8d72630da607fb60.tar.bz2
rails-8a600183550298a1f350a8fa8d72630da607fb60.zip
Make force equality checking more strictly not to allow serialized attribute
Since #26074, introduced force equality checking to build a predicate consistently for both `find` and `create` (fixes #27313). But the assumption that only array/range attribute have subtype was wrong. We need to make force equality checking more strictly not to allow serialized attribute. Fixes #32761.
Diffstat (limited to 'activerecord/test/cases/adapters')
-rw-r--r--activerecord/test/cases/adapters/postgresql/range_test.rb6
1 files changed, 6 insertions, 0 deletions
diff --git a/activerecord/test/cases/adapters/postgresql/range_test.rb b/activerecord/test/cases/adapters/postgresql/range_test.rb
index 261c24634e..433598500d 100644
--- a/activerecord/test/cases/adapters/postgresql/range_test.rb
+++ b/activerecord/test/cases/adapters/postgresql/range_test.rb
@@ -341,6 +341,12 @@ _SQL
assert_equal record, PostgresqlRange.where(int4_range: range).take
end
+ def test_where_by_attribute_with_range_in_array
+ range = 1..100
+ record = PostgresqlRange.create!(int4_range: range)
+ assert_equal record, PostgresqlRange.where(int4_range: [range]).take
+ end
+
def test_update_all_with_ranges
PostgresqlRange.create!