@Override public ElementFinder toElementFinder(WebDriver webDriver) { XPathAndFilterFinder xPathAndFilterFinder = new XPathAndFilterFinder(toXPath(), ElementFilterList.FILTER_NOTHING_LIST) { @Override public String getXPathExpression() { return ".//*[" + getRawXPathExpression() + "]"; } }; return new ElementFinder(webDriver, toCSS(), xPathAndFilterFinder); }
@Override public ElementFinder toElementFinder(WebDriver webDriver) { XPathAndFilterFinder xPathAndFilterFinder = new XPathAndFilterFinder(toXPath(), ElementFilterList.FILTER_NOTHING_LIST) { @Override public String getXPathExpression() { return ".//*[" + getRawXPathExpression() + "]"; } }; return new ElementFinder(webDriver, toCSS(), xPathAndFilterFinder); }
default ElementFinder __createFinderForUnsupportedPseudo(ElementFinder leftFinder, WebDriver webDriver) { return new ElementFinder( webDriver, CSS_NOT_NATIVELY_SUPPORTED, leftFinder.getXPathAndFilterFinder().merge(toXPath(webDriver), xPathMergeStrategy()) ); }
default ElementFinder __createFinderForUnsupportedPseudo(ElementFinder leftFinder, WebDriver webDriver) { return new ElementFinder( webDriver, CSS_NOT_NATIVELY_SUPPORTED, leftFinder.getXPathAndFilterFinder().merge(toXPath(webDriver), xPathMergeStrategy()) ); }
@Override public ElementFinder toElementFinder(WebDriver webDriver) { ElementFinder leftSideElementFinder = leftSideSelector.toElementFinder(webDriver); CssFinder combinatorFinder = leftSideElementFinder.getCssFinder().combineAsLeftPart(this.cssCombinator); ElementFinder intermediateFinder = new ElementFinder(combinatorFinder, leftSideElementFinder.getXPathExpression() + this.xPathCombinator, leftSideElementFinder); return rightSideSelector.toElementFinder(intermediateFinder); }
@Override public ElementFinder toElementFinder(WebDriver webDriver) { ElementFinder leftSideElementFinder = leftSideSelector.toElementFinder(webDriver); CssFinder combinatorFinder = leftSideElementFinder.getCssFinder().combineAsLeftPart(this.cssCombinator); ElementFinder intermediateFinder = new ElementFinder(combinatorFinder, leftSideElementFinder.getXPathExpression() + this.xPathCombinator, leftSideElementFinder); return rightSideSelector.toElementFinder(intermediateFinder); }
public static ElementFinder universalSelectorFinder(WebDriver driver) { return new ElementFinder(driver, universalSelector(), pureXPath(".//*[true()]")); }
@Override public ElementFinder toElementFinder(ElementFinder leftFinder) { CssFinder newCssSelector = leftFinder.getCssFinder().merge(toCSS()); String newXPathExpression = ElementFinderUtils.conditionalSimpleXPathMerge(leftFinder.getXPathExpression(), toXPath()); return new ElementFinder(newCssSelector, newXPathExpression, leftFinder); }
@Override public ElementFinder toElementFinder(ElementFinder leftFinder) { CssFinder newCssSelector = leftFinder.getCssFinder().merge(toCSS()); String newXPathExpression = ElementFinderUtils.conditionalSimpleXPathMerge(leftFinder.getXPathExpression(), toXPath()); return new ElementFinder(newCssSelector, newXPathExpression, leftFinder); }
@Override public ElementFinder toElementFinder(ElementFinder leftFinder) { CssFinder newCssSelector = leftFinder.getCssFinder().merge(toCSS()); String newXPathExpression = ElementFinderUtils.conditionalSimpleXPathMerge(leftFinder.getXPathExpression(), toXPath()); return new ElementFinder(newCssSelector, newXPathExpression, leftFinder); }
@Override public ElementFinder toElementFinder(ElementFinder leftFinder) { CssFinder combinedCssSelector = leftFinder.getCssFinder().merge(toCSS()); String combinedXPathExp = ElementFinderUtils.conditionalSimpleXPathMerge(leftFinder.getXPathExpression(), toXPath()); return new ElementFinder(combinedCssSelector, combinedXPathExp, leftFinder); }
@Override public ElementFinder toElementFinder(ElementFinder leftFinder) { CssFinder newCssSelector = leftFinder.getCssFinder().merge(toCSS()); String newXPathExpression = ElementFinderUtils.conditionalSimpleXPathMerge(leftFinder.getXPathExpression(), toXPath()); return new ElementFinder(newCssSelector, newXPathExpression, leftFinder); }
@Override public ElementFinder toElementFinder(ElementFinder leftFinder) { CssFinder combinedCssSelector = leftFinder.getCssFinder().merge(toCSS()); String combinedXPathExp = ElementFinderUtils.conditionalSimpleXPathMerge(leftFinder.getXPathExpression(), toXPath()); return new ElementFinder(combinedCssSelector, combinedXPathExp, leftFinder); }
@Override public ElementFinder toElementFinder(ElementFinder leftFinder) { CssFinder newCssSelector = leftFinder.getCssFinder().merge(toCSS()); String newXPathExpression = ElementFinderUtils.conditionalSimpleXPathMerge(leftFinder.getXPathExpression(), toXPath()); return new ElementFinder(newCssSelector, newXPathExpression, leftFinder); }
@Override public ElementFinder toElementFinder(ElementFinder leftFinder) { CssFinder newCssSelector = leftFinder.getCssFinder().merge(toCSS()); String newXPathExpression = ElementFinderUtils.conditionalSimpleXPathMerge(leftFinder.getXPathExpression(), toXPath()); return new ElementFinder(newCssSelector, newXPathExpression, leftFinder); }
default ElementFinder __createFinderForNativelySupportedPseudo(ElementFinder leftFinder, WebDriver webDriver) { return new ElementFinder( webDriver, leftFinder.getCssFinder().merge(toCssWhenNativelySupported(webDriver)), leftFinder.getXPathAndFilterFinder().merge(toXPath(webDriver), xPathMergeStrategy()) ); }
default ElementFinder __createFinderForNativelySupportedPseudo(ElementFinder leftFinder, WebDriver webDriver) { return new ElementFinder( webDriver, leftFinder.getCssFinder().merge(toCssWhenNativelySupported(webDriver)), leftFinder.getXPathAndFilterFinder().merge(toXPath(webDriver), xPathMergeStrategy()) ); }
@Test public void toCssString() { CssFinder cssFinder = new CssFinder("a", "b", "c"); ElementFinder elementFinder = new ElementFinder(null, cssFinder, null); assertEquals(cssFinder.toString(), elementFinder.toCssString()); }