# File lib/mocha/integration/test_unit/ruby_version_186_and_above.rb, line 12
12:         def run(result)
13:           assertion_counter = AssertionCounter.new(result)
14:           yield(Test::Unit::TestCase::STARTED, name)
15:           @_result = result
16:           begin
17:             begin
18:               setup
19:               __send__(@method_name)
20:               mocha_verify(assertion_counter)
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 Exception
26:               raise if Test::Unit::TestCase::PASSTHROUGH_EXCEPTIONS.include? $!.class
27:               add_error($!)
28:             ensure
29:               begin
30:                 teardown
31:               rescue Test::Unit::AssertionFailedError => e
32:                 add_failure(e.message, e.backtrace)
33:               rescue Exception
34:                 raise if Test::Unit::TestCase::PASSTHROUGH_EXCEPTIONS.include? $!.class
35:                 add_error($!)
36:               end
37:             end
38:           ensure
39:             mocha_teardown
40:           end
41:           result.add_run
42:           yield(Test::Unit::TestCase::FINISHED, name)
43:         end