aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test
diff options
context:
space:
mode:
authoredogawaconan <me@myconan.net>2014-06-05 18:31:39 +0900
committeredogawaconan <me@myconan.net>2014-06-05 21:47:05 +0900
commitf4bd67b687ba1a2a6f907939ea44717b41a505e1 (patch)
treee8cb6eb9fdf997d834f9ceda357bd2d7d68dee9e /activerecord/test
parentbb8b2141844872c94141091ffe3b45505fb3b4db (diff)
downloadrails-f4bd67b687ba1a2a6f907939ea44717b41a505e1.tar.gz
rails-f4bd67b687ba1a2a6f907939ea44717b41a505e1.tar.bz2
rails-f4bd67b687ba1a2a6f907939ea44717b41a505e1.zip
Fix behavior of handling BC era dates.
BC era year is (astronomical year + 1) and starts from 1 BC.
Diffstat (limited to 'activerecord/test')
-rw-r--r--activerecord/test/cases/adapters/postgresql/timestamp_test.rb12
1 files changed, 12 insertions, 0 deletions
diff --git a/activerecord/test/cases/adapters/postgresql/timestamp_test.rb b/activerecord/test/cases/adapters/postgresql/timestamp_test.rb
index d4102bf7be..3614b29190 100644
--- a/activerecord/test/cases/adapters/postgresql/timestamp_test.rb
+++ b/activerecord/test/cases/adapters/postgresql/timestamp_test.rb
@@ -123,6 +123,18 @@ class TimestampTest < ActiveRecord::TestCase
assert_equal date, Developer.find_by_name("aaron").updated_at
end
+ def test_bc_timestamp_leap_year
+ date = Time.utc(-4, 2, 29)
+ Developer.create!(:name => "taihou", :updated_at => date)
+ assert_equal date, Developer.find_by_name("taihou").updated_at
+ end
+
+ def test_bc_timestamp_year_zero
+ date = Time.utc(0, 4, 7)
+ Developer.create!(:name => "yahagi", :updated_at => date)
+ assert_equal date, Developer.find_by_name("yahagi").updated_at
+ end
+
private
def pg_datetime_precision(table_name, column_name)