ruby-changes:24054
From: nobu <ko1@a...>
Date: Sat, 16 Jun 2012 07:18:12 +0900 (JST)
Subject: [ruby-changes:24054] nobu:r36105 (trunk): lib/test/unit: refactoring puke
nobu 2012-06-16 07:11:55 +0900 (Sat, 16 Jun 2012) New Revision: 36105 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=36105 Log: lib/test/unit: refactoring puke * lib/test/unit.rb (Test::Unit::Runner#puke): modify only result and drop useless reports, not override entirely. * lib/test/unit/parallel.rb (Test::Unit::Worker#_run_suite): report unformatted results. formatting messages is not a workers task. * lib/test/unit/parallel.rb (Test::Unit::Worker#puke): store raw results. Modified files: trunk/ChangeLog trunk/lib/test/unit/parallel.rb trunk/lib/test/unit.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 36104) +++ ChangeLog (revision 36105) @@ -1,3 +1,14 @@ +Sat Jun 16 07:11:52 2012 Nobuyoshi Nakada <nobu@r...> + + * lib/test/unit.rb (Test::Unit::Runner#puke): modify only result and + drop useless reports, not override entirely. + + * lib/test/unit/parallel.rb (Test::Unit::Worker#_run_suite): report + unformatted results. formatting messages is not a workers task. + + * lib/test/unit/parallel.rb (Test::Unit::Worker#puke): store raw + results. + Sat Jun 16 01:27:14 2012 Aaron Patterson <aaron@t...> * ext/psych/lib/psych.rb: bumping psych to 1.3.3 Index: lib/test/unit/parallel.rb =================================================================== --- lib/test/unit/parallel.rb (revision 36104) +++ lib/test/unit/parallel.rb (revision 36105) @@ -25,7 +25,7 @@ end def _run_suite(suite, type) - r = report.dup + @partial_report = [] orig_testout = MiniTest::Unit.output i,o = IO.pipe @@ -63,7 +63,8 @@ end i.close - result << (report - r) + result << @partial_report + @partial_report = nil result << [@errors-e,@failures-f,@skips-s] result << ($: - @old_loadpath) result << suite.name @@ -144,6 +145,11 @@ @stdout.close if @stdout end end + + def puke(klass, meth, e) + @partial_report << [klass.name, meth, e] + super + end end end end Index: lib/test/unit.rb =================================================================== --- lib/test/unit.rb (revision 36104) +++ lib/test/unit.rb (revision 36105) @@ -735,21 +735,13 @@ # TODO: # this overriding is for minitest feature that skip messages are # hidden when not verbose (-v), note this is temporally. - e = case e - when MiniTest::Skip then - @skips += 1 - return "." if /no message given\z/ =~ e.message - "Skipped:\n#{meth}(#{klass}) [#{location e}]:\n#{e.message}\n" - when MiniTest::Assertion then - @failures += 1 - "Failure:\n#{meth}(#{klass}) [#{location e}]:\n#{e.message}\n" - else - @errors += 1 - bt = MiniTest::filter_backtrace(e.backtrace).join "\n " - "Error:\n#{meth}(#{klass}):\n#{e.class}: #{e.message}\n #{bt}\n" - end - @report << e - e[0, 1] + n = report.size + rep = super + if MiniTest::Skip === e and /no message given\z/ =~ e.message + report.slice!(n..-1) + rep = "." + end + rep end def initialize # :nodoc: -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/