/// <summary> /// Fixes the state of the model and model. /// </summary> /// <param name="missionDraft">The mission draft.</param> private void FixModelAndModelState(MissionDraftUi missionDraft) { if (missionDraft == null) { return; } ModelState.Remove("Id"); missionDraft.AddDate = DateTime.UtcNow; }
public async Task <ActionResult> Create(MissionDraftUi missionDraft) { FixModelAndModelState(missionDraft); if (missionDraft != null && ModelState.IsValid) { await _missionDraftService.AddNewMissionDraft(missionDraft.ConvertToDomain()); return(RedirectToAction("Index")); } return(View(missionDraft)); }
public async Task <ActionResult> Edit(MissionDraftUi missionDraft) { if (missionDraft != null && ModelState.IsValid) { await _missionDraftService.UpdateMissionDraft(missionDraft.ConvertToDomain()); return(RedirectToAction("Index")); } var personQualities = await _personQualityService.GetPersonQualities(); ViewBag.PersonQualities = personQualities; return(View(missionDraft)); }
public async Task Create() { // Действие var result = (await _controller.Index(null)) as ViewResult; var drafts = result.Model as IEnumerable <MissionDraft>; int count = drafts.Count(); var newMissionDraft = new MissionDraftUi { Name = "New draft", Description = "Description", PhotoUrl = "http://vk.com", Difficulty = 1 }; result = (await _controller.Create(newMissionDraft)) as ViewResult; // Утверждение Assert.IsNotNull(drafts); Assert.IsNotEmpty(drafts); Assert.AreEqual(drafts.Last().Name, "New draft"); Assert.AreEqual(count + 1, drafts.Count()); }
public async Task Edit() { // Действие var result = (await _controller.Index(null)) as ViewResult; var drafts = result.Model as IEnumerable <MissionDraft>; var oldDraft = drafts.Last(); var draft = new MissionDraftUi { Id = oldDraft.Id, Name = "Updated draft", Description = oldDraft.Description, Difficulty = oldDraft.Difficulty }; var editResult = (await _controller.Edit(draft)) as RedirectToRouteResult; result = (await _controller.Details(oldDraft.Id)) as ViewResult; var draftAfterEdit = result.Model as MissionDraft; // Утверждение Assert.IsNotNull(editResult); Assert.IsNotNull(drafts); Assert.IsNotEmpty(drafts); Assert.AreEqual("Updated draft", draftAfterEdit.Name); }