public void TestViewProductEdit_PassSameCategoryName_ShouldNotCallCategoryServiceGetCategoryByName(int id, string categoryName) { var mockedView = new Mock <IProductsListView>(); var mockedFactory = new Mock <IViewModelFactory>(); var mockedCategoryService = new Mock <ICategoryService>(); var category = new Category(categoryName); var product = new Models.Product { Category = category }; var mockedService = new Mock <IProductService>(); mockedService.Setup(s => s.GetById(It.IsAny <int>())).Returns(product); var presenter = new ProductsListPresenter(mockedView.Object, mockedService.Object, mockedFactory.Object, mockedCategoryService.Object); var model = new ProductDetailsViewModel { Id = id, Category = categoryName }; var args = new EditProductEventArgs(model); mockedView.Raise(v => v.ProductEdit += null, args); mockedCategoryService.Verify(s => s.GetCategoryByName(categoryName), Times.Never); }
public void TestViewProductEdit_ShouldCallServiceGetById(int id) { var mockedView = new Mock <IProductsListView>(); var mockedFactory = new Mock <IViewModelFactory>(); var mockedCategoryService = new Mock <ICategoryService>(); var mockedService = new Mock <IProductService>(); var presenter = new ProductsListPresenter(mockedView.Object, mockedService.Object, mockedFactory.Object, mockedCategoryService.Object); var model = new ProductDetailsViewModel { Id = id }; var args = new EditProductEventArgs(model); mockedView.Raise(v => v.ProductEdit += null, args); mockedService.Verify(s => s.GetById(id), Times.Once); }