示例#1
0
        public async Task TestShouldAddAQuestion()
        {
            var mockRepo = new Mock <IUserRepo>();

            mockRepo.Setup(r => r.GetAUserAsync(It.IsAny <string>()))
            .Returns(Task.FromResult(new User
            {
                FirstName = "hi",
                LastName  = "bye",
                Username  = "******",
                Email     = "*****@*****.**",
                Id        = 3,
                Phone     = "678908765789",
                Password  = "******"
            }));

            Mock <IForumRepo> _forumrepo = new Mock <IForumRepo>();


            _forumrepo.Setup(r => r.AddQuestionAsync(It.IsAny <Question>()));


            Mock <ILogger <ForumController> > logger = new Mock <ILogger <ForumController> >();
            var controller = new ForumController(logger.Object, mockRepo.Object, sentMessage.Object, _forumrepo.Object);

            var statusCode = Assert.IsType <StatusCodeResult>(await controller.AddQuestion(new QuestionModel()
            {
                Category = "Math"
            }));

            Assert.Equal(201, statusCode.StatusCode);
        }