# File lib/mocha/integration/mini_test/version_201_to_202.rb, line 14
14:         def run runner
15:           trap 'INFO' do
16:             time = runner.start_time ? Time.now - runner.start_time : 0
17:             warn "%s#%s %.2fs" % [self.class, self.__name__, time]
18:             runner.status $stderr
19:           end if ::MiniTest::Unit::TestCase::SUPPORTS_INFO_SIGNAL
20:           
21:           assertion_counter = AssertionCounter.new(self)
22:           result = ""
23:           begin
24:             begin
25:               @passed = nil
26:               self.setup
27:               self.__send__ self.__name__
28:               mocha_verify(assertion_counter)
29:               result = "." unless io?
30:               @passed = true
31:             rescue *::MiniTest::Unit::TestCase::PASSTHROUGH_EXCEPTIONS
32:               raise
33:             rescue Exception => e
34:               @passed = false
35:               result = runner.puke self.class, self.__name__, Mocha::Integration::MiniTest.translate(e)
36:             ensure
37:               begin
38:                 self.teardown
39:               rescue *::MiniTest::Unit::TestCase::PASSTHROUGH_EXCEPTIONS
40:                 raise
41:               rescue Exception => e
42:                 result = runner.puke self.class, self.__name__, Mocha::Integration::MiniTest.translate(e)
43:               end
44:               trap 'INFO', 'DEFAULT' if ::MiniTest::Unit::TestCase::SUPPORTS_INFO_SIGNAL
45:             end
46:           ensure
47:             mocha_teardown
48:           end
49:           result
50:         end