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
_set_failed_information(failure, expected, actual, message)
raise failure
end
end