示例#1
0
        public async Task PostQuestion_Success()
        {
            var question = new QuestionRequest
            {
                Content   = "This is ... car?",
                AnswerA   = "a",
                AnswerB   = "an",
                AnswerC   = "that",
                AnswerD   = "this",
                CorectAns = "a"
            };

            var questionService = new QuestionService(_questionRepository);

            var controller = new QuestionsController(questionService);

            //action
            var result = await controller.AddQuestion(question);

            //course

            result.Should().NotBeNull();

            var createdAtActionResult = Assert.IsType <OkObjectResult>(result.Result);
            var returnValue           = Assert.IsType <Question>(createdAtActionResult.Value);

            Assert.Equal("This is ... car?", returnValue.Content);
            Assert.Equal("a", returnValue.AnswerA);
            Assert.Equal("an", returnValue.AnswerB);
            Assert.Equal("that", returnValue.AnswerC);
            Assert.Equal("this", returnValue.AnswerD);
            Assert.Equal("a", returnValue.CorectAns);
        }
示例#2
0
        public void TestFindQuestionByQuestionHeader()
        {
            // Arrange
            var      repo = new FakeRepository();
            var      questionController = new QuestionsController(repo);
            Question quest = new Question
            {
                QuestionID     = 3,
                QuestionHeader = "header",
                QuestionBody   = "body"
            };

            // Act
            questionController.AddQuestion(quest);

            Question q = questionController.FindQuestionByQuestionHeader("header");

            // Assert
            Assert.Equal(q.QuestionHeader, repo.Questions[3].QuestionHeader);
        }