public async Task should_call_httpclient_and_matchservice_and_return_result()
        {
            // Arrange
            var mockHttpClientWrapper = new Mock <IHttpClientWrapper>();

            mockHttpClientWrapper.Setup(x => x.SendAsync(It.IsAny <HttpRequestMessage>())).ReturnsAsync("search result");
            var mockMatchService = new Mock <IMatchService>();

            mockMatchService.Setup(x => x.Count(It.IsAny <string>(), It.IsAny <string>())).Returns(1);
            var mockSearchOptions = new Mock <IOptions <GoogleSearchOptions> >();

            mockSearchOptions.Setup(x => x.Value).Returns(new GoogleSearchOptions());

            var sut     = new GoogleSearchService(mockHttpClientWrapper.Object, mockMatchService.Object, mockSearchOptions.Object);
            var request = new SearchRequest
            {
                Keywords = "online title search",
                Url      = "www.sympli.com.au"
            };

            // Act
            var result = await sut.Search(request);

            // Assert
            mockHttpClientWrapper.Verify(x => x.SendAsync(It.IsAny <HttpRequestMessage>()), Times.Once);
            mockMatchService.Verify(x => x.Count("search result", request.Url), Times.Once);
            Assert.Equal(result.Length, 1);
            Assert.Equal(result[0], 1);
        }
Пример #2
0
        public async Task GoogleSearchTest()
        {
            var client        = new HttpClient();
            var googleService = new GoogleSearchService(client);
            var result        = await googleService.Search("5", "5");

            Assert.IsTrue(result.Results.Contains("1, 2"));
        }
Пример #3
0
        public void SearchTest()
        {
            // Arrange
            var searchTerm = "InfoTrack";
            var expected   = GoogleSearchResponse;

            // Act
            var output = subject.Search(searchTerm, 1);

            // Assert
            output.ShouldNotBeNull();
            output.ShouldBe(expected);
        }