Exemplo n.º 1
0
        public void CreateListOfQuestionsTest(int userId, int testId)
        {
            AttemptCreator       creator = new AttemptCreator();
            AttemptBusinessModel result1 = creator.CreateAttempt(userId, testId);
            AttemptBusinessModel result2 = creator.CreateAttempt(userId, testId);
            AttemptBusinessModel result3 = creator.CreateAttempt(userId, testId);

            string questions1 = JsonSerializer.Serialize(result1.Questions);
            string questions2 = JsonSerializer.Serialize(result2.Questions);
            string questions3 = JsonSerializer.Serialize(result3.Questions);

            Assert.AreNotEqual(questions1, questions2, questions3);
        }
Exemplo n.º 2
0
        public AttemptBusinessModel CreateAttempt(int userId, int testId)
        {
            StudentDataAccess student = new StudentDataAccess();
            var questions             = CreateListOfQuestions(userId, testId);
            var sortedquestions       = CreateDictionary(questions);
            var test                     = student.GetTestById(testId);
            var cuttedquestions          = PickQuestionsForAttempt(sortedquestions, test);
            var attemptQuestions         = ConvertDictionaryToList(cuttedquestions);
            var attemptId                = AddQuestionsToAttemptInDatabase(userId, testId, attemptQuestions);
            AttemptBusinessModel attempt = new AttemptBusinessModel(attemptId, test.Name, test.DurationTime, attemptQuestions);

            return(attempt);
        }
Exemplo n.º 3
0
        public ConcreteAttemptOutputModel AttemptBusinessModelToConcreteAttemptOutputModel(AttemptBusinessModel questions, int userId, int testId)
        {
            ConcreteAttemptOutputModel concretemodel = new ConcreteAttemptOutputModel();

            concretemodel.UserId       = userId;
            concretemodel.TestId       = testId;
            concretemodel.AttemptId    = questions.AttemptId;
            concretemodel.DurationTime = questions.DurationTime;
            concretemodel.TestName     = questions.TestName;
            concretemodel.Questions    = new Mapper().QuestionWithListAnswersDTOsToQuestionWithListAnswersOutputModels(questions.Questions);
            return(concretemodel);
        }