# File lib/test/unit/assertions.rb, line 99
      def assert_equal(expected, actual, message=nil)
        diff = AssertionMessage.delayed_diff(expected, actual)
        if expected.respond_to?(:encoding) and
            actual.respond_to?(:encoding) and
            expected.encoding != actual.encoding
          format = "<?>(?) expected but was\n<?>(?).?\n"
          full_message = build_message(message, format,
                                       expected, expected.encoding.name,
                                       actual, actual.encoding.name,
                                       diff)
        else
          full_message = build_message(message, "<?> expected but was\n<?>.?\n", expected, actual, diff)
        end
        begin
          assert_block(full_message) { expected == actual }
        rescue AssertionFailedError => failure
          failure.expected = expected
          failure.actual = actual
          failure.inspected_expected = AssertionMessage.convert(expected)
          failure.inspected_actual = AssertionMessage.convert(actual)
          failure.user_message = message
          raise failure # For JRuby. :<
        end
      end