Пример #1
0
        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)));
        }