12: def run(result)
13: yield(Test::Unit::TestCase::STARTED, name)
14: @_result = result
15: begin
16: mocha_setup
17: begin
18: setup
19: __send__(@method_name)
20: mocha_verify { add_assertion }
21: rescue Mocha::ExpectationError => e
22: add_failure(e.message, e.backtrace)
23: rescue Test::Unit::AssertionFailedError => e
24: add_failure(e.message, e.backtrace)
25: rescue StandardError, ScriptError
26: add_error($!)
27: ensure
28: begin
29: teardown
30: rescue Test::Unit::AssertionFailedError => e
31: add_failure(e.message, e.backtrace)
32: rescue StandardError, ScriptError
33: add_error($!)
34: end
35: end
36: ensure
37: mocha_teardown
38: end
39: result.add_run
40: yield(Test::Unit::TestCase::FINISHED, name)
41: end