public void UpdateCategorySuccess() { var existingId = Guid.NewGuid(); var expected = new Category { Id = existingId, Name = "Category New Name" }; var old = new EF.Category { Id = existingId, Name = "Old Name" }; var categoryRepository = new Mock <IRepository <EF.Category> >(); categoryRepository.Setup(c => c.Get(It.IsAny <Guid>())).Returns(Task.FromResult(old)); categoryRepository.Setup(c => c.Update(It.IsAny <EF.Category>())).Returns(Task.FromResult(expected.ToDto())); var productRepository = new Mock <IRepository <EF.Product> >(); var logger = new Mock <ILogger <CategoryService> >(); var categoryService = new CategoryService(categoryRepository.Object, productRepository.Object, logger.Object); var actual = categoryService.Update(expected).Result; Assert.NotNull(actual.Item1); Assert.Equal(expected.Id, actual.Item1.Id); Assert.NotEqual(old.Name, actual.Item1.Name); Assert.Equal(expected.Name, actual.Item1.Name); }
public static M.Category ToDto(this EF.Category category) { if (category == null) { return(null); } return(new M.Category { Id = category.Id, Name = category.Name }); }
public void DeleteCategorySuccess() { var expected = new EF.Category { Id = Guid.NewGuid(), Name = "Category Name" }; var categoryRepository = new Mock <IRepository <EF.Category> >(); categoryRepository.Setup(c => c.Get(It.IsAny <Guid>())).Returns(Task.FromResult(expected)); categoryRepository.Setup(c => c.Delete(It.IsAny <Guid>())).Returns(true); var productRepository = new Mock <IRepository <EF.Product> >(); var logger = new Mock <ILogger <CategoryService> >(); var categoryService = new CategoryService(categoryRepository.Object, productRepository.Object, logger.Object); var actual = categoryService.Delete(expected.Id).Result; Assert.True(actual.Item1); Assert.True(actual.Item2.Count <= 0); }
public void UpdateProductFailed() { EF.Category catNotExist = null; var expected = new Product { Id = Guid.NewGuid(), CategoryId = Guid.NewGuid(), Name = "Product Name" }; var productRepository = new Mock <IRepository <EF.Product> >(); var categoryRepository = new Mock <IRepository <EF.Category> >(); categoryRepository.Setup(c => c.Get(It.IsAny <Guid>())).Returns(Task.FromResult(catNotExist)); var logger = new Mock <ILogger <ProductService> >(); var productService = new ProductService(productRepository.Object, categoryRepository.Object, logger.Object); var result = productService.Update(expected).Result; Assert.Null(result.Item1); Assert.True(result.Item2.Count > 0); Assert.Contains(result.Item2, e => e.Contains("Provided new Category Id is invalid")); }