public async Task <ResponseModel> AddNewsAsync([FromBody] EntityNews entityNews) { var newsInfo = await NewsService.AddNewsAsync(entityNews); await UpdateNewsImgAsync(newsInfo); return(Success(newsInfo)); }
public async Task AddNewsAsync_WithNullUserId_ShouldRetyrnArgumentNullException() { var context = SteuDbContextInMemoryFactory.InitializeContext(); NewsService service = this.IntializeNewsService(context); var repository = new EfDeletableEntityRepository <News>(context); await Assert.ThrowsAsync <ArgumentNullException>(() => service.AddNewsAsync("title", "content", null, null)); }
public async Task AddNews_NullRequest_ReturnsNullException(Mock <INewsRepository> newsRepository) { var service = new NewsService(newsRepository.Object, _mapper); async Task Actual() => await service.AddNewsAsync(null); await Assert.ThrowsAsync <ArgumentNullException>(Actual); newsRepository.VerifyNoOtherCalls(); }
public async Task AddNewsAsync_WithCorrectAndNullPicture_ShouldAddNewsToRepository() { var context = SteuDbContextInMemoryFactory.InitializeContext(); NewsService service = this.IntializeNewsService(context); var repository = new EfDeletableEntityRepository <News>(context); await service.AddNewsAsync("title", "content", null, "userId"); var actualResult = await repository.All().ToListAsync(); Assert.Single(actualResult); }
public async Task AddNewsAsync_WithCorrectData_ShouldAddNewsToRepository() { var context = SteuDbContextInMemoryFactory.InitializeContext(); NewsService service = this.IntializeNewsService(context); var repository = new EfDeletableEntityRepository <News>(context); IFormFile file = new FormFile(new MemoryStream(Encoding.UTF8.GetBytes("This is a dummy file")), 0, 0, "Data", "dummy.txt"); await service.AddNewsAsync("title", "content", file, "userId"); var actualResult = await repository.All().ToListAsync(); Assert.Single(actualResult); }
public async Task AddNews_NewsValid_ReturnsNotNull(Mock <INewsRepository> newsRepository, News news, AddNewsRequest addRequest) { newsRepository.Setup(x => x.Add(It.IsAny <News>())).Returns(news); var service = new NewsService(newsRepository.Object, _mapper); var actual = await service.AddNewsAsync(addRequest); actual.Category.Should().NotBeNull(); actual.EncodedText.Should().NotBeNullOrEmpty(); actual.Slug.Should().NotBeNullOrEmpty(); actual.Title.Should().NotBeNullOrEmpty(); newsRepository.Verify(x => x.Add(It.IsAny <News>()), Times.Once); newsRepository.Verify(x => x.UnitOfWork.SaveChangesAsync(It.IsAny <CancellationToken>()), Times.Once); newsRepository.VerifyNoOtherCalls(); }