public void ChangeDestinationBeforeMapTest() { var mappingConfiguration = new MappingConfiguration(); mappingConfiguration.CreateMapping <PersonFrontModel, Person>( f => new Person { PersonId = MappingOptions.Ignore(), Timestamp = MappingOptions.Ignore(), FirstName = MappingOptions.Ignore() }, s => s.SourceNamingConvention(NamingConventionType.CamelCase) .DestinationNamingConvention(NamingConventionType.CamelCase) .BeforeMap((f, p) => { if (p.PersonId == 0) { p.PersonId = 10; } p.FirstName = "Brent"; })); var frontModel = new PersonFrontModel(); var newPerson = mappingConfiguration.Convert(frontModel).To <Person>(); Assert.AreEqual(10, newPerson.PersonId); Assert.AreEqual("Brent", newPerson.FirstName); var existingPerson = new Person { PersonId = 9 }; mappingConfiguration.MapData(frontModel, existingPerson); Assert.AreEqual(9, existingPerson.PersonId); Assert.AreEqual("Brent", existingPerson.FirstName); }
private void CheckFrontModel(Person sourceModel, PersonFrontModel resultModel) { Assert.AreEqual(sourceModel.FirstName, resultModel.firstName); Assert.AreEqual(sourceModel.LastName, resultModel.lastName); Assert.AreEqual(sourceModel.Address, resultModel.address); Assert.AreEqual(sourceModel.BirthDate, resultModel.birthDate); Assert.AreEqual(sourceModel.City, resultModel.city); Assert.AreEqual(sourceModel.Height, resultModel.height); Assert.AreEqual(sourceModel.PersonId, resultModel.personId); Assert.AreEqual(sourceModel.PhoneNumber, resultModel.phoneNumber); }
public void AfterMapTest() { var configuration = new MappingConfiguration(); var registrationBuilder = new PersonBuilderWithAfterMap(configuration, 0); registrationBuilder.RegisterMapping(); var frontModel = new PersonFrontModel(); var currentBuilder = new PersonBuilderWithAfterMap(configuration, 7); var newPerson = currentBuilder.Build(frontModel); Assert.AreEqual(7, newPerson.Height); var existingPerson = new Person { Height = 6 }; currentBuilder.MapData(frontModel, existingPerson); Assert.AreEqual(7, existingPerson.Height); }
public void IsConstructionFlag() { var mapperConfiguration = new MappingConfiguration(); mapperConfiguration.CreateMapping <PersonFrontModel, Person>( f => new Person { Height = MappingOptions.IsConstruction() ? 6 : 7, Timestamp = MappingOptions.Ignore() }, s => s.SourceNamingConvention(NamingConventionType.CamelCase) .DestinationNamingConvention(NamingConventionType.CamelCase)); var frontModel = new PersonFrontModel(); var convertedPerson = mapperConfiguration.Convert(frontModel).To <Person>(); var existingPerson = new Person(); mapperConfiguration.MapData(frontModel, existingPerson); Assert.AreEqual(6, convertedPerson.Height); Assert.AreEqual(7, existingPerson.Height); }
public void IsConstructionWithIgnoreTest() { var mapperConfiguration = new MappingConfiguration(); mapperConfiguration.CreateMapping <PersonFrontModel, Person>( f => new Person { PersonId = MappingOptions.IsConstruction() ? 10 : MappingOptions.Ignore(), Timestamp = MappingOptions.Ignore() }, s => s.SourceNamingConvention(NamingConventionType.CamelCase) .DestinationNamingConvention(NamingConventionType.CamelCase)); var frontModel = new PersonFrontModel(); var convertedPerson = mapperConfiguration.Convert(frontModel).To <Person>(); var existingPerson = new Person { PersonId = 9 }; mapperConfiguration.MapData(frontModel, existingPerson); Assert.AreEqual(10, convertedPerson.PersonId); Assert.AreEqual(9, existingPerson.PersonId); }
public void AfterMapWithMultipleSources() { var mappingConfiguration = new MappingConfiguration(); mappingConfiguration.CreateMapping <PersonFrontModel, int, Person>( (f, newId) => new Person { PersonId = MappingOptions.Ignore(), Timestamp = MappingOptions.Ignore(), FirstName = MappingOptions.Ignore(), LastName = "Johnson" }, s => s.SourceNamingConvention(NamingConventionType.CamelCase) .DestinationNamingConvention(NamingConventionType.CamelCase) .AfterMap((f, newId, p) => { if (p.PersonId == 0) { p.PersonId = newId; } p.FirstName = "Brent"; p.LastName = "Smith"; })); var frontModel = new PersonFrontModel(); var newPerson = mappingConfiguration.Convert(frontModel, 10).To <Person>(); Assert.AreEqual(10, newPerson.PersonId); Assert.AreEqual("Brent", newPerson.FirstName); Assert.AreEqual("Smith", newPerson.LastName); var existingPerson = new Person { PersonId = 9 }; mappingConfiguration.MapData(frontModel, 10, existingPerson); Assert.AreEqual(9, existingPerson.PersonId); Assert.AreEqual("Smith", existingPerson.LastName); }