Project

General

Profile

Bug #6882 » test.diff

usa (Usaku NAKAMURA), 08/16/2012 04:54 PM

View differences:

lib/test/unit/parallel.rb (作業コピー)
end
def puke(klass, meth, e)
@partial_report << [klass.name, meth, e]
@partial_report << [klass.name, meth, e.is_a?(MiniTest::Assertion) ? e : ProxyError.new(e)]
super
end
end
lib/test/unit.rb (作業コピー)
new(*args).run
end
end
class ProxyError < StandardError
def initialize(ex)
@message = ex.message
@backtrace = ex.backtrace
end
attr_accessor :message, :backtrace
end
end
end
test/testunit/tests_for_parallel/ptest_forth.rb (作業コピー)
require 'test/unit'
class TestE < Test::Unit::TestCase
class UnknownError < RuntimeError; end
def test_not_fail
assert_equal(1,1)
end
......
def test_always_fail
assert_equal(0,1)
end
end
def test_unknown_error
raise UnknownError, "unknown error"
end
end
test/testunit/test_parallel.rb (作業コピー)
timeout(10) do
@worker_in.puts "run #{TESTS}/ptest_forth.rb test"
i = 0
5.times { @worker_out.gets }
6.times { @worker_out.gets }
buf = @worker_out.gets
assert_match(/^done (.+?)$/, buf)
......
result = Marshal.load($1.chomp.unpack("m")[0])
assert_equal(result[0],3)
assert_equal(result[1],2)
assert_equal(4, result[0])
assert_equal(2, result[1])
assert_kind_of(Array,result[2])
assert_kind_of(Array,result[3])
assert_kind_of(Array,result[4])
assert_kind_of(Array,result[2][1])
assert_kind_of(MiniTest::Assertion,result[2][0][2])
assert_kind_of(MiniTest::Skip,result[2][1][2])
assert_kind_of(Exception, result[2][2][2])
assert_equal(result[5], "TestE")
end
end
......
def test_should_run_all_without_any_leaks
spawn_runner
buf = timeout(10){@test_out.read}
assert_match(/^[SF\.]{7}$/,buf)
assert_match(/^[SFE\.]{8}$/,buf)
end
def test_should_retry_failed_on_workers
    (1-1/1)