public void CanGenerateDeleteIncomePage() { var controller = new IncomesController(incomeService, productService, sizeService); IncomeMVCModel result = (IncomeMVCModel)((ViewResult)controller.Delete(2)).Model; Assert.IsNotNull(result); Assert.AreEqual(2, result.Id); }
public void CanDeleteIncome() { var mock = MockEFServices.GetMockForIncomeDocumentService(); var incomeService = mock.Object; var deletingIncome = incomeService.GetById(2); var controller = new IncomesController(incomeService, productService, sizeService); RedirectToRouteResult result = controller.DeleteConfirmed(deletingIncome.ToViewModel()) as RedirectToRouteResult; mock.Verify(m => m.Delete(deletingIncome)); Assert.AreEqual("Index", result.RouteValues["action"]); Assert.IsInstanceOfType(result, typeof(RedirectToRouteResult)); }
public void CanDeleteProduct() { var mock = MockEFServices.GetMockForIncomeDocumentService(); var incomeService = mock.Object; var controller = new IncomesController(incomeService, productService, sizeService); var income = incomeService.GetById(2); var incomeViewModel = income.ToViewModel(); var guidToDelete = incomeViewModel.Products[0].Guid; int productCountBeforeDelete = incomeViewModel.Products.Count; ViewResult result = controller.Edit(incomeViewModel, null, guidToDelete, null) as ViewResult; mock.Verify(m => m.Add(It.IsAny<IncomeEFModel>()), Times.Never); mock.Verify(m => m.Save(), Times.Never); Assert.AreEqual(productCountBeforeDelete - 1, incomeViewModel.Products.Count); Assert.IsFalse(incomeViewModel.Products.Exists(p => p.Guid == guidToDelete)); Assert.IsInstanceOfType(result, typeof(ViewResult)); }
public void CanGenerateEditPage() { var controller = new IncomesController(incomeService, productService, sizeService); IncomeMVCModel result = (IncomeMVCModel)((ViewResult)controller.Edit(2)).Model; Assert.IsNotNull(result); Assert.AreEqual(2, result.Id); Assert.AreEqual("Partner2", result.BusinessPartner); }
public void CannotSubmitInvalidChanges() { var mock = MockEFServices.GetMockForIncomeDocumentService(); var incomeService = mock.Object; var controller = new IncomesController(incomeService, productService, sizeService); var income = incomeService.GetById(2); var incomeViewModel = income.ToViewModel(); int productCountBeforeDelete = incomeViewModel.Products.Count; ViewResult result = controller.Edit(incomeViewModel, null, null, null) as ViewResult; mock.Verify(m => m.Add(It.IsAny<IncomeEFModel>()), Times.Never); mock.Verify(m => m.Save(), Times.Never); Assert.AreEqual(productCountBeforeDelete, incomeViewModel.Products.Count); Assert.IsInstanceOfType(result, typeof(ViewResult)); }
public void CanSaveValidChanges() { var mock = MockEFServices.GetMockForIncomeDocumentService(); var incomeService = mock.Object; var controller = new IncomesController(incomeService, productService, sizeService); var income = incomeService.GetById(2); var incomeViewModel = income.ToViewModel(); int productCountBeforeDelete = incomeViewModel.Products.Count; RedirectToRouteResult result = controller.Edit(incomeViewModel, "Any string", null, null) as RedirectToRouteResult; mock.Verify(m => m.Update(income), Times.Once); mock.Verify(m => m.Save(), Times.Once); Assert.AreEqual("Index", result.RouteValues["action"]); Assert.AreEqual(productCountBeforeDelete, incomeViewModel.Products.Count); Assert.IsInstanceOfType(result, typeof(RedirectToRouteResult)); }
public void CannotEditNonexistingIncome() { var controller = new IncomesController(incomeService, productService, sizeService); ActionResult result = controller.Edit(20) as ActionResult; Assert.IsInstanceOfType(result, typeof(HttpNotFoundResult)); }
public void CannotDeleteNullIncome() { var mock = MockEFServices.GetMockForIncomeDocumentService(); var incomeService = mock.Object; var controller = new IncomesController(incomeService, productService, sizeService); HttpStatusCodeResult result = controller.DeleteConfirmed(null) as HttpStatusCodeResult; mock.Verify(m => m.Delete(It.IsAny<IncomeEFModel>()), Times.Never); Assert.AreEqual(400, result.StatusCode); }
public void CannotDeleteNotExistingProduct() { var mock = MockEFServices.GetMockForIncomeDocumentService(); var incomeService = mock.Object; var controller = new IncomesController(incomeService, productService, sizeService); var income = incomeService.GetById(2); var incomeViewModel = income.ToViewModel(); int productCountBeforeDelete = incomeViewModel.Products.Count; HttpStatusCodeResult result = controller.Edit(incomeViewModel, null, new Guid(), null) as HttpStatusCodeResult; mock.Verify(m => m.Add(It.IsAny<IncomeEFModel>()), Times.Never); mock.Verify(m => m.Save(), Times.Never); Assert.AreEqual(productCountBeforeDelete, incomeViewModel.Products.Count); Assert.AreEqual(400, result.StatusCode); }
public void CannotDeleteIncomeWithUnknownId() { var mock = MockEFServices.GetMockForIncomeDocumentService(); var incomeService = mock.Object; var controller = new IncomesController(incomeService, productService, sizeService); HttpNotFoundResult result = controller.Delete(-45) as HttpNotFoundResult; mock.Verify(m => m.Delete(It.IsAny<IncomeEFModel>()), Times.Never); Assert.IsInstanceOfType(result, typeof(HttpNotFoundResult)); }
public void CanGenerateIndexPage() { var controller = new IncomesController(incomeService, productService, sizeService); IEnumerable<IncomeMVCModel> result = (IEnumerable<IncomeMVCModel>)controller.Index().Model; var incomes = result.ToArray(); Assert.IsTrue(incomes.Length == 3); Assert.IsTrue(incomes[0].Number == 1); Assert.IsTrue(incomes[1].Number == 2); Assert.IsTrue(incomes[2].Number == 3); }