Ejemplo n.º 1
0
        public async void AddSurveyResponse_Adds_Survey_Response()
        {
            var options = new DbContextOptionsBuilder <SurveyContext>()
                          .UseInMemoryDatabase(Guid.NewGuid().ToString())
                          .Options;

            await GenerateSurveys(options);

            using (var context = new SurveyContext(options))
            {
                var surveyRepository = new SurveyRepository(context);

                var survey = await surveyRepository.GetSurvey(1);

                var surveyResponse = new SurveyResponseDto
                {
                    Name     = "Test User",
                    Email    = "*****@*****.**",
                    SurveyId = survey.Id,
                    Answers  = new List <SurveyResponseAnswerDto>
                    {
                        new SurveyResponseAnswerDto {
                            QuestionId = 1, QuestionAnswer = "Answer 1"
                        },
                        new SurveyResponseAnswerDto {
                            QuestionId = 2, QuestionAnswer = "Answer 2"
                        },
                        new SurveyResponseAnswerDto {
                            QuestionId = 3, QuestionAnswer = "Answer 3"
                        }
                    }
                };

                var success = await surveyRepository.AddSurveyResponse(survey, surveyResponse);

                var responseList = await context.SurveyResponses.ToListAsync();

                var response = responseList.First();

                Assert.True(success);
                Assert.NotNull(responseList);
                Assert.NotNull(response);
            }
        }