public void HandleTest() { var usecase = new ScheduleUpdateUseCase(_mockRepository.Object); var inputData = new ScheduleUpdateInputData(_id, _updateFrom, _updateTo, _updateName); var outputData = usecase.Handle(inputData); try { // リポジトリが正しく呼び出されているかチェック _mockRepository.Verify(x => x.FindById(_id), Times.Once()); _mockRepository.Verify(x => x.Save(It.Is <ScheduleEntity>(p => p.DateTimeFrom.Equals(_updateFrom) && p.DateTimeTo.Equals(_updateTo) && p.Name == _updateName)), Times.Once()); } catch (MockException e) { Assert.Fail(e.Message); } Assert.AreEqual(outputData.Schedule.DateTimeFrom, _updateFrom); Assert.AreEqual(outputData.Schedule.DateTimeTo, _updateTo); Assert.AreEqual(outputData.Schedule.Name, _updateName); }
public ActionResult Update() { var id = Convert.ToInt32(Request.Form["id"]); var from = Convert.ToDateTime(Request.Form["start"]); var to = Convert.ToDateTime(Request.Form["end"]); var name = Request.Form["title"]; var inputData = new ScheduleUpdateInputData(id, from, to, name); var outputData = _scheduleUpdateUseCase.Handle(inputData); var viewModel = _scheduleUpdatePresenter.CreateViewModel(outputData); return(Content(JsonConvert.SerializeObject(viewModel))); }