@Override protected String handleSeleneseCommand( WebDriver driver, String attributeLocator, String ignored) { try { return (String) library.executeScript(driver, getAttribute, attributeLocator); } catch (WebDriverException e) { String[] nameAndAttribute = getNameAndAttribute(attributeLocator); WebElement element = finder.findElement(driver, nameAndAttribute[0]); return element.getAttribute(nameAndAttribute[1]); } }
public GetAttribute(JavascriptLibrary library, ElementFinder finder) { this.library = library; this.finder = finder; getAttribute = "return (" + library.getSeleniumScript("getAttribute.js") + ").apply(null, arguments);"; }