예제 #1
0
        public void AddChoice_NewChoice_IsAdded()
        {
            const string choiceText      = "42";
            const bool   choiceIsCorrect = true;

            target.AddChoice(choiceText, choiceIsCorrect);
            Choice actual = target.Choices.FirstOrDefault();

            Assert.NotNull(actual);
            Assert.Equal(choiceText, actual.Text);
            Assert.Equal(choiceIsCorrect, actual.IsCorrect);
        }
예제 #2
0
        public IList <Question> GetQuestions(OnlineExam theMainExam)
        {
            UnitOfWork      work         = new UnitOfWork();
            List <Question> questions    = new List <Question>();
            List <Choice>   choices      = new List <Choice>();
            Question        myQuestion   = new Question();
            int             examID       = theMainExam.OnlineExamID;
            List <Question> theQuestions = work.QuestionRepository.Get(a => a.Exam.OnlineExamID == examID).OrderBy(a => a.OrderNumber).ToList();

            foreach (Question question in theQuestions)
            {
                myQuestion = question;
                int           dID        = question.QuestionID;
                List <Choice> theChoices = work.ChoiceRepository.Get(a => a.QuestionID == dID).ToList();
                foreach (Choice choice in theChoices)
                {
                    myQuestion.AddChoice(choice);
                    // choices.Add(choice);
                }
                questions.Add(myQuestion);
            }
            //  questions.Add(myQuestion);

            return(questions);
        }
예제 #3
0
        public IList<Question> GetQuestions(OnlineExam theMainExam, ref UnitOfWork work)
        {
            List<Question> questions = new List<Question>();
            List<Choice> choices = new List<Choice>();
            Question myQuestion = new Question();
            int examID = theMainExam.OnlineExamID;
            List<Question> theQuestions = work.QuestionRepository.Get(a => a.Exam.OnlineExamID == examID).OrderBy(a => a.OrderNumber).ToList();
            foreach (Question question in theQuestions)
            {
                myQuestion = question;
                int dID = question.QuestionID;
                List<Choice> theChoices = work.ChoiceRepository.Get(a => a.QuestionID == dID).ToList();
                foreach (Choice choice in theChoices)
                {
                    myQuestion.AddChoice(choice);
                    // choices.Add(choice);
                }
                questions.Add(myQuestion);
            }
            //  questions.Add(myQuestion);

            return questions;
        }
예제 #4
0
        public static Exam ConvertXmlToExam(string path)
        {
            Exam     exam     = new Exam();
            Question question = null;

            XmlDocument doc = new XmlDocument();

            doc.Load(path);

            XmlNode examNode = doc.SelectSingleNode("Exam");

            exam.Title = (examNode.Attributes["title"] as XmlAttribute).Value;

            XmlNodeList nodeQuestions = doc.SelectNodes("Exam/Questions/Question");

            foreach (XmlNode nodeQuestion in nodeQuestions)
            {
                question       = new Question();
                question.Text  = (nodeQuestion.Attributes["text"] as XmlAttribute).Value;
                question.Point = Convert.ToDouble((nodeQuestion.Attributes["point"] as XmlAttribute).Value);

                XmlNodeList nodeChoices = nodeQuestion.SelectNodes("Choices/Choice");

                foreach (XmlNode nodeChoice in nodeChoices)
                {
                    Choice choice = new Choice();
                    choice.Text      = (nodeChoice.Attributes["text"] as XmlAttribute).Value;
                    choice.IsCorrect = Convert.ToBoolean((nodeChoice.Attributes["isCorrect"] as XmlAttribute).Value);

                    question.AddChoice(choice);
                }

                exam.AddQuestion(question);
            }

            return(exam);
        }