public async Task TestListRatingFilter(int?min, int?max, int totalRecords, int expectedResult) { // Arrange using var dbContext = GetBookSellerContext($"{nameof(ReviewTests)}_{nameof(TestListRatingFilter)}_{min?.ToString() ?? "null"}_{max?.ToString() ?? "null"}", 1, 1, totalRecords); int i = 1; foreach (var review in dbContext.Review) { review.Rating = i++; } dbContext.SaveChanges(); var controller = new BooksController(dbContext); var filter = new ReviewsFilter(); if (min != null) { filter.MinRating = min.Value; } if (max != null) { filter.MaxRating = max.Value; } // Act var response = await controller.ListReviews(1, filter); // Assert Assert.Equal(expectedResult, response.Value.Items.Count); }
public async Task TestListTotalPages(int limit) { // Arrange using var dbContext = GetBookSellerContext($"{nameof(ReviewTests)}_{nameof(TestListTotalPages)}_{limit}", 1, 1, TOTAL_RECORDS); var controller = new BooksController(dbContext); var filter = new ReviewsFilter { Limit = limit }; // Act var response = await controller.ListReviews(1, filter); // Assert Assert.Equal(ExpectedTotalPages(limit, TOTAL_RECORDS), response.Value.TotalPages); }