public void Post_Edit_Model_Is_Null() { // Arrange var id = -1; Sauce sauce = null; var sauceViewModel = new SauceViewModel() { ID = id, Name = "Ostry", Price = 2.00M }; var service = Substitute.For <ISauceRepository>(); var mapper = Substitute.For <IMapper>(); var validator = new ModelValidator <SauceViewModel>(sauceViewModel); var controller = new SauceController(service, mapper); service.Get(id).Returns(sauce); // Act var valid = validator.IsValid(); validator.AddToModelError(controller); var result = controller.Edit(sauceViewModel) as HttpNotFoundResult; var statusCode = result.StatusCode; // Assert Assert.That(result, !Is.Null); Assert.That(valid, Is.True); Assert.That(404, Is.EqualTo(statusCode)); }
public void Post_Edit_Is_Not_Valid() { // Arrange var sauceViewModel = new SauceViewModel() { ID = 1, //Name = "Ostry", Price = 2.00M }; var service = Substitute.For <ISauceRepository>(); var mapper = Substitute.For <IMapper>(); var controller = new SauceController(service, mapper); var validator = new ModelValidator <SauceViewModel>(sauceViewModel); // Act var valid = validator.IsValid(); validator.AddToModelError(controller); var result = controller.Edit(sauceViewModel) as RedirectToRouteResult; var actionName = result.RouteValues.Values.ElementAt(0); var tempData = controller.TempData["ModelIsNotValid"]; // Assert Assert.That(result, !Is.Null); Assert.That(valid, Is.False); Assert.That("Wystąpił błąd w formularzu, spróbuj ponownie.", Is.EqualTo(tempData)); Assert.That("Index", Is.EqualTo(actionName)); }
public void Get_Edit_Id_Is_Null() { // Arrange int?id = null; var service = Substitute.For <ISauceRepository>(); var mapper = Substitute.For <IMapper>(); var controller = new SauceController(service, mapper); // Act var result = controller.Edit(id) as HttpStatusCodeResult; var statusCode = result.StatusCode; // Assert Assert.That(result, !Is.Null); Assert.That(400, Is.EqualTo(statusCode)); }
public void Get_Edit_Model_Is_Null() { // Arrange var id = 1; Sauce sauce = null; var service = Substitute.For <ISauceRepository>(); var mapper = Substitute.For <IMapper>(); var controller = new SauceController(service, mapper); service.Get(id).Returns(sauce); // Act var result = controller.Edit(id) as HttpNotFoundResult; var statusCode = result.StatusCode; // Assert Assert.That(result, !Is.Null); Assert.That(404, Is.EqualTo(statusCode)); }
public void Good_Post_Edit() { // Arrange var sauce = new Sauce() { ID = 1, Name = "Ostry", Price = 2.00M }; var sauceViewModel = new SauceViewModel() { ID = 1, Name = "Ostry", Price = 2.00M }; var service = Substitute.For <ISauceRepository>(); var mapper = Substitute.For <IMapper>(); var validator = new ModelValidator <SauceViewModel>(sauceViewModel); var fakeController = new FakeController(); var controller = new SauceController(service, mapper); fakeController.PrepareFakeAjaxRequest(); controller.ControllerContext = fakeController.GetControllerContext <SauceController>(new RouteData(), controller); service.Get(sauce.ID).Returns(sauce); mapper.Map <SauceViewModel, Sauce>(sauceViewModel).Returns(sauce); service.Update(sauce); service.Save(); // Act var valid = validator.IsValid(); validator.AddToModelError(controller); var result = controller.Edit(sauceViewModel) as RedirectToRouteResult; var actionName = result.RouteValues.Values.ElementAt(0); var ajaxRequest = controller.Request.IsAjaxRequest(); // Assert Assert.That(result, !Is.Null); Assert.That("Index", Is.EqualTo(actionName)); Assert.That(ajaxRequest, Is.True); Assert.That(valid, Is.True); }
public void Good_Get_Edit() { // Arrange var id = 1; var sauce = new Sauce() { ID = id, Name = "Ostry", Price = 2.00M }; var sauceViewModel = new SauceViewModel() { ID = id, Name = "Ostry", Price = 2.00M }; var service = Substitute.For <ISauceRepository>(); var mapper = Substitute.For <IMapper>(); var fakeController = new FakeController(); var controller = new SauceController(service, mapper); fakeController.PrepareFakeAjaxRequest(); controller.ControllerContext = fakeController.GetControllerContext <SauceController>(new RouteData(), controller); service.Get(id).Returns(sauce); mapper.Map <Sauce, SauceViewModel>(sauce).Returns(sauceViewModel); // Act var result = controller.Edit(id) as PartialViewResult; var viewName = result.ViewName; var model = result.Model; var ajaxRequest = controller.Request.IsAjaxRequest(); // Assert Assert.That(result, !Is.Null); Assert.That("_EditPartial", Is.EqualTo(viewName)); Assert.That(ajaxRequest, Is.True); Assert.That(model, !Is.Null); }
public void Get_Edit_Not_Ajax_Request() { // Arrange var id = 1; var sauce = new Sauce() { ID = id, Name = "Ostry", Price = 2.00M }; var sauceViewModel = new SauceViewModel() { ID = id, Name = "Ostry", Price = 2.00M }; var service = Substitute.For <ISauceRepository>(); var mapper = Substitute.For <IMapper>(); var fakeController = new FakeController(); var controller = new SauceController(service, mapper); fakeController.PrepareFakeRequest(); controller.ControllerContext = fakeController.GetControllerContext <SauceController>(new RouteData(), controller); service.Get(id).Returns(sauce); mapper.Map <Sauce, SauceViewModel>(sauce).Returns(sauceViewModel); // Act var result = controller.Edit(id) as RedirectToRouteResult; var actionName = result.RouteValues.Values.ElementAt(0); var ajaxRequest = controller.Request.IsAjaxRequest(); // Assert Assert.That(result, !Is.Null); Assert.That("Index", Is.EqualTo(actionName)); Assert.That(ajaxRequest, Is.False); }