public void Map() { // Arrange var source = new EnergyTrading.MDM.Contracts.Sample.PersonDetails { Forename = "John", Surname = "Smith", TelephoneNumber = "020 7745 1232", FaxNumber = "020 1232 1232", Role = "Trader", Email = "*****@*****.**" }; var expected = new MDM.PersonDetails() { FirstName = "John", LastName = "Smith", Phone = "020 7745 1232", Fax = "020 1232 1232", Role = "Trader", Email = "*****@*****.**" }; var mapper = new EnergyTrading.MDM.Contracts.Mappers.PersonDetailsMapper(); // Act var candidate = mapper.Map(source); // Assert Check(expected, candidate); }
public void Map() { // Arrange var source = new EnergyTrading.MDM.Contracts.Sample.PersonDetails { Forename = "John", Surname = "Smith", TelephoneNumber = "020 7745 1232", FaxNumber = "020 1232 1232", Role = "Trader", Email = "*****@*****.**" }; var expected = new MDM.PersonDetails() { FirstName = "John", LastName = "Smith", Phone = "020 7745 1232", Fax = "020 1232 1232", Role = "Trader", Email = "*****@*****.**" }; var mapper = new EnergyTrading.MDM.Contracts.Mappers.PersonDetailsMapper(); // Act var candidate = mapper.Map(source); // Assert Check(expected, candidate); }
public void SuccessMatch() { // Arrange var validatorFactory = new Mock <IValidatorEngine>(); var mappingEngine = new Mock <IMappingEngine>(); var repository = new Mock <IRepository>(); var searchCache = new Mock <ISearchCache>(); var service = new PersonService(validatorFactory.Object, mappingEngine.Object, repository.Object, searchCache.Object); // Domain details var system = new MDM.SourceSystem { Name = "Endur" }; var mapping = new PersonMapping { System = system, MappingValue = "A" }; var targetSystem = new MDM.SourceSystem { Name = "Trayport" }; var targetMapping = new PersonMapping { System = targetSystem, MappingValue = "B", IsDefault = true }; var details = new MDM.PersonDetails { FirstName = "John", LastName = "Smith", Email = "*****@*****.**" }; var person = new MDM.Person { Id = 1 }; person.AddDetails(details); person.ProcessMapping(mapping); person.ProcessMapping(targetMapping); // Contract details var targetIdentifier = new MdmId { SystemName = "Trayport", Identifier = "B" }; mappingEngine.Setup(x => x.Map <PersonMapping, MdmId>(targetMapping)).Returns(targetIdentifier); var list = new List <PersonMapping> { mapping }; repository.Setup(x => x.Queryable <PersonMapping>()).Returns(list.AsQueryable()); var request = new CrossMappingRequest { SystemName = "Endur", Identifier = "A", TargetSystemName = "trayport", ValidAt = SystemTime.UtcNow(), Version = 1 }; // Act var response = service.CrossMap(request); var candidate = response.Contract; // Assert Assert.IsNotNull(response, "Contract null"); Assert.IsTrue(response.IsValid, "Contract invalid"); Assert.IsNotNull(candidate, "Mapping null"); Assert.AreEqual(1, candidate.Mappings.Count, "Identifier count incorrect"); Assert.AreSame(targetIdentifier, candidate.Mappings[0], "Different identifier assigned"); }