public void VerifyPublicPropertiesAssignableFromConstructorAreCorrectlyInitialized(Type type) { if (type.IsAssignableTo <NancyModule>()) { Assert.Ignore(); } if (type == typeof(UserIdentity)) { Assert.Ignore(); } var fixture = new Fixture(); var customMatcher = new VisitorEqualityComparer <NameAndType>( new NameAndTypeCollectingVisitor(), new NameAndTypeAssignableComparer()); var assertion = new ConstructorInitializedMemberAssertion( fixture, EqualityComparer <object> .Default, customMatcher); var excludeTypeProperties = new Dictionary <Type, string[]> { }; string[] excludeProperties; if (excludeTypeProperties.TryGetValue(type, out excludeProperties) == false) { excludeProperties = Enumerable.Empty <string>().ToArray(); } PropertyInfo[] properties = type.GetProperties().Where(p => !excludeProperties.Contains(p.Name)).ToArray(); assertion.Verify(properties); }
public void VerifyPublicPropertiesAssignableFromConstructorAreCorrectlyInitialized() { var fixture = new Fixture(); var customMatcher = new VisitorEqualityComparer <NameAndType>( new NameAndTypeCollectingVisitor(), new NameAndTypeAssignableComparer()); var assertion = new ConstructorInitializedMemberAssertion( fixture, EqualityComparer <object> .Default, customMatcher); var properties = typeof(PublicPropertiesAreAssignableFromConstructorParameterTypes) .GetProperties(); assertion.Verify(properties); }
public void VerifyCopyAndUpdateWhenThePropertyTypeIsAssignableFromTheParameterType() { var fixture = new Fixture(); var customMatcher = new VisitorEqualityComparer <NameAndType>( new NameAndTypeCollectingVisitor(), new NameAndTypeAssignableComparer()); var assertion = new CopyAndUpdateAssertion( fixture, EqualityComparer <object> .Default, customMatcher); var copyAndUpdateMethod = new Methods <PublicPropertiesAreAssignableFromConstructorParameterTypes>() .Select(o => o.WithNumbers(default(int[]))); assertion.Verify(copyAndUpdateMethod); }