/** * E ~ PRE * * @author acdcjunior * @since 0.10.0 */ CssGeneralAdjacentSelector translateGeneralAdjacent(ArgumentMap argumentMap, SiblingSelector sacSiblingSelector) { CssSelector previousSelector = cssSelectorTranslator.translate(argumentMap, sacSiblingSelector.getSelector()); CssSelector siblingSelector = cssSelectorTranslator.translate(argumentMap, sacSiblingSelector.getSiblingSelector()); return new CssGeneralAdjacentSelector(previousSelector, siblingSelector); }
/** * E ~ PRE * * @author acdcjunior * @since 0.10.0 */ CssGeneralAdjacentSelector translateGeneralAdjacent(ArgumentMap argumentMap, SiblingSelector sacSiblingSelector) { CssSelector previousSelector = cssSelectorTranslator.translate(argumentMap, sacSiblingSelector.getSelector()); CssSelector siblingSelector = cssSelectorTranslator.translate(argumentMap, sacSiblingSelector.getSiblingSelector()); return new CssGeneralAdjacentSelector(previousSelector, siblingSelector); }
@Test public void toElementFinder() { // given CssTagNameSelector aTagSelector = new CssTagNameSelector("a"); CssTagNameSelector bTagSelector = new CssTagNameSelector("b"); CssGeneralAdjacentSelector generalAdjacentSelector = new CssGeneralAdjacentSelector(aTagSelector, bTagSelector); // when ElementFinder elementFinder = generalAdjacentSelector.toElementFinder(createWebDriverDummy()); // then assertThat(elementFinder.toCssString(), is("a~b")); assertThat(elementFinder.canFetchThroughCssAlone(), is(true)); assertThat(elementFinder.getXPathExpression(), is(".//*[self::a]/following-sibling::*[self::b]")); assertThat(elementFinder.getElementFilterList().getElementFilters(), empty()); }