Beispiel #1
0
        public void EqualsReturnsCorrectResult(
            bool typeResult,
            bool nameResult,
            bool expected)
        {
            var prop          = typeof(string).GetProperty("Length");
            var typeCriterion = new DelegatingCriterion <Type>
            {
                OnEquals = t =>
                {
                    Assert.Equal(prop.PropertyType, t);
                    return(typeResult);
                }
            };
            var nameCriterion = new DelegatingCriterion <string>
            {
                OnEquals = n =>
                {
                    Assert.Equal(prop.Name, n);
                    return(nameResult);
                }
            };
            var sut =
                new PropertyTypeAndNameCriterion(
                    typeCriterion,
                    nameCriterion);

            var actual = sut.Equals(prop);

            Assert.Equal(expected, actual);
        }
        public void EqualsReturnsCorrectResult(
            bool typeResult,
            bool nameResult,
            bool expected)
        {
            var prop = typeof(string).GetProperty("Length");
            var typeCriterion = new DelegatingCriterion<Type>
            {
                OnEquals = t =>
                {
                    Assert.Equal(prop.PropertyType, t);
                    return typeResult;
                }
            };
            var nameCriterion = new DelegatingCriterion<string>
            {
                OnEquals = n =>
                {
                    Assert.Equal(prop.Name, n);
                    return nameResult;
                }
            };
            var sut = 
                new PropertyTypeAndNameCriterion(
                    typeCriterion,
                    nameCriterion);

            var actual = sut.Equals(prop);

            Assert.Equal(expected, actual);
        }
 public void SutIsPropertyInfoEquatable()
 {
     var sut = new PropertyTypeAndNameCriterion(
         new DelegatingCriterion<Type>(),
         new DelegatingCriterion<string>());
     Assert.IsAssignableFrom<IEquatable<PropertyInfo>>(sut);
 }
Beispiel #4
0
        public void SutIsPropertyInfoEquatable()
        {
            var sut = new PropertyTypeAndNameCriterion(
                new DelegatingCriterion <Type>(),
                new DelegatingCriterion <string>());

            Assert.IsAssignableFrom <IEquatable <PropertyInfo> >(sut);
        }
 public void SutDoesNotEqualNullPropertyInfo()
 {
     var sut = new PropertyTypeAndNameCriterion(
         new DelegatingCriterion<Type>(),
         new DelegatingCriterion<string>());
     var actual = sut.Equals((PropertyInfo)null);
     Assert.False(actual, "SUT shouldn't equal null property.");
 }
Beispiel #6
0
        public void SutDoesNotEqualNullPropertyInfo()
        {
            var sut = new PropertyTypeAndNameCriterion(
                new DelegatingCriterion <Type>(),
                new DelegatingCriterion <string>());
            var actual = sut.Equals((PropertyInfo)null);

            Assert.False(actual, "SUT shouldn't equal null property.");
        }
Beispiel #7
0
        public void SutDoesNotEqualAnyObject(object other)
        {
            var sut = new PropertyTypeAndNameCriterion(
                new DelegatingCriterion <Type>(),
                new DelegatingCriterion <string>());
            var actual = sut.Equals(other);

            Assert.False(actual, "SUT should not equal object of other type.");
        }
Beispiel #8
0
        public void NameCriterionIsCorrect()
        {
            var expected = new DelegatingCriterion <string>();
            var sut      = new PropertyTypeAndNameCriterion(
                new DelegatingCriterion <Type>(),
                expected);

            IEquatable <string> actual = sut.NameCriterion;

            Assert.Equal(expected, actual);
        }
Beispiel #9
0
        public void SutEqualsIdenticalValue()
        {
            var typeCriterion = new DelegatingCriterion <Type>();
            var nameCriterion = new DelegatingCriterion <string>();
            var sut           =
                new PropertyTypeAndNameCriterion(typeCriterion, nameCriterion);

            var other =
                new PropertyTypeAndNameCriterion(typeCriterion, nameCriterion);
            var actual = sut.Equals(other);

            Assert.True(actual, "Expected structural equality to hold.");
        }
Beispiel #10
0
        public void SutDoesNotEqualOtherWhenNameCriterionDiffers()
        {
            var typeCriterion = new DelegatingCriterion <Type>();
            var sut           = new PropertyTypeAndNameCriterion(
                typeCriterion,
                new DelegatingCriterion <string>());

            var other = new PropertyTypeAndNameCriterion(
                typeCriterion,
                new DelegatingCriterion <string>());
            var actual = sut.Equals(other);

            Assert.False(
                actual,
                "SUT should not equal other when name criterion differs.");
        }
        public void SutEqualsIdenticalValue()
        {
            var typeCriterion = new DelegatingCriterion<Type>();
            var nameCriterion = new DelegatingCriterion<string>();
            var sut =
                new PropertyTypeAndNameCriterion(typeCriterion, nameCriterion);

            var other =
                new PropertyTypeAndNameCriterion(typeCriterion, nameCriterion);
            var actual = sut.Equals(other);

            Assert.True(actual, "Expected structural equality to hold.");
        }
        public void NameCriterionIsCorrect()
        {
            var expected = new DelegatingCriterion<string>();
            var sut = new PropertyTypeAndNameCriterion(
                new DelegatingCriterion<Type>(),
                expected);

            IEquatable<string> actual = sut.NameCriterion;

            Assert.Equal(expected, actual);
        }
        public void SutDoesNotEqualOtherWhenNameCriterionDiffers()
        {
            var typeCriterion = new DelegatingCriterion<Type>();
            var sut = new PropertyTypeAndNameCriterion(
                typeCriterion,
                new DelegatingCriterion<string>());

            var other = new PropertyTypeAndNameCriterion(
                typeCriterion,
                new DelegatingCriterion<string>());
            var actual = sut.Equals(other);

            Assert.False(
                actual,
                "SUT should not equal other when name criterion differs.");
        }
 public void SutDoesNotEqualAnyObject(object other)
 {
     var sut = new PropertyTypeAndNameCriterion(
         new DelegatingCriterion<Type>(),
         new DelegatingCriterion<string>());
     var actual = sut.Equals(other);
     Assert.False(actual, "SUT should not equal object of other type.");
 }