예제 #1
0
        public void ConfirmAnswer_Return_Ok()
        {
            // Arrange
            var mockDb = new Mock<IDataBaseManager>();
            mockDb.Setup(db => db.isExistUserId(It.IsInRange<int>(1, int.MaxValue, Range.Inclusive))).Returns(true);
            mockDb.Setup(db => db.isExistQuestionId(It.IsInRange<int>(1, int.MaxValue, Range.Inclusive))).Returns(true);

            var mockLogger = new Mock<ILogger>();
            mockLogger.Setup(db => db.Debug(It.IsAny<string>()));
            var manager = new AnswersManager(mockDb.Object, mockLogger.Object);

            // Act
            var result = manager.ConfirmAnswer(1, 1, new DataContracts.ConfirmAnswerRequest());

            // Assert
            Assert.AreEqual(Errors.OK, result);
        }
예제 #2
0
        public void ConfirmAnswer_Return_ErrorResponse_NotExistStudentId()
        {
            // Arrange
            var mockDb = new Mock<IDataBaseManager>();
            mockDb.Setup(db => db.isExistQuestionId(It.IsInRange<int>(1, int.MaxValue, Range.Inclusive))).Returns(true);
            mockDb.Setup(db => db.isExistUserId(It.IsInRange<int>(int.MinValue, 0, Range.Inclusive))).Returns(false);

            var mockLogger = new Mock<ILogger>();
            mockLogger.Setup(db => db.Debug(It.IsAny<string>()));
            var manager = new AnswersManager(mockDb.Object, mockLogger.Object);

            // Act
            var result = manager.ConfirmAnswer(1, -1, new DataContracts.ConfirmAnswerRequest());

            // Assert
            Assert.AreEqual(Errors.NOT_EXIST_STUDENT_ID, result);
        }
예제 #3
0
        public void ConfirmAnswer_Return_Exeption_DbError_UpdateSurveyScore()
        {
            // Arrange
            var mockDb = new Mock<IDataBaseManager>();
            mockDb.Setup(db => db.isExistUserId(It.IsInRange<int>(1, int.MaxValue, Range.Inclusive))).Returns(true);
            mockDb.Setup(db => db.isExistQuestionId(It.IsInRange<int>(1, int.MaxValue, Range.Inclusive))).Returns(true);
            mockDb.Setup(db => db.UpdateSurveyScore(It.IsAny<ConfirmAnswerDBRequest>())).Throws(new Exception());

            var mockLogger = new Mock<ILogger>();
            mockLogger.Setup(db => db.Debug(It.IsAny<string>()));
            var manager = new AnswersManager(mockDb.Object, mockLogger.Object);

            // Act
            var result = manager.ConfirmAnswer(1, 1, new ConfirmAnswerRequest() { IsCorrect = true });

            // Assert
            Assert.AreEqual(Errors.DATA_BASE_ERROR, result);
        }