From a03411b63ef86badb8fe03d14e6443420131717b Mon Sep 17 00:00:00 2001 From: akr Date: Sat, 5 Nov 2016 14:59:51 +0000 Subject: fix vtm_add_offset yday on last day of year. * time.c (vtm_add_offset): Fix yday on last day of year. [ruby-core:72878] [Bug #11994] Fixed by Andrew White. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_time.rb | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'test/ruby/test_time.rb') diff --git a/test/ruby/test_time.rb b/test/ruby/test_time.rb index 5a2ad42491..60bed87c9c 100644 --- a/test/ruby/test_time.rb +++ b/test/ruby/test_time.rb @@ -1072,4 +1072,21 @@ class TestTime < Test::Unit::TestCase assert_equal now2, now3 assert_equal now2.zone, now3.zone end + + def test_strftime_yearday_on_last_day_of_year + t = Time.utc(2015, 12, 31, 0, 0, 0) + assert_equal("365", t.strftime("%j")) + t = Time.utc(2016, 12, 31, 0, 0, 0) + assert_equal("366", t.strftime("%j")) + + t = Time.utc(2015, 12, 30, 20, 0, 0).getlocal("+05:00") + assert_equal("365", t.strftime("%j")) + t = Time.utc(2016, 12, 30, 20, 0, 0).getlocal("+05:00") + assert_equal("366", t.strftime("%j")) + + t = Time.utc(2016, 1, 1, 1, 0, 0).getlocal("-05:00") + assert_equal("365", t.strftime("%j")) + t = Time.utc(2017, 1, 1, 1, 0, 0).getlocal("-05:00") + assert_equal("366", t.strftime("%j")) + end end -- cgit v1.2.3