From 1da4d51bf93ec9d202b992d6214cba437c229b7c Mon Sep 17 00:00:00 2001 From: nobu Date: Sun, 20 Dec 2015 01:43:45 +0000 Subject: assertions.rb: show failed indexes * test/lib/test/unit/assertions.rb (AllFailures): show indexes in total number of failure assertions. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/lib/test/unit/assertions.rb | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'test/lib') diff --git a/test/lib/test/unit/assertions.rb b/test/lib/test/unit/assertions.rb index c749384eba..8eb805744e 100644 --- a/test/lib/test/unit/assertions.rb +++ b/test/lib/test/unit/assertions.rb @@ -785,19 +785,23 @@ eom attr_reader :failures def initialize + @count = 0 @failures = {} end def for(key) + @count += 1 yield rescue Exception => e - @failures[key] = e + @failures[key] = [@count, e] end def message i = 0 - @failures.map {|k, v| - "\n#{i+=1}. Assertion for #{k.inspect}\n#{v.message.gsub(/^/, ' | ')}" + total = @count.to_s + fmt = "%#{total.size}d" + @failures.map {|k, (n, v)| + "\n#{i+=1}. [#{fmt%n}/#{total}] Assertion for #{k.inspect}\n#{v.message.gsub(/^/, ' | ')}" }.join("\n") end -- cgit v1.2.3