public ActionResult Edit(Request request) { try { if (ViewData.ModelState.IsValid) { request.LastUpdateTimeStamp = DateTime.Now; request.LastUpdateUser = GetCurrentUser().Id; ActionConfirmation updateConfirmation = _requestManagementService.UpdateWith(request, request.Id); if (updateConfirmation.WasSuccessful) { TempData[ControllerEnums.GlobalViewDataProperty.PageMessage.ToString()] = updateConfirmation.Message; //return RedirectToAction("Index"); return(RedirectToAction("Search")); } } } catch (PreconditionException pce) { TempData[ControllerEnums.GlobalViewDataProperty.PageMessage.ToString()] = pce.Message; } RequestFormViewModel viewModel = _requestManagementService.CreateFormViewModelFor(request); return(View(viewModel)); }
public void CanUpdateWithValidRequestFromForm() { // Establish Context Request validRequestFromForm = RequestInstanceFactory.CreateValidTransientRequest(); // Intentionally empty to ensure successful transfer of values var requestFromDb = new Request(); _requestRepository.Expect(r => r.Get(1)) .Return(requestFromDb); WrmsSystem systemToExpect = WrmsSystemInstanceFactory.CreateValidTransientWrmsSystem(); _wrmsSystemManagementService.Expect(r => r.Get(13)) .Return(systemToExpect); _requestEstimateManagementService.Expect( r => r.SaveOrUpdate(new RequestEstimate { RequestId = validRequestFromForm.Id, EstimatedHours = validRequestFromForm.EstimatedHours })).Return( ActionConfirmation.CreateSuccessConfirmation("")); // Act ActionConfirmation confirmation = _requestManagementService.UpdateWith(validRequestFromForm, 1); // Assert confirmation.ShouldNotBeNull(); confirmation.WasSuccessful.ShouldBeTrue(); confirmation.Value.ShouldNotBeNull(); confirmation.Value.ShouldEqual(requestFromDb); confirmation.Value.ShouldEqual(validRequestFromForm); }