aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--lib/test/unit/assertions.rb12
2 files changed, 15 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 44e647b2f6..7347127e35 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Sep 29 22:19:36 2009 Tanaka Akira <akr@fsij.org>
+
+ * lib/test/unit/assertions.rb (assert_equal): use Time#subsec if nsec
+ is not enough to distinguish arguments.
+
Tue Sep 29 21:16:35 2009 NARUSE, Yui <naruse@ruby-lang.org>
* io.c (rb_scan_open_args): add UTF8-MAC to no-convertion encoding.
diff --git a/lib/test/unit/assertions.rb b/lib/test/unit/assertions.rb
index 35348d87be..821faf5803 100644
--- a/lib/test/unit/assertions.rb
+++ b/lib/test/unit/assertions.rb
@@ -67,8 +67,16 @@ module Test
exp_str = "%\#.#{Float::DIG+2}g" % exp
act_str = "%\#.#{Float::DIG+2}g" % act
elsif exp.is_a?(Time) && act.is_a?(Time)
- exp_comment = " (nsec=#{exp.nsec})"
- act_comment = " (nsec=#{act.nsec})"
+ if exp.subsec * 1000_000_000 == exp.nsec
+ exp_comment = " (#{exp.nsec}[ns])"
+ else
+ exp_comment = " (subsec=#{exp.subsec})"
+ end
+ if act.subsec * 1000_000_000 == act.nsec
+ act_comment = " (#{act.nsec}[ns])"
+ else
+ act_comment = " (subsec=#{act.subsec})"
+ end
elsif exp.class != act.class
# a subclass of Range, for example.
exp_comment = " (#{exp.class})"