public async Task <GitBaseResponse <GitCodeSearchResponse> > GetCodeSearchResponse(string searchTerm, string sort, string order, int?perPage, int?pageNumber) { try { var response = await _githubClient.GetSearchResponse <GitBaseResponse <GitCodeSearchResponse> >(GitSearchType.code, searchTerm + " org:github", sort, order, perPage, pageNumber); response.sort = sort; response.order = order; response.perPage = perPage; response.pageNumber = pageNumber; return(response); } catch (InvalidOperationException ex) { throw ex; } }
public void GetRepositorySearchResponse__returns_search_results_from_github_repository_search_api() { //Arrange GitRepositorySearchResponse gitResponse = new GitRepositorySearchResponse { id = 1 }; GitBaseResponse <GitRepositorySearchResponse> response = new GitBaseResponse <GitRepositorySearchResponse> { total_count = 1, incomplete_results = false, items = new List <GitRepositorySearchResponse>() { gitResponse }, sort = sort, order = order, perPage = perPage, pageNumber = pageNumber }; mockGithubHttpClient.GetSearchResponse <GitBaseResponse <GitRepositorySearchResponse> >(GitSearchType.repositories, searchTerm, sort, order, perPage, pageNumber).Returns(response); //Act var result = subject.GetRepositorySearchResponse(searchTerm, sort, order, perPage, pageNumber); //Assert mockGithubHttpClient.Received(1).GetSearchResponse <GitBaseResponse <GitRepositorySearchResponse> >(GitSearchType.repositories, searchTerm, sort, order, perPage, pageNumber); result.Result.Should().BeEquivalentTo(response); }