diff options
author | Beni Cherniavsky-Paskin <cben@redhat.com> | 2018-01-01 17:13:39 +0200 |
---|---|---|
committer | Beni Cherniavsky-Paskin <cben@redhat.com> | 2018-01-01 23:43:55 +0200 |
commit | bbcb1c9e6bec7a517bb4d65e026d6e85d4a04ffb (patch) | |
tree | 2314be6fbe66c7b78d770f42ce21d025ca6fd258 /activerecord/test/cases | |
parent | 5e4b70461dfd869c7d96b2528e666a9dd8e29183 (diff) | |
download | rails-bbcb1c9e6bec7a517bb4d65e026d6e85d4a04ffb.tar.gz rails-bbcb1c9e6bec7a517bb4d65e026d6e85d4a04ffb.tar.bz2 rails-bbcb1c9e6bec7a517bb4d65e026d6e85d4a04ffb.zip |
Allow type_for_attribute(:symbol)
Closes #31611.
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r-- | activerecord/test/cases/reflection_test.rb | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/activerecord/test/cases/reflection_test.rb b/activerecord/test/cases/reflection_test.rb index 44055e5ab6..2b605e5a60 100644 --- a/activerecord/test/cases/reflection_test.rb +++ b/activerecord/test/cases/reflection_test.rb @@ -66,6 +66,9 @@ class ReflectionTest < ActiveRecord::TestCase def test_column_string_type_and_limit assert_equal :string, @first.column_for_attribute("title").type + assert_equal :string, @first.column_for_attribute(:title).type + assert_equal :string, @first.type_for_attribute("title").type + assert_equal :string, @first.type_for_attribute(:title).type assert_equal 250, @first.column_for_attribute("title").limit end @@ -81,6 +84,9 @@ class ReflectionTest < ActiveRecord::TestCase def test_integer_columns assert_equal :integer, @first.column_for_attribute("id").type + assert_equal :integer, @first.column_for_attribute(:id).type + assert_equal :integer, @first.type_for_attribute("id").type + assert_equal :integer, @first.type_for_attribute(:id).type end def test_non_existent_columns_return_null_object @@ -89,6 +95,9 @@ class ReflectionTest < ActiveRecord::TestCase assert_equal "attribute_that_doesnt_exist", column.name assert_nil column.sql_type assert_nil column.type + + column = @first.column_for_attribute(:attribute_that_doesnt_exist) + assert_instance_of ActiveRecord::ConnectionAdapters::NullColumn, column end def test_non_existent_types_are_identity_types @@ -98,6 +107,11 @@ class ReflectionTest < ActiveRecord::TestCase assert_equal object, type.deserialize(object) assert_equal object, type.cast(object) assert_equal object, type.serialize(object) + + type = @first.type_for_attribute(:attribute_that_doesnt_exist) + assert_equal object, type.deserialize(object) + assert_equal object, type.cast(object) + assert_equal object, type.serialize(object) end def test_reflection_klass_for_nested_class_name |