public void DefaultSourceMemberIsIgnored() { var mapper = new MemberMapper(); mapper.Options.Conventions.IgnoreMembersWithNullValueOnSource = true; var destination = new DestObjectWithDefaultMembers { ID = 10, Name = "Name", Date = new DateTime(2000, 1, 1), Bool = true, Complex = new DestObjectComplexType { Name = "Name" }, Nullable = 100 }; mapper.Map(new SourceObjectWithDefaultMembers(), destination); Assert.AreEqual(10, destination.ID); Assert.AreEqual("Name", destination.Name); Assert.AreEqual(new DateTime(2000, 1, 1), destination.Date); Assert.AreEqual("Name", destination.Complex.Name); Assert.AreEqual(true, destination.Bool); Assert.AreEqual(default(int), destination.NonNullableID); Assert.AreEqual(default(DateTime), destination.NonNullableDate); Assert.AreEqual(default(bool), destination.NonNullableBool); Assert.AreEqual(100, destination.Nullable); mapper.Map(new SourceObjectWithDefaultMembers { Complex = new SourceObjectComplexType { Name = "Foo" } }, destination); Assert.AreEqual("Foo", destination.Complex.Name); }
public void DefaultSourceMemberIsIgnored() { var mapper = new MemberMapper(); mapper.Options.Conventions.IgnoreMembersWithNullValueOnSource = true; var destination = new DestObjectWithDefaultMembers { ID = 10, Name = "Name", Date = new DateTime(2000, 1, 1), Bool = true, Complex = new DestObjectComplexType { Name = "Name" }, Nullable = 100 }; mapper.Map(new SourceObjectWithDefaultMembers(), destination); Assert.AreEqual(10, destination.ID); Assert.AreEqual("Name", destination.Name); Assert.AreEqual(new DateTime(2000, 1, 1), destination.Date); Assert.AreEqual("Name", destination.Complex.Name); Assert.AreEqual(true, destination.Bool); Assert.AreEqual(default(int), destination.NonNullableID); Assert.AreEqual(default(DateTime), destination.NonNullableDate); Assert.AreEqual(default(bool), destination.NonNullableBool); Assert.AreEqual(100, destination.Nullable); mapper.Map(new SourceObjectWithDefaultMembers { Complex = new SourceObjectComplexType { Name = "Foo" } }, destination); Assert.AreEqual("Foo", destination.Complex.Name); }