Exemplo n.º 1
0
        public void NullValuesEqual()
        {
            var first = ReferenceHolder <object?> .Strong(null);

            var second = ReferenceHolder <object?> .Weak(null);

            VerifyEqual(first, second);
        }
Exemplo n.º 2
0
        public void SameMixedObjectsEqual()
        {
            var obj   = new object();
            var first = ReferenceHolder <object?> .Strong(obj);

            var second = ReferenceHolder <object?> .Weak(obj);

            VerifyEqual(first, second);
        }
Exemplo n.º 3
0
        public void ExpiredValueNotEqualToNull()
        {
            var strongNull = ReferenceHolder <object?> .Strong(null);

            var weakNull = ReferenceHolder <object?> .Weak(null);

            var expired = ReferenceHolder <object?> .TestAccessor.ReleasedWeak(hashCode : EqualityComparer <object?> .Default.GetHashCode(null !));

            Assert.Equal(strongNull.GetHashCode(), expired.GetHashCode());
            VerifyNotEqual(strongNull, expired);
            VerifyNotEqual(weakNull, expired);
        }