/* * Enter text in the textbox */ void IActionsVisitor.visitTextBox(ArcliteTextBox element, InputVal wanted) { string text = wanted.getSelectedVal(); IWebElement input; long number = 0; bool canConvert = long.TryParse(text, out number); if (element._secondXPath == null) { try { input = wait.Until(ExpectedConditions.ElementToBeClickable(By.XPath(element.elementXPath))); new ArcliteButton("", element.elementXPath).accept(this, new InputVal()); } catch (WebDriverTimeoutException) { input = driver.FindElement(By.XPath(element.elementXPath)); } } else { input = wait.Until(ExpectedConditions.ElementToBeClickable(By.XPath(element.elementXPath + wanted.valTwo + element._secondXPath))); new ArcliteButton("", element.elementXPath + wanted.valTwo + element._secondXPath).accept(this, new InputVal()); } if (canConvert) { input.Clear(); input.SendKeys(text); } else { driver.ExecuteJavaScript("arguments[0].value = '" + text + "';", input); } }
/* * gets the value from a textbox */ string IActionsVisitor.getValue(ArcliteTextBox textbox) { IWebElement input; try { input = wait.Until(ExpectedConditions.ElementToBeClickable(By.XPath(textbox.elementXPath))); } catch (WebDriverTimeoutException) { input = driver.FindElement(By.XPath(textbox.elementXPath)); } string res = input.GetAttribute("value"); return(res); }
/* * Enter text in a search box and clicks on search button if there is one */ void IActionsVisitor.visitSearch(ArcliteSearch arcliteSearch, InputVal wanted) { if (arcliteSearch._searchButtonXpath == null) { IArcliteWebElement search = new ArcliteTextBox("", arcliteSearch._searchInputXPath); search.accept(this, wanted); IWebElement webElement; webElement = wait.Until(ExpectedConditions.ElementToBeClickable(By.XPath(search.elementXPath))); webElement.SendKeys(Keys.Enter); } else { IArcliteWebElement search = new ArcliteTextBox("", arcliteSearch._searchInputXPath); search.accept(this, wanted); IArcliteWebElement confirm = new ArcliteButton("", arcliteSearch._searchButtonXpath); confirm.accept(this, new InputVal()); } }