public void GetLatestAsync_RatingNotNull_Test() { // Arrange int?rating = 1; var now = DateTime.Now; var cachedFeedbackList = _dataFixture.GetFeedbackList(); _dataFixture.GetMocks <Feedback>(out var mockRepository, out var mockCacheManager, out var mockOptions); _dataFixture.GetMocks(out var orderFacadeMock, out var customerFacadeMock, out var productFacadeMock); mockCacheManager .Setup(cache => cache.GetFromCacheAsync <List <Feedback> >(It.IsAny <string>(), It.IsAny <CancellationToken>())) .ReturnsAsync(cachedFeedbackList); mockRepository.Setup(repo => repo.GetManagerInstance <OrderFeedbackManager>()).Returns(() => new OrderFeedbackManager()); var orderFeedbackFacade = new OrderFeedbackFacade (mockRepository.Object, orderFacadeMock.Object, customerFacadeMock.Object, productFacadeMock.Object, mockCacheManager.Object, mockOptions.Object); // Act var result = orderFeedbackFacade.GetLatestAsync(rating, CancellationToken.None).Result; // Assert Assert.NotNull(result); Assert.Equal(10, result.Count); }
public void GetLatestAsync_ValidateRating_Test() { // Arrange int?rating = 6; _dataFixture.GetMocks <Feedback>(out var mockRepository, out var mockCacheManager, out var mockOptions); _dataFixture.GetMocks(out var orderFacadeMock, out var customerFacadeMock, out var productFacadeMock); mockRepository.Setup(repo => repo.GetManagerInstance <OrderFeedbackManager>()).Returns(() => new OrderFeedbackManager()); var orderFeedbackFacade = new OrderFeedbackFacade (mockRepository.Object, orderFacadeMock.Object, customerFacadeMock.Object, productFacadeMock.Object, mockCacheManager.Object, mockOptions.Object); // Act & Assert var ex = Assert.Throws <AggregateException>(() => orderFeedbackFacade.GetLatestAsync(rating, CancellationToken.None).Result); Assert.Equal("One or more errors occurred. (Invalid rating. Rating must be between 1 to 5.)", ex.Message); }