module Mocha::Integration

def mini_unit_testcase_defined?

def mini_unit_testcase_defined?
  defined?(MiniTest) && defined?(MiniTest::Unit) && defined?(MiniTest::Unit::TestCase)
end

def monkey_patches

def monkey_patches
  patches = []
  if test_unit_testcase_defined? && !test_unit_testcase_inherits_from_miniunit_testcase?
    patches << 'mocha/integration/test_unit'
  end
  if mini_unit_testcase_defined?
    patches << 'mocha/integration/mini_test'
  end
  patches
end

def test_unit_testcase_defined?

def test_unit_testcase_defined?
  defined?(Test) && defined?(Test::Unit) && defined?(Test::Unit::TestCase)
end

def test_unit_testcase_inherits_from_miniunit_testcase?

def test_unit_testcase_inherits_from_miniunit_testcase?
  test_unit_testcase_defined? && mini_unit_testcase_defined? && Test::Unit::TestCase.ancestors.include?(MiniTest::Unit::TestCase)
end