Ejemplo n.º 1
0
        public async void UpdateQuestionAsync_GivenValidInput_ShouldProduceValidResponse()
        {
            // arrange
            var mockUnitOfWork  = new Mock <IUnitOfWork>();
            var mockDTOMapper   = new Mock <IDTOMapper>();
            var mockTransaction = new Mock <IDbContextTransaction>();
            var testEditService = new TestEditService(mockUnitOfWork.Object, mockDTOMapper.Object);

            mockUnitOfWork.Setup(uow => uow.StartTransaction()).ReturnsAsync(mockTransaction.Object);
            mockUnitOfWork.Setup(uow => uow.Questions.Update(It.IsAny <Question>()));
            mockDTOMapper.Setup(map => map.MapDTOQuestion(It.IsAny <QuestionDTO>())).Returns(new Question()
            {
            });
            mockDTOMapper.Setup(map => map.MapQuestion(It.IsAny <Question>())).Returns(new QuestionDTO()
            {
                QuestionId = -1
            });

            // act
            var actual = await testEditService.UpdateQuestionAsync(1, "", new string[] { "" }, new int[] { 0 }, 1);

            // assert
            Assert.False(actual.ErrorOccured);
            Assert.True(actual.Model.QuestionId == -1);
            mockUnitOfWork.Verify(x => x.SaveAsync(), Times.Once);
            mockUnitOfWork.Verify(x => x.Questions.Update(It.IsAny <Question>()), Times.Once);
        }
Ejemplo n.º 2
0
        public async void AddTestAsync_GivenValidInput_ShouldProduceValidResponse()
        {
            // arrange
            var mockUnitOfWork  = new Mock <IUnitOfWork>();
            var mockDTOMapper   = new Mock <IDTOMapper>();
            var mockTransaction = new Mock <IDbContextTransaction>();
            var testEditService = new TestEditService(mockUnitOfWork.Object, mockDTOMapper.Object);

            mockUnitOfWork.Setup(uow => uow.StartTransaction()).ReturnsAsync(mockTransaction.Object);
            mockUnitOfWork.Setup(uow => uow.Tests.Add(It.IsAny <Test>())).ReturnsAsync(new Test());
            mockDTOMapper.Setup(map => map.MapTest(It.IsAny <Test>())).Returns(new TestDTO()
            {
                TestId = -1
            });


            // act
            var actual = await testEditService.AddTestAsync("");

            // assert
            Assert.False(actual.ErrorOccured);
            Assert.True(actual.Model.TestId == -1);
            mockUnitOfWork.Verify(x => x.SaveAsync(), Times.Once);
        }