public void CreateConcern() { //ARRANGE var controller = GetAuthenticatedControllerMock<NotesController>(Orguser); //MockRepository.GeneratePartialMock<AccountController>(); //set controller context. controller.ControllerContext = new ControllerContext(GetContext(true), new RouteData(), controller); var vm = new ConcernViewModel { Comment = "Test", EventDate = DateTime.Now, Severity = 2, SubjectUserId = Orguser.Id, }; //ACT var result = controller.CreateConcern(vm); //ASSERT var jsonresponse = ValidateAndUnwrapJsonResult(result); var unwrappedresponse = (List<TimelineItem>)jsonresponse.Data; }
/// <summary> /// Update an existing concern /// </summary> /// <param name="model"></param> /// <returns></returns> public JsonResult UpdateConcern(ConcernViewModel model) { //remove Id from modelstate if there. ModelState.Remove("Id"); ModelState.Remove("EventDate"); ModelState.Remove("CreatedBy"); ModelState.Remove("SubjectUserId"); if (ModelState.IsValid) { using (var orgSession = OrgStore.OpenSession()) { var concern = orgSession.Load<Concern>(model.Id); if (concern != null) { concern.EventDate = model.EventDate; concern.ConsolidatedCompletionDate = model.EventDate; concern.Comment = model.Comment; concern.Severity = model.Severity; orgSession.Store(concern); orgSession.SaveChanges(); return JsonSuccess(concern.ToTimelineItems(), "Concern updated"); } } } return JsonError("Invalid data"); }
/// <summary> /// Create a new concern for a person /// </summary> /// <param name="model"></param> /// <returns></returns> public JsonResult CreateConcern(ConcernViewModel model) { //remove Id from modelstate if tehre. ModelState.Remove("Id"); ModelState.Remove("EventDate"); ModelState.Remove("CreatedBy"); if (ModelState.IsValid) { using (var orgSession = OrgStore.OpenSession()) { var target = orgSession.Load<User>(model.SubjectUserId); var concern = new Concern { CreatedBy = OrgUser.ToSimpleUser(), EventDate = DateTime.Now, ConsolidatedCompletionDate = DateTime.Now, Comment = model.Comment, SubjectUser = target.ToSimpleUser(), Severity = model.Severity, Id = IlluminateDatabase.GenerateId<Concern>() }; orgSession.Store(concern); orgSession.SaveChanges(); return JsonSuccess(concern.ToTimelineItems(), "Concern created"); } } return JsonError("Invalid data"); }