public void Map_TestMappingGenericListsWithDifferentTypeParameters_WhenAMappingForThoseDataTypesExists() { Product product1 = new Product { Description = "Product 1", Id = 1, ShippingWeight = 3.5 }; Product product2 = new Product { Description = "Product 2", Id = 2, ShippingWeight = 4.7 }; List<Product> products = new List<Product> { product1, product2 }; Yam.CreateMap(typeof(Product), typeof(SaleItem)); Yam.AddPropertyMap(typeof(Product), typeof(SaleItem), "ShippingWeight", "Weight"); List<SaleItem> saleItems = (List<SaleItem>)Yam.Map(products, typeof(List<SaleItem>)); Assert.AreEqual(products.Count, saleItems.Count); foreach (var product in products) Assert.IsNotNull(saleItems.FirstOrDefault(si => si.Description == product.Description && si.Id == product.Id && si.Weight == product.ShippingWeight)); }
public void Map_TestMappingPropertiesWithTheSameDataTypes_GivenThePropertyNames() { Product product = new Product { Description = "Test Product", Id = 1, ShippingWeight = 3.5 }; Yam.CreateMap(typeof(Product), typeof(SaleItem)); Yam.AddPropertyMap( typeof(Product), typeof(SaleItem), "ShippingWeight", "Weight"); SaleItem saleItem = (SaleItem)Yam.Map(product, typeof(SaleItem)); Assert.AreEqual(product.Description, saleItem.Description); Assert.AreEqual(product.Id, saleItem.Id); Assert.AreEqual(product.ShippingWeight, saleItem.Weight); }
public void Map_TestMappingProperties_GivenAMappingFunction() { Product product = new Product { Description = "Test Product", Id = 1, ShippingWeight = 3.5 }; Yam.CreateMap(typeof(Product), typeof(SaleItem)); Yam.AddPropertyMap( typeof(Product), typeof(SaleItem), p => 42, "Weight"); SaleItem saleItem = (SaleItem)Yam.Map(product, typeof(SaleItem)); Assert.AreEqual(product.Description, saleItem.Description); Assert.AreEqual(product.Id, saleItem.Id); Assert.AreEqual(42, saleItem.Weight); }
public void Map_TestMappingGenericListsWithSameTypeParameters() { Product product1 = new Product { Description = "Product 1", Id = 1, ShippingWeight = 3.5 }; Product product2 = new Product { Description = "Product 2", Id = 2, ShippingWeight = 4.7 }; List<Product> products = new List<Product> { product1, product2 }; List<Product> saleItems = (List<Product>)Yam.Map(products, typeof(List<Product>)); Assert.AreEqual(products.Count, saleItems.Count); foreach (var product in products) Assert.IsNotNull(saleItems.FirstOrDefault(si => si.Description == product.Description && si.Id == product.Id && si.ShippingWeight == product.ShippingWeight)); }