Example usage for org.openqa.selenium.support.events EventFiringWebDriver getWrappedDriver

List of usage examples for org.openqa.selenium.support.events EventFiringWebDriver getWrappedDriver

Introduction

In this page you can find the example usage for org.openqa.selenium.support.events EventFiringWebDriver getWrappedDriver.

Prototype

@Override
    public WebDriver getWrappedDriver() 

Source Link

Usage

From source file:ch.vorburger.webdriver.reporting.LoggingWebDriverEventListener.java

License:Apache License

/**
 * This method will take snap shots of screens and save them.
 *
 * @param driver WebDriver/*from  ww  w. java2s  .c om*/
 * @param element WebElement
 * @param log message from the action
 */
protected void logAndTakeSnapShot(WebDriver driver, WebElement element, String log) {
    addStyleBeforeSnapShot(element, driver);

    if (driver instanceof EventFiringWebDriver) {
        EventFiringWebDriver eventFiringWebDriver = (EventFiringWebDriver) driver;
        driver = eventFiringWebDriver.getWrappedDriver();
    }
    if (driver instanceof TakesScreenshot) {
        TakesScreenshot takesScreenshotWebDriver = (TakesScreenshot) driver;
        File srcFile = takesScreenshotWebDriver.getScreenshotAs(OutputType.FILE);
        log(element, log, srcFile);
        removeStyleafterSnapShot(element, driver);
    } else {
        log(element, log, null);
    }
}