aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases/base_test.rb
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2012-03-27 11:27:51 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2012-03-27 11:27:51 -0700
commite96d04a2e4e244ea5053cb4e8ab97db604d0c796 (patch)
tree858c566b0893a23753bac11d8c3cf5ce5295b633 /activerecord/test/cases/base_test.rb
parentb42fbd3ecbc3e2c55987e0ae6331443dfd68d5b4 (diff)
downloadrails-e96d04a2e4e244ea5053cb4e8ab97db604d0c796.tar.gz
rails-e96d04a2e4e244ea5053cb4e8ab97db604d0c796.tar.bz2
rails-e96d04a2e4e244ea5053cb4e8ab97db604d0c796.zip
attributes are cached by string keys, so to_s to support symbols. fixes #5549
Diffstat (limited to 'activerecord/test/cases/base_test.rb')
-rw-r--r--activerecord/test/cases/base_test.rb16
1 files changed, 15 insertions, 1 deletions
diff --git a/activerecord/test/cases/base_test.rb b/activerecord/test/cases/base_test.rb
index fb2f66c4f8..ff39285f62 100644
--- a/activerecord/test/cases/base_test.rb
+++ b/activerecord/test/cases/base_test.rb
@@ -62,7 +62,11 @@ end
class Weird < ActiveRecord::Base; end
-class Boolean < ActiveRecord::Base; end
+class Boolean < ActiveRecord::Base
+ def has_fun
+ super
+ end
+end
class LintTest < ActiveRecord::TestCase
include ActiveModel::Lint::Tests
@@ -957,6 +961,16 @@ class BasicsTest < ActiveRecord::TestCase
assert b_true.value?
end
+ def test_boolean_without_questionmark
+ b_true = Boolean.create({ "value" => true })
+ true_id = b_true.id
+
+ subclass = Class.new(Boolean).find true_id
+ superclass = Boolean.find true_id
+
+ assert_equal superclass.read_attribute(:has_fun), subclass.read_attribute(:has_fun)
+ end
+
def test_boolean_cast_from_string
b_blank = Boolean.create({ "value" => "" })
blank_id = b_blank.id