diff options
author | Geoff Buesing <gbuesing@gmail.com> | 2008-02-16 20:47:01 +0000 |
---|---|---|
committer | Geoff Buesing <gbuesing@gmail.com> | 2008-02-16 20:47:01 +0000 |
commit | 2920bd22df21e9920b749ce3901522d494d551b7 (patch) | |
tree | 3f338da2d6cf33e72ecd16acb5ff0f73874f9c0b /activerecord/test | |
parent | 4e3ecec9c76c612facd995031fb1c2a499d5d4c4 (diff) | |
download | rails-2920bd22df21e9920b749ce3901522d494d551b7.tar.gz rails-2920bd22df21e9920b749ce3901522d494d551b7.tar.bz2 rails-2920bd22df21e9920b749ce3901522d494d551b7.zip |
ActiveRecord::Base#instantiate_time_object only uses Time.zone when Base.time_zone_aware_attributes is true; leverages Time#time_with_datetime_fallback for readability
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8882 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'activerecord/test')
-rwxr-xr-x | activerecord/test/cases/base_test.rb | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/activerecord/test/cases/base_test.rb b/activerecord/test/cases/base_test.rb index 9fde3130bd..4cba4a3ec6 100755 --- a/activerecord/test/cases/base_test.rb +++ b/activerecord/test/cases/base_test.rb @@ -969,6 +969,21 @@ class BasicsTest < ActiveRecord::TestCase end end + def test_multiparameter_attributes_on_time_with_time_zone_aware_attributes_false + ActiveRecord::Base.time_zone_aware_attributes = false + Time.zone = TimeZone[-28800] + attributes = { + "written_on(1i)" => "2004", "written_on(2i)" => "6", "written_on(3i)" => "24", + "written_on(4i)" => "16", "written_on(5i)" => "24", "written_on(6i)" => "00" + } + topic = Topic.find(1) + topic.attributes = attributes + assert_equal Time.local(2004, 6, 24, 16, 24, 0), topic.written_on + assert_equal false, topic.written_on.respond_to?(:time_zone) + ensure + Time.zone = nil + end + def test_multiparameter_attributes_on_time_with_skip_time_zone_conversion_for_attributes ActiveRecord::Base.time_zone_aware_attributes = true ActiveRecord::Base.default_timezone = :utc |