Esempio n. 1
0
        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);
        }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
        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);
        }