Esempio n. 1
0
        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());
        }