From 029392bc879f70e3820bf47ceceb7bf0c9082e69 Mon Sep 17 00:00:00 2001 From: yugui Date: Sun, 30 Nov 2008 09:22:38 +0000 Subject: merges r20347 from trunk into ruby_1_9_1. * lib/date/format.rb (strftime): ignores '_' flag for %[LN]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@20408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 4 ++++ lib/date/format.rb | 2 ++ test/date/test_date_strftime.rb | 18 ++++++++++++++++++ 3 files changed, 24 insertions(+) diff --git a/ChangeLog b/ChangeLog index 0fe4c063c0..86ea7fbec3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Tue Nov 25 01:23:25 2008 Tadayoshi Funaba + + * lib/date/format.rb (strftime): ignores '_' flag for %[LN]. + Sat Nov 29 00:27:33 2008 Yuki Sonoda (Yugui) * thread.c, thread_pthread.c, thread_win32.c: merges nobu's commits - diff --git a/lib/date/format.rb b/lib/date/format.rb index c8bc10fbac..161cf85891 100644 --- a/lib/date/format.rb +++ b/lib/date/format.rb @@ -255,6 +255,7 @@ class Date when 'j'; emit_n(yday, 3, f) when 'k'; emit_a(hour, 2, f) when 'L' + f[:p] = nil w = f[:w] || 3 u = 10**w emit_n((sec_fraction * u).floor, w, f) @@ -262,6 +263,7 @@ class Date when 'M', 'OM'; emit_n(min, 2, f) when 'm', 'Om'; emit_n(mon, 2, f) when 'N' + f[:p] = nil w = f[:w] || 9 u = 10**w emit_n((sec_fraction * u).floor, w, f) diff --git a/test/date/test_date_strftime.rb b/test/date/test_date_strftime.rb index 1a190f21cc..4131af3aab 100644 --- a/test/date/test_date_strftime.rb +++ b/test/date/test_date_strftime.rb @@ -299,6 +299,24 @@ class TestDateStrftime < Test::Unit::TestCase assert_equal('-2000', d.strftime('%05Y')) end + def test_strftime__gnuext_LN # coreutils + d = DateTime.parse('2008-11-25T00:11:22.0123456789') + assert_equal('012', d.strftime('%L')) + assert_equal('012', d.strftime('%0L')) + assert_equal('0', d.strftime('%1L')) + assert_equal('01', d.strftime('%2L')) + assert_equal('01234567890', d.strftime('%11L')) + assert_equal('01234567890', d.strftime('%011L')) + assert_equal('01234567890', d.strftime('%_11L')) + assert_equal('012345678', d.strftime('%N')) + assert_equal('012345678', d.strftime('%0N')) + assert_equal('0', d.strftime('%1N')) + assert_equal('01', d.strftime('%2N')) + assert_equal('01234567890', d.strftime('%11N')) + assert_equal('01234567890', d.strftime('%011N')) + assert_equal('01234567890', d.strftime('%_11N')) + end + def test_strftime__gnuext_z # coreutils d = DateTime.parse('2006-08-08T23:15:33+09:08:07') assert_equal('+0908', d.strftime('%z')) -- cgit v1.2.3