14: def run runner
15: assertion_counter = AssertionCounter.new(self)
16: result = '.'
17: begin
18: begin
19: @passed = nil
20: self.setup
21: self.__send__ self.__name__
22: mocha_verify(assertion_counter)
23: @passed = true
24: rescue Exception => e
25: @passed = false
26: result = runner.puke(self.class, self.__name__, Mocha::Integration::MiniTest.translate(e))
27: ensure
28: begin
29: self.teardown
30: rescue Exception => e
31: result = runner.puke(self.class, self.__name__, Mocha::Integration::MiniTest.translate(e))
32: end
33: end
34: ensure
35: mocha_teardown
36: end
37: result
38: end