function f(v1, v2, value) { var b = v1 == v2; assertEq(b, value, "failed: " + v1 + ", " + v2 + ": " + value); } var obj = {}; var emul = objectEmulatingUndefined(); f(obj, obj, true); f(obj, obj, true); f(emul, obj, false); f(emul, obj, false); f(obj, emul, false); f(obj, emul, false); f(Object.prototype, obj, false); f(Object.prototype, obj, false); f(emul, emul, true); f(objectEmulatingUndefined(), emul, false); f(objectEmulatingUndefined(), emul, false); f(emul, objectEmulatingUndefined(), false); f(emul, objectEmulatingUndefined(), false);