示例#1
0
        public void GetAnswers_WhenSendAnEvaluationId_ShouldReturnAsnwers()
        {
            var evaluationId = Guid.NewGuid();

            var expected = new List <EvaluationScore>()
            {
                new EvaluationScore()
                {
                    Id = Guid.NewGuid(), IdEvaluation = evaluationId
                },
                new EvaluationScore()
                {
                    Id = Guid.NewGuid(), IdEvaluation = evaluationId
                },
            };

            var mapperMock = new Mock <IMapper>();

            mapperMock.Setup(m => m.Fetch <EvaluationScore>(It.IsAny <string>(), evaluationId)).Returns(expected);

            var answerDao = new AnswersDao(MockUtils.MockConnectionFactory(mapperMock));
            var answer    = answerDao.GetAnswers(evaluationId);

            Assert.Equal(2, answer.Count);
        }
        public OpenAnswer ReadOpenAnswer(int answerId, bool details)
        {
            AnswersDao answersDao = details ? _ctx.Answers.AsNoTracking().First(i => i.AnswerId == answerId) : _ctx.Answers.First(i => i.AnswerId == answerId);

            ExtensionMethods.CheckForNotFound(answersDao, "Answer", answerId);

            return(ConvertToDomain(answersDao));
        }
示例#3
0
        public void CreateAnswers_WhenSendAValidObject_ShouldCreateAndReturnObject()
        {
            var connectionMock = new CassandraConnection("answers", "localhost");
            var mapperMock     = new Mock <IMapper>();
            var expected       = new EvaluationScore()
            {
                Id            = Guid.NewGuid(),
                IdEvaluation  = Guid.NewGuid(),
                Qualification = Guid.NewGuid(),
                Date          = DateTime.Now,
                Name          = "TestName",
                Owner         = "TestOwner",
                Score         = 50,
                ScoreFormula  = "Formula",
                Weight        = 12,
                QuestionList  = new List <QuestionScore>()
                {
                    new QuestionScore()
                    {
                        IdQuestion   = Guid.NewGuid(),
                        Answers      = new List <Guid>(),
                        Score        = 5,
                        ScoreFormula = "QS1",
                        OptionList   = new List <OptionScore>()
                        {
                            new OptionScore()
                            {
                                IdOption = Guid.NewGuid(), IsAnswer = true, Sequence = 1, UserSelected = false, Weight = 3
                            }
                        }
                    },
                    new QuestionScore()
                    {
                        IdQuestion   = Guid.NewGuid(),
                        Answers      = new List <Guid>(),
                        Score        = 5,
                        ScoreFormula = "QS2",
                        OptionList   = new List <OptionScore>()
                    },
                },
                QualificationRanges = new List <QualificationRange>()
                {
                    new QualificationRange()
                    {
                        Id = Guid.NewGuid(), Start = 100, End = 0, Qualification = "GOOD"
                    }
                },
            };

            mapperMock.Setup(m => m.Insert(expected, null)).Verifiable();
            mapperMock.Setup(m => m.Single <EvaluationScore>(It.IsAny <string>(), It.IsAny <Guid>())).Returns(expected);

            var answerDao = new AnswersDao(MockUtils.MockConnectionFactory(mapperMock));
            var response  = answerDao.CreateAnswers(expected);

            Assert.Equal(expected.Id, response.Id);
        }
示例#4
0
        public void AnswersDoesNotExist_WhenSendAValidAnswerId_ShouldReturnFalse()
        {
            var mapperMock = new Mock <IMapper>();

            mapperMock.Setup(m => m.Single <EvaluationScore>(It.IsAny <string>(), It.IsAny <Guid>())).Throws <InvalidOperationException>();

            var answerDao    = new AnswersDao(MockUtils.MockConnectionFactory(mapperMock));
            var existsAnswer = answerDao.AnswersExist(Guid.NewGuid());

            Assert.False(existsAnswer);
        }
示例#5
0
        public void AnswersExist_WhenSendAValidAnswerId_ShouldReturnTrue()
        {
            var idToFind = Guid.NewGuid();

            var mapperMock = new Mock <IMapper>();

            mapperMock.Setup(m => m.Single <EvaluationScore>(It.IsAny <string>(), idToFind)).Returns(new EvaluationScore());

            var answerDao    = new AnswersDao(MockUtils.MockConnectionFactory(mapperMock));
            var existsAnswer = answerDao.AnswersExist(idToFind);

            Assert.True(existsAnswer);
        }
 private OpenAnswer ConvertToDomain(AnswersDao dao)
 {
     return(new OpenAnswer
     {
         Id = dao.AnswerId,
         User = new UimvcUser {
             Id = dao.UserId
         },
         Question = new QuestionnaireQuestion {
             Id = dao.QQuestionId
         },
         IsUserEmail = dao.AnswerText.Contains("@"),
         AnswerText = dao.AnswerText
     });
 }
示例#7
0
        public void GetAnswers_WhenSendAnValidId_ShouldReturnTheAnswer()
        {
            var idToFind = Guid.NewGuid();

            var mapperMock = new Mock <IMapper>();

            mapperMock.Setup(m => m.Single <EvaluationScore>(It.IsAny <string>(), idToFind)).Returns(new EvaluationScore()
            {
                Id = idToFind
            });

            var answerDao = new AnswersDao(MockUtils.MockConnectionFactory(mapperMock));
            var answer    = answerDao.GetAnswer(idToFind);

            Assert.Equal(answer.Id, idToFind);
        }
        private MultipleAnswer ConvertToDomain(AnswersDao answersDao, List <OptionsDao> chosenOptionsDao)
        {
            MultipleAnswer ma = null;

            ma.Id   = answersDao.AnswerId;
            ma.User = new UimvcUser {
                Id = answersDao.UserId
            };
            ma.Question = new QuestionnaireQuestion {
                Id = answersDao.QQuestionId
            };
            ma.DropdownList = chosenOptionsDao.Count == 1;

            foreach (OptionsDao dao in chosenOptionsDao)
            {
                ma.Choices.Add(dao.OptionText);
            }

            return(ma);
        }
        public MultipleAnswer ReadMultipleAnswer(int answerId, bool details)
        {
            AnswersDao answersDao = details ? _ctx.Answers.AsNoTracking().First(i => i.AnswerId == answerId) : _ctx.Answers.First(i => i.AnswerId == answerId);

            ExtensionMethods.CheckForNotFound(answersDao, "Answer", answerId);

            List <OptionsDao> optionsDaos      = _ctx.Options.ToList().FindAll(o => o.QquestionId == answersDao.QQuestionId);
            List <OptionsDao> chosenOptionsDao = new List <OptionsDao>();

            foreach (OptionsDao dao in optionsDaos)
            {
                ChoicesDao choice = _ctx.Choices.First(c => c.OptionId == dao.OptionId);

                if (choice.ChoiceId != null)
                {
                    chosenOptionsDao.Add(dao);
                }
            }

            return(ConvertToDomain(answersDao, chosenOptionsDao));
        }