Пример #1
0
        public async Task TestQuestion1SavesCurrentName()
        {
            // Arrange
            var response = SurveyResponse.CreateNew(FakeNow);

            response.Respondent.Name = "Wrong name";
            var clientStorage = Substitute.For <IClientSideStorageService>();
            var dateTime      = Substitute.For <IDateTimeService>();
            var repo          = Substitute.For <ISurveyResponseRepository>();

            var controller = new SurveyController(clientStorage, dateTime, null, null, repo)
            {
                CurrentResponse = response
            };

            var questionAnswer = new NameQuestionViewModel
            {
                Answer = ExcellentName
            };

            // Act
            var result = await controller.Question1(questionAnswer);

            // Assert
            await repo.Received().SaveChanges();

            Assert.IsType <RedirectToActionResult>(result);
            Assert.Equal(ExcellentName, controller.CurrentResponse.Respondent.Name);
        }
Пример #2
0
        public async Task <IActionResult> Question1(NameQuestionViewModel question)
        {
            CurrentResponse.Respondent.Name = question.Answer;
            CurrentResponse.Modified(_dateTime.Now);
            await _surveyResponseRepository.SaveChanges();

            return(RedirectToAction("Question2"));
        }