示例#1
0
        public async Task CheckReadAsyncReturnCommentDto(int id)
        {
            _mockCommentRepo.Setup(repo => repo.ReadAsync(id)).ReturnsAsync(GetTestComments()[0]);
            var commentBl = new CommentBl(_mockCommentRepo.Object, _mockMapper, _mockProjectUserRepo.Object,
                                          _mockProjectRepo.Object, _mockSprintRepository.Object);
            var comment = await commentBl.ReadAsync(id);

            Assert.IsAssignableFrom <CommentDto>(comment);
            _mockCommentRepo.Verify(r => r.ReadAsync(id), Times.Once);
        }
示例#2
0
        public async Task CheckCreateCommentReturnPositiveItemResponse()
        {
            var commentBl = new CommentBl(_mockCommentRepo.Object, _mockMapper, _mockProjectUserRepo.Object,
                                          _mockProjectRepo.Object, _mockSprintRepository.Object);
            var response = await commentBl.CreateAsync(tempCommentDto);

            Assert.IsAssignableFrom <ItemResponse>(response);
            Assert.True(response.Success);
            _mockCommentRepo.Verify(repository => repository.CreateAsync(It.IsAny <Comment>()), Times.Once);
        }
示例#3
0
        public async Task CheckDeleteNotExistCommentThrowException()
        {
            _mockCommentRepo.Setup(repository => repository.ReadAsync(It.IsAny <int>()))
            .ReturnsAsync(null as Comment);
            var commentBl = new CommentBl(_mockCommentRepo.Object, _mockMapper, _mockProjectUserRepo.Object,
                                          _mockProjectRepo.Object, _mockSprintRepository.Object);
            await Assert.ThrowsAsync <NotFoundResponseException>(() => commentBl.DeleteAsync(It.IsAny <int>(), It.IsAny <string>()));

            _mockCommentRepo.Verify(repository => repository.DeleteAsync(It.IsAny <int>()), Times.Never);
        }
示例#4
0
        public async Task CheckGetCommentByItemIdAsyncReturnListOfCommentDto(int itemId)
        {
            _mockCommentRepo.Setup(repo => repo.GetByItemIdAsync(itemId)).ReturnsAsync(GetTestComments());
            var commentBl = new CommentBl(_mockCommentRepo.Object, _mockMapper, _mockProjectUserRepo.Object,
                                          _mockProjectRepo.Object, _mockSprintRepository.Object);
            var comments = await commentBl.GetByItemIdAsync(itemId);

            Assert.IsAssignableFrom <IEnumerable <CommentDto> >(comments);
            var listComments = comments as List <CommentDto>;

            Assert.Equal(listComments.Count, GetTestComments().Count);
            _mockCommentRepo.Verify(r => r.GetByItemIdAsync(itemId), Times.Once);
        }
示例#5
0
        public async Task CheckDevCantDeleteNotHimselfComment(string userId)
        {
            _mockCommentRepo.Setup(repository => repository.ReadAsync(It.IsAny <int>()))
            .ReturnsAsync(GetTestComments()[0]);
            _mockProjectUserRepo.Setup(r => r.GetRoleOfMember("dev1", It.IsAny <int>())).ReturnsAsync(AppUserRole.Developer);
            _mockSprintRepository.Setup(r => r.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(ItemBlTests.GetTestSprints()[0]);
            _mockProjectRepo.Setup(r => r.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(ItemBlTests.GetTestProjects()[0]);

            var commentBl = new CommentBl(_mockCommentRepo.Object, _mockMapper, _mockProjectUserRepo.Object,
                                          _mockProjectRepo.Object, _mockSprintRepository.Object);
            await Assert.ThrowsAsync <ForbiddenResponseException>(() => commentBl.DeleteAsync(It.IsAny <int>(), userId));

            _mockCommentRepo.Verify(repository => repository.DeleteAsync(It.IsAny <int>()), Times.Never);
        }
示例#6
0
        public async Task CheckDevCanDeleteHimselfComment(string userId)
        {
            _mockCommentRepo.Setup(repository => repository.ReadAsync(It.IsAny <int>()))
            .ReturnsAsync(GetTestComments()[0]);
            _mockProjectUserRepo.Setup(r => r.GetRoleOfMember("dev", It.IsAny <int>())).ReturnsAsync(AppUserRole.Developer);
            _mockSprintRepository.Setup(r => r.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(ItemBlTests.GetTestSprints()[0]);
            _mockProjectRepo.Setup(r => r.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(ItemBlTests.GetTestProjects()[0]);

            var commentBl = new CommentBl(_mockCommentRepo.Object, _mockMapper, _mockProjectUserRepo.Object,
                                          _mockProjectRepo.Object, _mockSprintRepository.Object);
            var response = await commentBl.DeleteAsync(It.IsAny <int>(), userId);

            Assert.IsAssignableFrom <ItemResponse>(response);
            Assert.True(response.Success);
            _mockCommentRepo.Verify(repository => repository.DeleteAsync(It.IsAny <int>()), Times.Once);
        }
示例#7
0
 public CommentController(SportWorldContext context)
 {
     _commentBl = new CommentBl(context);
     _userBl    = new UserBl(context);
 }
示例#8
0
 public Recommendation(SportWorldContext sportWorldContext)
 {
     _productBl = new ProductBl(sportWorldContext);
     _commentBl = new CommentBl(sportWorldContext);
     _userBl    = new UserBl(sportWorldContext);
 }
示例#9
0
 public CommentController(HydraContext context)
 {
     _commentBl = new CommentBl(context);
 }