package com.codeborne.selenide.commands;
import com.codeborne.selenide.Command;
import com.codeborne.selenide.SelenideElement;
import com.codeborne.selenide.impl.WebElementSource;
import org.openqa.selenium.WebElement;
import static com.codeborne.selenide.Selenide.open;
public class FollowLink implements Command<Void> {
Click click = new Click();
@Override
public Void execute(SelenideElement proxy, WebElementSource locator, Object[] args) {
WebElement link = locator.getWebElement();
String href = link.getAttribute("href");
click.execute(proxy, locator, args);
// JavaScript $.click() doesn't take effect for <a href>
if (href != null) {
open(href);
}
return null;
}
}