Example #1
0
        private static void SelectTranslatedLanguage(
            TranslateLanguages translatedLanguage,
            RemoteWebDriver driver)
        {
            var lang     = EnumParser.GetString(translatedLanguage);
            var langItem = By.XPath(
                $"//*[contains(text(), '{lang}')]");

            try
            {
                driver.FindElement(langItem);
            }
            catch (NoSuchElementException)
            {
                var moreButton = driver.FindElementById("gt-tl-gms");
                moreButton.Click();

                try
                {
                    var traits = new List <By>
                    {
                        langItem,
                        By.ClassName("goog-menuitem-content")
                    };
                    var langOption = driver.FindElementByTraits(traits);
                    langOption.Click();
                }
                catch (NoSuchElementException)
                {
                    driver.Quit();
                    TranslateEvent.OnTranslateFailed();
                }
            }
        }