public void verifyEq(object expected, object actual, string msg)
{
if (!OpUtil.compareEQ(expected, actual))
{
//if (msg == null) msg = s(expected) + " != " + s(actual);
if (msg == null)
{
msg = s(expected) +
" [" + (expected != null ? expected.GetType().ToString() : "null") + "] != "
+ s(actual) + " [" + (actual != null ? actual.GetType().ToString() : "null") + "]";
}
fail(msg);
}
if (expected != null && actual != null)
{
if (hash(expected) != hash(actual))
{
fail("Equal but different hash codes: " +
expected + " (0x" + FanInt.toHex(hash(expected)) + ") ?= " +
actual + " (0x" + FanInt.toHex(hash(actual)) + ")");
}
}
verifyCount++;
}