private TTarget Get <TTarget>(object source) where TTarget : class { if (source is Contracts.Item && typeof(TTarget) == typeof(Item)) { var contractItem = source as Contracts.Item; var domainItem = new Item { Id = contractItem.Id != null ? contractItem.Id.Value : Guid.NewGuid(), Price = contractItem.Price, Name = contractItem.Name, Description = contractItem.Description, IsDeleted = false, CreatedOn = DateTime.Now, ImgUrl = contractItem.ImgUrl }; return(domainItem as TTarget); } else if (source is Item && typeof(TTarget) == typeof(Contracts.Item)) { Item domainItem = source as Item; var contractItem = new Contracts.Item { Id = domainItem.Id, Price = domainItem.Price, Name = domainItem.Name, Description = domainItem.Description, ImgUrl = domainItem.ImgUrl }; return(contractItem as TTarget); } return(null); }
public async Task AddItem_ValidObjectPassed_ReturnsSuccess() { // Arrange Contracts.Item item = new Contracts.Item { Name = "WiFi Router", Description = "On Sale", Price = 67, ImgUrl = string.Empty }; // Act var result = await _itemService.AddItem(item); // Assert Assert.True(result.isSuccess); Assert.NotNull(result); }