diff options
author | Rafael Mendonça França <rafaelmfranca@gmail.com> | 2012-10-29 22:47:58 -0200 |
---|---|---|
committer | Rafael Mendonça França <rafaelmfranca@gmail.com> | 2012-10-29 22:47:58 -0200 |
commit | 96a13fc7de77d7e5cdadb2857b94c4e859174faa (patch) | |
tree | 7f6e7f7b79a6be74ed257925668185def2b81913 /activerecord/test | |
parent | e6b41845efe2252fe7de6882e355c31f93c65cc3 (diff) | |
download | rails-96a13fc7de77d7e5cdadb2857b94c4e859174faa.tar.gz rails-96a13fc7de77d7e5cdadb2857b94c4e859174faa.tar.bz2 rails-96a13fc7de77d7e5cdadb2857b94c4e859174faa.zip |
Fix bug when Column is trying to type cast boolean values to integer.
This can occur if the user is using :integer columns to store boolean
values. Now we are handling the boolean values but it still raises if
the value can't type cast to integer and is not a boolean. See #7509.
Fixes #8067.
Diffstat (limited to 'activerecord/test')
-rw-r--r-- | activerecord/test/cases/column_test.rb | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/activerecord/test/cases/column_test.rb b/activerecord/test/cases/column_test.rb index 4fcf8a33a4..b1c1165bd9 100644 --- a/activerecord/test/cases/column_test.rb +++ b/activerecord/test/cases/column_test.rb @@ -33,6 +33,8 @@ module ActiveRecord assert_equal 0, column.type_cast('bad1') assert_equal 0, column.type_cast('bad') assert_equal 1, column.type_cast(1.7) + assert_equal 0, column.type_cast(false) + assert_equal 1, column.type_cast(true) assert_nil column.type_cast(nil) end @@ -41,11 +43,9 @@ module ActiveRecord assert_raises(NoMethodError) do column.type_cast([]) end + assert_raises(NoMethodError) do - column.type_cast(true) - end - assert_raises(NoMethodError) do - column.type_cast(false) + column.type_cast(Object.new) end end end |