mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* lib/time.rb (Time#xmlschema): use subsec instead of nsec.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
16dc9e04cb
commit
fd9bfef325
3 changed files with 17 additions and 3 deletions
|
@ -1,3 +1,7 @@
|
|||
Wed Apr 22 02:10:48 2009 Tanaka Akira <akr@fsij.org>
|
||||
|
||||
* lib/time.rb (Time#xmlschema): use subsec instead of nsec.
|
||||
|
||||
Wed Apr 22 01:27:38 2009 Tanaka Akira <akr@fsij.org>
|
||||
|
||||
* time.c (time_arg): use the year argument as-is. [ruby-dev:38194]
|
||||
|
|
|
@ -502,10 +502,8 @@ class Time
|
|||
year, mon, day, hour, min, sec) +
|
||||
if fraction_digits == 0
|
||||
''
|
||||
elsif fraction_digits <= 9
|
||||
'.' + sprintf('%09d', nsec)[0, fraction_digits]
|
||||
else
|
||||
'.' + sprintf('%09d', nsec) + '0' * (fraction_digits - 9)
|
||||
'.' + sprintf('%0*d', fraction_digits, (subsec * 10**fraction_digits).floor)
|
||||
end +
|
||||
if utc?
|
||||
'Z'
|
||||
|
|
|
@ -153,6 +153,18 @@ class TestTimeExtention < Test::Unit::TestCase # :nodoc:
|
|||
assert_equal("2001-04-17T19:23:17.12345Z", t.xmlschema(5))
|
||||
assert_equal("2001-04-17T19:23:17.1Z", t.xmlschema(1))
|
||||
|
||||
t = Time.at(2.quo(3))
|
||||
assert_equal("1970-01-01T09:00:00.666+09:00", t.xmlschema(3))
|
||||
assert_equal("1970-01-01T09:00:00.6666666666+09:00", t.xmlschema(10))
|
||||
assert_equal("1970-01-01T09:00:00.66666666666666666666+09:00", t.xmlschema(20))
|
||||
|
||||
t = Time.at(123456789.quo(9999999999))
|
||||
assert_equal("1970-01-01T09:00:00.012+09:00", t.xmlschema(3))
|
||||
assert_equal("1970-01-01T09:00:00.012345678+09:00", t.xmlschema(9))
|
||||
assert_equal("1970-01-01T09:00:00.0123456789+09:00", t.xmlschema(10))
|
||||
assert_equal("1970-01-01T09:00:00.0123456789012345678+09:00", t.xmlschema(19))
|
||||
assert_equal("1970-01-01T09:00:00.01234567890123456789+09:00", t.xmlschema(20))
|
||||
|
||||
begin
|
||||
Time.at(-1)
|
||||
rescue ArgumentError
|
||||
|
|
Loading…
Add table
Reference in a new issue