Encapsulates a unit test that verifies that members (property or field) are correctly initialized by a constructor.
Наследование: IdiomaticAssertion
 public void SutIsIdiomaticMemberAssertion()
 {
     var sut = new MemberInitializationAssertion(
         EqualityComparer<IReflectionElement>.Default,
         EqualityComparer<IReflectionElement>.Default);
     Assert.IsAssignableFrom<IdiomaticAssertion>(sut);
 }
Пример #2
0
 public void MemberInitializationAssertionCorrectlyVerifiesMembers(
     MemberInitializationAssertion assertion)
 {
     typeof(ClassWithMembersInitializedByConstructor)
         .GetIdiomaticMembers()
         .ToList()
         .ForEach(assertion.Verify);
 }
        public void MemberToParameterComparerIsCorrect()
        {
            var memberComparer = EqualityComparer<IReflectionElement>.Default;
            var sut = new MemberInitializationAssertion(
                EqualityComparer<IReflectionElement>.Default,
                memberComparer);

            var actual = sut.MemberToParameterComparer;

            Assert.Equal(memberComparer, actual);
        }
        public void ParameterToMemberComparerIsCorrect()
        {
            var constructorComparer = new DelegatingReflectionElementComparer();
            var sut = new MemberInitializationAssertion(
                constructorComparer,
                EqualityComparer<IReflectionElement>.Default);

            var actual = sut.ParameterToMemberComparer;

            Assert.Equal(constructorComparer, actual);
        }
        public void ParameterToMemberComparerIsCorrectWhenInitializedWithTestFixture()
        {
            var builder = new Fixture();
            var sut = new MemberInitializationAssertion(builder);

            var actual = sut.ParameterToMemberComparer;

            var comparers = Assert.IsAssignableFrom<OrEqualityComparer<IReflectionElement>>(actual)
                .EqualityComparers.ToArray();
            Assert.Equal(2, comparers.Length);
            var comparers1 = Assert.IsAssignableFrom<ParameterToPropertyComparer>(comparers[0]);
            Assert.Same(builder, comparers1.Builder);
            var comparers2 = Assert.IsAssignableFrom<ParameterToFieldComparer>(comparers[1]);
            Assert.Same(builder, comparers2.Builder);
        }
        public void VerifyPrivateGetPropertyDoesNotThrow()
        {
            // Fixture setup
            var sut = new MemberInitializationAssertion(new Fixture());
            var property = typeof(ClassWithMembers).GetProperty("PrivateGetProperty");
            Assert.NotNull(property);

            // Exercise system and Verify outcome
            Assert.DoesNotThrow(() => sut.Verify(property));
        }
 public void VerifyNullPropertyThrows()
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     var exception = Assert.Throws<ArgumentNullException>(() => sut.Verify((PropertyInfo)null));
     Assert.Equal("property", exception.ParamName);
 }
 public void VerifyUnsatisfiedPropertyThrows(PropertyInfo property)
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     Assert.Throws<MemberInitializationException>(() => sut.Verify(property));
 }
 public void VerifySatisfiedPropertyDoesNotThrow(PropertyInfo property)
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     Assert.DoesNotThrow(() => sut.Verify(property));
 }
        public void VerifyStaticConstructorDoesNotThrow()
        {
            // Fixture setup
            var sut = new MemberInitializationAssertion(new Fixture());
            var constructor = typeof(ClassWithMembers)
                .GetConstructors(BindingFlags.NonPublic | BindingFlags.Static)
                .Single();
            Assert.NotNull(constructor);

            // Exercise system and Verify outcome
            Assert.DoesNotThrow(() => sut.Verify(constructor));
        }
 public void VerifyUnsatisfiedTypeThrows(Type type)
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     Assert.Throws<MemberInitializationException>(() => sut.Verify(type));
 }
 public void VerifySatisfiedConstructorDoesNotThrow(ConstructorInfo constructor)
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     Assert.DoesNotThrow(() => sut.Verify(constructor));
 }
 public void VerifyEnumFieldDoesNotThrow()
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     var field = typeof(Accessibilities).GetField("value__");
     Assert.DoesNotThrow(() => sut.Verify(field));
 }
 public void VerifyStaticFieldDoesNotThrow()
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     var field = Fields.Select(() => ClassWithMembers.StaticField);
     Assert.DoesNotThrow(() => sut.Verify(field));
 }
 public void VerifyUnsatisfiedFieldThrows(FieldInfo field)
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     Assert.Throws<MemberInitializationException>(() => sut.Verify(field));
 }
 public void VerifySatisfiedFieldDoesNotThrow(FieldInfo field)
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     Assert.DoesNotThrow(() => sut.Verify(field));
 }
 public void VerifyNullAssemblyThrows()
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     Assert.Throws<ArgumentNullException>(() => sut.Verify((Assembly)null));
 }
 public void VerifyIndexerAlwaysDoesNotThrow(PropertyInfo indexer)
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     Assert.DoesNotThrow(() => sut.Verify(indexer));
 }
        public void BuilderIsCorrect()
        {
            var builder = new Fixture();
            var sut = new MemberInitializationAssertion(builder);

            var actual = sut.Builder;

            Assert.Same(builder, actual);
        }
 public void VerifyNullConstructorThrows()
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     Assert.Throws<ArgumentNullException>(() => sut.Verify((ConstructorInfo)null));
 }
 public void VerifyUnsatisfiedConstructorThrows(ConstructorInfo constructor)
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     Assert.Throws<MemberInitializationException>(() => sut.Verify(constructor));
 }
 public void VerifySatisfiedTypeDoesNotThrow(Type type)
 {
     var sut = new MemberInitializationAssertion(new Fixture());
     Assert.DoesNotThrow(() => sut.Verify(type));
 }