public async Task NewsServiceAllAsyncShould_ReturnsNewsForPageOneByDefault() { //Arrange var context = this.GetDbContext(); this.PopulateData(context); var newsService = new NewsService(context, mapper); // Act var returnedData = await newsService.AllAsync(); var expectedFirstPageNews = context.News.OrderByDescending(m => m.CreatedOn).Take(NewsPageSize).ToList(); // Assert foreach (var returnedModel in returnedData) { var testModel = expectedFirstPageNews.First(n => returnedModel.Id == n.Id); Assert.NotNull(testModel); Assert.True(CompareNewsWithNewsListingServiceModelExact(returnedModel, testModel)); } }
public async Task AllAsyncShouldRerutnCorectedOrderedNewsArticles() { //Arrange var dbOptions = new DbContextOptionsBuilder <UndergroundStationDbContext>() .UseInMemoryDatabase("UndergroundStationTestDb") .Options; var db = new UndergroundStationDbContext(dbOptions); var newsService = new NewsService(db); //Act var result = await newsService.AllAsync(1); //Assert result .Should() .Match (r => r.ElementAt(0).Id == 2 && r.ElementAt(1).Id == 3 && r.ElementAt(2).Id == 1) .And .HaveCount(3); }
public async Task AllAsync_ShouldReturnNineRecordsForFirstPage_WhenPageIsNotPassed() { // Arrange var context = this.GetDbContext(); this.PopulateData(context); var newsService = new NewsService(context, mapper); // Act var returnedData = await newsService.AllAsync(); // Assert Assert.AreEqual(returnedData.Count(), 9); }
public async Task AllAsync_ShouldBeEqualTitles_WhenTakeLastNewsFromLastPage() { // Arrange var context = this.GetDbContext(); this.PopulateData(context); var newsService = new NewsService(context, mapper); // Act var returnedData = await newsService.AllAsync(3); // Assert Assert.AreEqual("Title20", returnedData.ToList().Last().Title); }