aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/reflection_test.rb
diff options
context:
space:
mode:
authorRyuta Kamizono <kamipo@gmail.com>2017-10-21 05:37:53 +0900
committerRyuta Kamizono <kamipo@gmail.com>2017-10-21 05:37:53 +0900
commit590e3e7ad3c7c8c9127c580b01885fffa90d3bb6 (patch)
tree5c9d1ec7fbe1b343e5f0beedba9338b3ed7bd213 /activerecord/test/cases/reflection_test.rb
parentfeb0fd0ca91052bbdce8ed67ffa937ecfcf249ec (diff)
downloadrails-590e3e7ad3c7c8c9127c580b01885fffa90d3bb6.tar.gz
rails-590e3e7ad3c7c8c9127c580b01885fffa90d3bb6.tar.bz2
rails-590e3e7ad3c7c8c9127c580b01885fffa90d3bb6.zip
Add test cases for `type` and `foreign_type` in the reflections
It should be initialized only when polymorphic associations.
Diffstat (limited to 'activerecord/test/cases/reflection_test.rb')
-rw-r--r--activerecord/test/cases/reflection_test.rb7
1 files changed, 7 insertions, 0 deletions
diff --git a/activerecord/test/cases/reflection_test.rb b/activerecord/test/cases/reflection_test.rb
index 4cd2d3aedc..de1d244d65 100644
--- a/activerecord/test/cases/reflection_test.rb
+++ b/activerecord/test/cases/reflection_test.rb
@@ -366,9 +366,16 @@ class ReflectionTest < ActiveRecord::TestCase
assert_raises(ActiveRecord::UnknownPrimaryKey) { reflection.active_record_primary_key }
end
+ def test_type
+ assert_equal "taggable_type", Post.reflect_on_association(:taggings).type.to_s
+ assert_equal "imageable_class", Post.reflect_on_association(:images).type.to_s
+ assert_nil Post.reflect_on_association(:readers).type
+ end
+
def test_foreign_type
assert_equal "sponsorable_type", Sponsor.reflect_on_association(:sponsorable).foreign_type.to_s
assert_equal "sponsorable_type", Sponsor.reflect_on_association(:thing).foreign_type.to_s
+ assert_nil Sponsor.reflect_on_association(:sponsor_club).foreign_type
end
def test_collection_association