public WithText(String elementText) { super(".//*/text()[contains(" + NORMALIZE_SPACE_XPATH + ", " + Quotes.escape(elementText) + ")]/parent::*"); this.elementText = elementText; }
public ByText(String elementText) { super(".//*/text()[" + NORMALIZE_SPACE_XPATH + " = " + Quotes.escape(elementText) + "]/parent::*"); this.elementText = elementText; }
@Override public Void execute(SelenideElement proxy, WebElementSource selectField, Object[] args) { String text = (String) args[0]; WebElement element = selectField.getWebElement(); Select select = new Select(element); List<WebElement> options = element.findElements(By.xpath( ".//option[contains(normalize-space(.), " + Quotes.escape(text) + ")]")); if (options.isEmpty()) { throw new NoSuchElementException("Cannot locate option containing text: " + text); } for (WebElement option : options) { setSelected(option); if (!select.isMultiple()) { break; } } return null; }
public static By findByToBy(ByText locator){ if (locator == null) return null; return By.xpath(".//*/text()[normalize-space(.) = " + Quotes.escape(locator.value()) + "]/parent::*"); } public static By findByToBy(WithText locator){
public static By findByToBy(ByText locator){ if (locator == null) return null; return By.xpath(".//*/text()[contains(normalize-space(.), "+ Quotes.escape(locator.value())+")]/parent::*"); }
public static By findByToBy(WithText locator){ if (locator == null) return null; return By.xpath(".//*/text()[contains(normalize-space(.), "+ Quotes.escape(locator.value())+")]/parent::*"); }
public static By findByToBy(ByText locator){ if (locator == null) return null; return By.xpath(".//*/text()[contains(normalize-space(.), "+ Quotes.escape(locator.value())+")]/parent::*"); }
public static By getFrame(Frame frame) { if (frame == null) return null; if (!"".equals(frame.value())) return By.id(frame.value()); if (!"".equals(frame.xpath())) return By.xpath(frame.xpath()); if (!"".equals(frame.css())) return By.cssSelector(frame.css()); if (!"".equals(frame.linkText())) return By.linkText(frame.linkText()); if (!"".equals(frame.partialLinkText())) return By.partialLinkText(frame.partialLinkText()); if (!"".equals(frame.tagName())) return By.tagName(frame.tagName()); if (!"".equals(frame.text())) return By.xpath(".//*/text()[normalize-space(.) = " + Quotes.escape(frame.text()) + "]/parent::*"); if (!"".equals(frame.id())) return By.id(frame.id()); if (!"".equals(frame.className())) return By.className(frame.className()); if (!"".equals(frame.name())) return By.name(frame.name()); return null; }
public static By findByToBy(FindBy locator) { if (locator == null) return null; if (!"".equals(locator.xpath())) return By.xpath(locator.xpath()); if (!"".equals(locator.css())) return By.cssSelector(locator.css()); if (!"".equals(locator.linkText())) return By.linkText(locator.linkText()); if (!"".equals(locator.partialLinkText())) return By.partialLinkText(locator.partialLinkText()); if (!"".equals(locator.tagName())) return By.tagName(locator.tagName()); if (!"".equals(locator.text())) return By.xpath(".//*/text()[normalize-space(.) = " + Quotes.escape(locator.text()) + "]/parent::*"); if (!"".equals(locator.id())) return By.id(locator.id()); if (!"".equals(locator.className())) return By.className(locator.className()); if (!"".equals(locator.name())) return By.name(locator.name()); return null; }
Quotes.escape(locator.text()) + "]/parent::*");
Quotes.escape(locator.text()) + "]/parent::*");