class RR::Integrations::TestUnit1

Public Instance Methods

applies?() click to toggle source
# File lib/rr/integrations/test_unit_1.rb, line 14
def applies?
  defined?(::Test::Unit) &&
  defined?(::Test::Unit::TestCase) &&
  !has_test_unit_version? &&
  !test_unit_just_wraps_minitest?
end
has_test_unit_version?() click to toggle source
# File lib/rr/integrations/test_unit_1.rb, line 53
def has_test_unit_version?
  require 'test/unit/version'
  true
rescue LoadError
  false
end
hook() click to toggle source
# File lib/rr/integrations/test_unit_1.rb, line 21
def hook
  ::Test::Unit::TestCase.class_eval do
    include RR::Adapters::RRMethods
    include Mixin

    unless instance_methods.detect {|method_name| method_name.to_sym == :setup_with_rr }
      alias_method :setup_without_rr, :setup
      def setup_with_rr
        setup_without_rr
        RR.reset
        RR.trim_backtrace = true
        RR.overridden_error_class = ::Test::Unit::AssertionFailedError
      end
      alias_method :setup, :setup_with_rr

      alias_method :teardown_without_rr, :teardown
      def teardown_with_rr
        RR.verify
      ensure
        teardown_without_rr
      end
      alias_method :teardown, :teardown_with_rr
    end
  end
end
name() click to toggle source
# File lib/rr/integrations/test_unit_1.rb, line 10
def name
  'Test::Unit 1'
end
setup_with_rr() click to toggle source
# File lib/rr/integrations/test_unit_1.rb, line 28
def setup_with_rr
  setup_without_rr
  RR.reset
  RR.trim_backtrace = true
  RR.overridden_error_class = ::Test::Unit::AssertionFailedError
end
teardown_with_rr() click to toggle source
# File lib/rr/integrations/test_unit_1.rb, line 37
def teardown_with_rr
  RR.verify
ensure
  teardown_without_rr
end
test_unit_just_wraps_minitest?() click to toggle source
# File lib/rr/integrations/test_unit_1.rb, line 47
def test_unit_just_wraps_minitest?
  defined?(::Test::Unit::TestCase) &&
  defined?(::MiniTest::Unit::TestCase) &&
  ::Test::Unit::TestCase < ::MiniTest::Unit::TestCase
end