Esempio n. 1
0
        public async Task AddAsync_AddLikeToAlreadyLikedAdvert()
        {
            Mock <IUnitOfWork> UOWMock = new Mock <IUnitOfWork>();

            UOWMock.Setup(uow => uow.AdvertRepository.GetAsync(It.IsAny <int>()))
            .ReturnsAsync(new Advert
            {
                Likes = new List <Like>
                {
                    new Like
                    {
                        UserId = "user_1",
                    }
                }
            });
            UOWMock.Setup(uow => uow.LikeRepository.Create(It.IsAny <Like>()));

            ILikeService likeService = new LikeService(_mapper, UOWMock.Object);
            await likeService.AddAsync(new CreateLikeDto
            {
                AdvertId = 1,
                UserId   = "user_1"
            });

            UOWMock.Verify(uow => uow.LikeRepository.Create(It.IsAny <Like>()), Times.Never);
        }
Esempio n. 2
0
        public async Task AddAsync_AddLikeToNonExistentAdvert()
        {
            Mock <IUnitOfWork> UOWMock = new Mock <IUnitOfWork>();

            UOWMock.Setup(uow => uow.AdvertRepository.GetAsync(It.IsAny <int>()))
            .ReturnsAsync(() => null);

            ILikeService likeService = new LikeService(_mapper, UOWMock.Object);

            await Assert.ThrowsAsync <AdvertNotFoundException>(async() =>
                                                               await likeService.AddAsync(new CreateLikeDto
            {
                AdvertId = 1,
                UserId   = "user_1"
            }
                                                                                          ));
        }
Esempio n. 3
0
        public async Task AddAsync_AddLikeToExistingAdvert()
        {
            Mock <IUnitOfWork> UOWMock = new Mock <IUnitOfWork>();

            UOWMock.Setup(uow => uow.AdvertRepository.GetAsync(1))
            .ReturnsAsync(new Advert
            {
                Likes = new List <Like>()
            });
            UOWMock.Setup(uow => uow.LikeRepository.Create(It.IsAny <Like>()));

            ILikeService likeService = new LikeService(_mapper, UOWMock.Object);

            await likeService.AddAsync(new CreateLikeDto
            {
                AdvertId = 1,
                UserId   = "user_1"
            });
        }
Esempio n. 4
0
        public async Task <IActionResult> Add(LikePostDto likePostDto)
        {
            await _likeService.AddAsync(likePostDto);

            return(Created("Add", likePostDto));
        }