public void InitializeParser() { parser = new GoogleParser(); path = @"./../../data/ko.csv"; path = Path.GetFullPath(path); Assert.NotNull(parser); }
public void ValidUrl_ValidKeyword() { IParser l_Parser = new GoogleParser(new HttpManager()); var l_Result = l_Parser.FindTopPosition("http://www.espncricinfo.com", "cricket", 100); Assert.AreEqual(1, l_Result.Count); }
public void InvalidUrl_ValidKeyword() { IParser l_Parser = new GoogleParser(new HttpManager()); var l_Result = l_Parser.FindTopPosition("invalidURL", "xya", 100); Assert.AreEqual(0, l_Result.Count); }
public void ParseSearchResultForRanks_EmptyResult_Returns0() { // Arrange var searchResult = ""; var url = "www.smokeball.com.au"; var service = new GoogleParser(); // Act var result = service.ParseSearchResultForRanks(searchResult, url); // Assert Assert.AreEqual("0", result); }
public void ParseSearchResultForRanks_MultipleRanksFound_ReturnsCorrectly() { // Arrange var searchResult = TestHelper.GetTextFromFile("GoogleSearchResultForConveyancingSoftware.txt"); var url = "globalx.com.au"; var service = new GoogleParser(); // Act var result = service.ParseSearchResultForRanks(searchResult, url); // Assert Assert.AreEqual("6, 7", result); }
public void ParseSearchResultForRanks_NoRanksFound_Returns0() { // Arrange var searchResult = TestHelper.GetTextFromFile("GoogleSearchResultForConveyancingSoftware.txt"); var url = "www.yahoo.com"; var service = new GoogleParser(); // Act var result = service.ParseSearchResultForRanks(searchResult, url); // Assert Assert.AreEqual("0", result); }
public void Parser() { // Arrange IParser l_Parser = new GoogleParser(new HttpManager()); string l_SiteURL = "http://www.espncricinfo.com"; string l_Keyword = "cricket"; HomeController l_Controller = new HomeController(l_Parser); // Act ViewResult l_Result = l_Controller.Parser(l_SiteURL, l_Keyword) as ViewResult; // Assert Assert.IsNotNull(l_Result); }
public void GoogleSearchService_ReturnsError_WithSearchException() { // Arrange var keywords = "conveyancing software"; var url = "www.smokeball.com.au"; var searcher = new Mock <ISearchEngineSearcher>(); searcher.Setup(s => s.GetSearchResult(It.IsAny <string>())).Throws(new Exception("Exception in Searcher")); var parser = new GoogleParser(); var service = new GoogleSearchService(searcher.Object, parser); // Act var result = service.GetSearchRanks(keywords, url); // Assert Assert.AreEqual("Error with Google Search results: Exception in Searcher", result); }
public void GoogleSearchService_ReturnsOK_ValidData() { // Arrange var keywords = "conveyancing software"; var url = "www.smokeball.com.au"; var searcher = new Mock <ISearchEngineSearcher>(); searcher.Setup(s => s.GetSearchResult(It.IsAny <string>())).Returns(TestHelper.GetTextFromFile("GoogleSearchResultForConveyancingSoftware.txt")); var parser = new GoogleParser(); var service = new GoogleSearchService(searcher.Object, parser); // Act var result = service.GetSearchRanks(keywords, url); // Assert Assert.AreEqual("3", result); }
public async Task<wordInfo> getWord(string word) { wordInfo WI = new wordInfo(); var c = await new HttpClient().GetStringAsync(Constants.GoogleGetWord + word); GoogleParser gp = new GoogleParser(c, word); WI.word = word; WI.definition = gp.OUTPUT.definition; WI.partOfSpeech = gp.OUTPUT.partOfSpeech; WI.pronunciation = gp.OUTPUT.pronunciation; if (MANAGER.GetSynonyms) { var t = await new HttpClient().GetStringAsync(Constants.ThesarusGetSynAnt + word); ThesaurusParser tp = new ThesaurusParser(t); WI.synonyms = tp.syns; WI.antonyms = tp.ants; } return WI; }
private async Task Worker(TelegramBotClient client, long chatId) { bool forloop = true; string GoogleVersion = string.Empty, FpdaVersion = null; for (int i = 1; forloop; i++) { var source = await Dloader.GetSourceById(i); if (source == default) { forloop = false; } var domParser = new HtmlParser(); var document = await domParser.ParseDocumentAsync(source); var urls = dparser.GetAppUrls(document); foreach (var url in urls) { string DropGameVersion = null, DropGameName = null, ApkVersion = "0"; try { source = await GPloader.GetSourceBylink(url); document = await domParser.ParseDocumentAsync(source); DropGameName = dparser.GetName(document); DropGameVersion = dparser.GetVersion(document); if (MissGames.Contains(DropGameName)) { continue; } if (Games.Contains(DropGameName)) { await client.SendTextMessageAsync(chatId, $"Солнце, эту игру нужно посмотреть самостоятельно\n{url}"); continue; } //string engname = await GoogleParser.GetEngNameAsync(DropGameName); string engname = DropGameName; SearchResult result = await GoogleParser.GetResultAsync(engname); source = await GoogleParser.GetResult(engname); document = await domParser.ParseDocumentAsync(source); string urlstr = googleparser.GetAppUrl(document, engname); try { string appUrl = await GetUrlApp(DropGameName); GoogleVersion = await GetVersionAsync(appUrl); } catch (NullReferenceException) { Console.WriteLine("NullReferenceException"); } if (result != null && result.Title.StartsWith(engname)) { source = await GPloader.GetSourceBylink(result.Link.ToString()); document = await domParser.ParseDocumentAsync(source); string version = fpdaparser.GetVersion(document); if (version is null) { break; } FpdaVersion = version; } source = await ApkLoader.GetSourceByName(DropGameName); document = await domParser.ParseDocumentAsync(source); string apkurl = apkParser.GetUrl(document, DropGameName); if (apkurl is null) { Console.WriteLine("url is null"); } else { source = await GPloader.GetSourceBylink("https://apkcombo.com" + apkurl); document = await domParser.ParseDocumentAsync(source); ApkVersion = apkParser.GetVersion(document); } } catch (Exception e) { Console.WriteLine(e.Message); Console.WriteLine("With name " + DropGameName); } string str = string.Empty; DropGameVersion = ChangeVersion(DropGameVersion); GoogleVersion = ChangeVersion(GoogleVersion); ApkVersion = ChangeVersion(ApkVersion); Console.WriteLine(DropGameName); Console.WriteLine($"{DropGameVersion} {GoogleVersion} {ApkVersion} {FpdaVersion}"); string Version; if (FpdaVersion == null) { Version = CompareVersion(ApkVersion, GoogleVersion); } else { FpdaVersion = ChangeVersion(FpdaVersion); Version = CompareVersion(FpdaVersion, GoogleVersion); Version = CompareVersion(Version, ApkVersion); } if (DropGameVersion == Version) { Console.WriteLine(Version); Console.WriteLine(new string('-', 30)); } else { str = $"{DropGameName} {DropGameVersion} -- {Version}\n{url}"; } if (str != string.Empty) { Console.WriteLine(Version); Console.WriteLine(new string('-', 30)); await Send_NewData(client, chatId, str); } } } await Parser_OnCompleted(client, chatId); }
public async Task Should_Intersect_Request() { var parser = new GoogleParser(); await parser.RequestPageWithSearch(); }
public async Task Should_Open_GoogleSearsh() { var parser = new GoogleParser(); await parser.GetSearchPage(); }
public async Task Should_Get_ScreenShot() { var parser = new GoogleParser(); await parser.GetScreenShot(); }
public GoogleParserTests() { _sut = new GoogleParser(); }