Esempio n. 1
0
        public void Handle(CreateGameCommand command)
        {
            var gameId = GameId.NewGameId(command.GameId);

            eventStore.Add(gameId, Domain.Game.addQuestion(SingleAnswerQuestion.create("What is my favorite color?", new[] { "Red", "Green", "Blue" })));
            eventStore.Add(gameId, Domain.Game.addQuestion(SingleAnswerQuestion.create("Which is my favorite animal?", new[] { "Dog", "Cat", "Alligator", "Snail" })));
            eventStore.Add(gameId, Domain.Game.addQuestion(SingleAnswerQuestion.create("Do I believe the cake is a lie?", new[] { "Yes", "No" })));
            eventStore.Add(gameId, Domain.Game.addQuestion(MultipleAnswerQuestion.create("What are my favorite colors?", new[] { "Red", "Green", "Blue", "Yellow" })));
        }
        public void DeleteQuestionOptionsInDB(MultipleAnswerQuestion question)
        {
            var answers = question.Answers.ToList();

            foreach (var a in answers)
            {
                _db.Entry(a).State = EntityState.Deleted;
            }
            _db.SaveChanges();
        }
Esempio n. 3
0
 public ucMultipleAnswerTest(MultipleAnswerQuestion question)
 {
     InitializeComponent();
     this.question       = question;
     tbQuestion.Text     = question.Text;
     numericUpDown.Value = question.Answers.Count;
     UpdateCheckBoxes();
     for (int i = 0; i < question.Answers.Count; i++)
     {
         checkBoxes[i].Checked = question.Answers[i].IsTrue;
     }
 }
        public IActionResult EditMultipleAnswerQuestion([FromBody] MultipleQuestionEditModel multipleAnswersQuestionDTO)
        {
            var allAnswers = multipleAnswersQuestionDTO.QuestionAnswers
                             .Select(x => new MultipleAnswerQuestionOption(x.AnswersText, x.IsRightAnswer))
                             .ToList();

            MultipleAnswerQuestion question = _questionRepository.PickById(multipleAnswersQuestionDTO.Id);

            _questionRepository.DeleteQuestionOptionsInDB(question);
            question.EditQuestion(multipleAnswersQuestionDTO.QuestionText, allAnswers);
            _questionRepository.UpdateQuestion(question);

            return(RedirectToAction("Index", "Home"));
        }
Esempio n. 5
0
 public void MultipleAnswerQuestion_EmptyAnswersArgumentException(string value)
 {
     Assert.Throws <ArgumentException>(() =>
     {
         var question = new MultipleAnswerQuestion(value, new List <MultipleAnswerQuestionOption>()
         {
             new MultipleAnswerQuestionOption("option")
         });
     });
     Assert.Throws <ArgumentException>(() =>
     {
         var question = new MultipleAnswerQuestion(value);
     });
     Assert.Throws <ArgumentException>(() =>
     {
         var question = new MultipleAnswerQuestion("Just a question", new List <MultipleAnswerQuestionOption>());
     });
 }
Esempio n. 6
0
        public ucMultipleAnswerTest(MultipleAnswerQuestion question)
        {
            InitializeComponent();

            this.question = question;
            int answersCount = question.Answers.Count;

            isChecked = Enumerable.Repeat(false, answersCount).ToList();

            lbQuestion.Text = question.Text;
            lbQuestion.Left = (this.Width - lbQuestion.Width) / 2;
            int margin     = 20;
            int currentTop = lbQuestion.Top + lbQuestion.Height + margin;

            for (int index = 0; index < answersCount; index++)
            {
                int i        = index;
                var checkBox = new CheckBox
                {
                    Text     = question.Answers[i].Text,
                    AutoSize = true,
                    Left     = 20,
                    Top      = currentTop,
                    Checked  = false
                };
                checkBox.CheckedChanged += (s, e) =>
                {
                    isChecked[i] = (s as CheckBox).Checked;
                };
                currentTop += checkBox.Height;
                this.Controls.Add(checkBox);
                if (i == answersCount - 1)
                {
                    var width  = this.ClientSize.Width;
                    var height = checkBox.Top + checkBox.Height;// + margin;
                    this.ClientSize = new System.Drawing.Size(width, height);
                }
            }
        }
 public void UpdateQuestion(MultipleAnswerQuestion question)
 {
     _db.MultipleAnswerQuestions.Update(question);
     _db.SaveChanges();
 }
 public void AddQuestion(MultipleAnswerQuestion question)
 {
     _db.MultipleAnswerQuestions.Add(question);
     _db.SaveChanges();
 }