public void WeakReferenceGetsFreedButHashCodeRemainsConstant() { WeakRefWrapper wr = CreateWeakRefWrapper(); int hashCode = wr.GetHashCode(); GC.Collect(); Assert.IsFalse(wr.IsAlive); Assert.IsNull(wr.Target); Assert.AreEqual(hashCode, wr.GetHashCode()); }
public void WeakReferenceGetsFreedButHashCodeRemainsConstant() { object obj = new object(); WeakRefWrapper wr = new WeakRefWrapper(obj); int hashCode = wr.GetHashCode(); obj = null; GC.Collect(); Assert.IsFalse(wr.IsAlive); Assert.IsNull(wr.Target); Assert.AreEqual(hashCode, wr.GetHashCode()); }