public async void GetBingSearchResults_ReturnsNullValue()
        {
            //Arrange
            SearchQueryDto searchQuery = new SearchQueryDto();

            var items = await GetGoogleSearchResultFromFileAsync();

            var distributedCacheMock = new Mock <IDistributedCache>();
            var cacheProviderMock    = new Mock <ISearchResultCacheProvider <SearchResult> >();

            var bingSearchExecutor = new BingSearchExecutor(distributedCacheMock.Object, cacheProviderMock.Object);

            //Act
            var result = await bingSearchExecutor.ExecuteSearchAsync(searchQuery);

            //Assert
            Assert.Null(result);
        }
        public async void GetBingSearchResults_ReturnsValue()
        {
            //Arrange
            SearchQueryDto searchQuery = new SearchQueryDto();

            var items = await GetGoogleSearchResultFromFileAsync();

            var distributedCacheMock = new Mock <IDistributedCache>();
            var cacheProviderMock    = new Mock <ISearchResultCacheProvider <SearchResult> >();

            cacheProviderMock.Setup(m => m.GetOrCreate(It.IsAny <string>(), It.IsAny <Func <SearchResult> >())).Returns(Task.FromResult(items));

            var bingSearchExecutor = new BingSearchExecutor(distributedCacheMock.Object, cacheProviderMock.Object);

            //Act
            var result = await bingSearchExecutor.ExecuteSearchAsync(searchQuery);

            //Assert
            Assert.NotNull(result);
        }