private void PrintResults(SearchFightResult result)
        {
            if (result != null)
            {
                for (int i = 0; i < result.SearchEngineValueResults.Count; i++)
                {
                    Console.WriteLine($"\nSearched value: {result.SearchEngineValueResults[i].Value}");
                    for (int j = 0; j < result.SearchEngineValueResults[i].SearchEngineMatchResults.Count; j++)
                    {
                        Console.WriteLine($"    {result.SearchEngineValueResults[i].SearchEngineMatchResults[j].TotalNumberMatches} - {result.SearchEngineValueResults[i].SearchEngineMatchResults[j].SearchEngineName}");
                    }
                }
                Console.WriteLine("\nWinners:");
                Console.WriteLine($"Google winner: {result.GoogleWinner}");
                Console.WriteLine($"Bing winner: {result.BingWinner}");
                Console.WriteLine($"Total winner: {result.TotalWinner}");

                Console.ReadLine();
            }
            else
            {
                Console.WriteLine("Something is wrong");
                Console.ReadLine();
            }
        }
예제 #2
0
        public SearchFightResult GetResult(IList <string> values)
        {
            var searchFightResult = new SearchFightResult
            {
                SearchEngineValueResults = SearchValues(values)
            };

            searchFightResult.GoogleWinner = GetWinnerBySearchEngine(SearchEngineEnums.Google, searchFightResult);
            searchFightResult.BingWinner   = GetWinnerBySearchEngine(SearchEngineEnums.Bing, searchFightResult);
            GetTotalWinner(searchFightResult);

            return(searchFightResult);
        }
예제 #3
0
        private void GetTotalWinner(SearchFightResult searchFightResult)
        {
            var totalWinner = searchFightResult.SearchEngineValueResults[0];

            for (int i = 1; i < searchFightResult.SearchEngineValueResults.Count; i++)
            {
                if (searchFightResult.SearchEngineValueResults[i].TotalMatches > totalWinner.TotalMatches)
                {
                    totalWinner = searchFightResult.SearchEngineValueResults[i];
                }
            }

            searchFightResult.TotalWinner = totalWinner.Value;
        }
예제 #4
0
        private string GetWinnerBySearchEngine(SearchEngineEnums searchEngine, SearchFightResult searchFightResult)
        {
            var maxBingResult = searchFightResult.SearchEngineValueResults[0];

            for (int i = 1; i < searchFightResult.SearchEngineValueResults.Count; i++)
            {
                for (int j = 0; j < searchFightResult.SearchEngineValueResults[i].SearchEngineMatchResults.Count; j++)
                {
                    if (searchFightResult.SearchEngineValueResults[i].SearchEngineMatchResults[j].SearchEngineId == (int)searchEngine)
                    {
                        if (searchFightResult.SearchEngineValueResults[i].SearchEngineMatchResults[j].TotalNumberMatches > GetMatchBySearchEngine(searchEngine, maxBingResult.SearchEngineMatchResults).TotalNumberMatches)
                        {
                            maxBingResult = searchFightResult.SearchEngineValueResults[i];
                        }
                    }
                }
            }

            return(maxBingResult.Value);
        }