Hi Ryan,

If $! is not nil, returns in the block of the at_exit method in
MiniTest::Unit.autorun. Then raises LocalJump exception.
-----
  def self.autorun
    at_exit {
      return if $! # don't run if there was an exception
      exit_code = MiniTest::Unit.new.run(ARGV)
      exit false if exit_code && exit_code != 0
    } unless @@installed_at_exit
    @@installed_at_exit = true
  end
-----

The attached patch will fix the problem.

Index: lib/minitest/unit.rb
===================================================================
--- lib/minitest/unit.rb	(revision 21508)
+++ lib/minitest/unit.rb	(working copy)
@@ -325,7 +325,7 @@
 
     def self.autorun
       at_exit {
-        return if $! # don't run if there was an exception
+        next if $! # don't run if there was an exception
         exit_code = MiniTest::Unit.new.run(ARGV)
         exit false if exit_code && exit_code != 0
       } unless @@installed_at_exit

Thanks, kouji.