Example usage for org.openqa.selenium.remote BrowserType SAFARI

List of usage examples for org.openqa.selenium.remote BrowserType SAFARI

Introduction

In this page you can find the example usage for org.openqa.selenium.remote BrowserType SAFARI.

Prototype

String SAFARI

To view the source code for org.openqa.selenium.remote BrowserType SAFARI.

Click Source Link

Usage

From source file:com.ariatemplates.seleniumjavarobot.LocalRobotizedBrowserFactory.java

License:Apache License

public static LocalRobotizedBrowserFactory createRobotizedWebDriverFactory(String browser) {
    if (BrowserType.FIREFOX.equalsIgnoreCase(browser)) {
        FirefoxProfile firefoxProfile = null;
        String firefoxProfileProperty = System.getProperty("webdriver.firefox.profile");
        if (firefoxProfileProperty == null) {
            ProfilesIni allProfiles = new ProfilesIni();
            // Use the default profile to make extensions available,
            // and especially to ease debugging with Firebug
            firefoxProfile = allProfiles.getProfile("default");
        }/*from w  w  w. j  a  va 2s. co m*/
        return new LocalFirefox(firefoxProfile);
    } else if (BrowserType.SAFARI.equalsIgnoreCase(browser)) {
        return new LocalSafari();
    } else if (BrowserType.CHROME.equalsIgnoreCase(browser)) {
        return new LocalBrowser<ChromeDriver>(ChromeDriver.class);
    } else if ("chrome-debug".equalsIgnoreCase(browser)) {
        return new LocalDebuggableChrome();
    } else if (BrowserType.IE.equalsIgnoreCase(browser)) {
        return new LocalBrowser<InternetExplorerDriver>(InternetExplorerDriver.class);
    } else {
        throw new RuntimeException("Unknown browser value: " + browser);
    }

}

From source file:com.comcast.magicwand.builders.PhoenixDriverIngredients.java

License:Apache License

/**
 * Gets browser type required for the test
 *
 * @return Name of the browser/*from www . jav  a  2 s  .c o  m*/
 */
public String getBrowser() {
    if (null != this.browserType && !this.browserType.trim().isEmpty()) {
        return browserType;
    }

    switch (getDesktopOS().getType()) {
    case MAC:
        this.browserType = BrowserType.SAFARI;
        break;
    case WINDOWS:
        this.browserType = BrowserType.IE;
        break;
    default:
        this.browserType = BrowserType.CHROME;

    }
    return browserType;
}

From source file:com.comcast.magicwand.builders.PhoenixDriverIngredientsTest.java

License:Apache License

@DataProvider(name = "Configurations")
public Object[][] generateMacConfigs() {
    DesktopOS mac = new DesktopOS(OSType.MAC);
    DesktopOS linux = new DesktopOS(OSType.LINUX);
    DesktopOS win = new DesktopOS(OSType.WINDOWS);
    MobileOS iphone = new MobileOS(OSType.IPHONE);
    MobileOS android = new MobileOS(OSType.ANDROID);

    OSType expectedOS;//from  ww w .java  2  s.  c  om
    DesktopOS dynamicOS;
    String dynamicBrowser;
    if (SystemDetail.deviceIsLinux()) {
        expectedOS = OSType.LINUX;
        dynamicOS = linux;
        dynamicBrowser = BrowserType.CHROME;
    } else if (SystemDetail.deviceIsRunningMac()) {
        expectedOS = OSType.MAC;
        dynamicOS = mac;
        dynamicBrowser = BrowserType.SAFARI;
    } else if (SystemDetail.deviceIsRunningWindows()) {
        expectedOS = OSType.WINDOWS;
        dynamicOS = win;
        dynamicBrowser = BrowserType.IE;
    } else {
        expectedOS = null;
        dynamicBrowser = null;
        dynamicOS = null;
    }

    return new Object[][] {
            // fields are:
            // Desktop OS, Mobile OS, Browser Type, expected OS, expected Mobile, expected browser
            // @formatter:off
            new Object[] { dynamicOS, null, null, expectedOS, null, dynamicBrowser },
            new Object[] { mac, null, null, OSType.MAC, null, BrowserType.SAFARI },
            new Object[] { mac, null, BrowserType.FIREFOX, OSType.MAC, null, BrowserType.FIREFOX },
            new Object[] { mac, iphone, BrowserType.SAFARI, OSType.MAC, OSType.IPHONE, BrowserType.SAFARI },
            new Object[] { mac, android, BrowserType.CHROME, OSType.MAC, OSType.ANDROID, BrowserType.CHROME },
            new Object[] { linux, null, null, OSType.LINUX, null, BrowserType.CHROME },
            new Object[] { win, null, null, OSType.WINDOWS, null, BrowserType.IE }
            // @formatter:on
    };
}

From source file:com.comcast.magicwand.builders.PhoenixDriverIngredientsTest.java

License:Apache License

@DataProvider(name = "defaultIngredients")
public Iterator<Object[]> osGenerator() {
    return new ArrayList<Object[]>() {
        {/*from  w  w  w  .j av a2  s.  c o m*/
            // @formatter:off
            add(new Object[] { OSType.MAC, BrowserType.SAFARI });
            add(new Object[] { OSType.LINUX, BrowserType.CHROME });
            add(new Object[] { OSType.WINDOWS, BrowserType.IE });
            add(new Object[] { OSType.UNIX, BrowserType.CHROME });
        }
        // @formatter:on

    }.iterator();
}

From source file:com.comcast.magicwand.builders.PhoenixDriverIngredientsTest.java

License:Apache License

@DataProvider(name = "validation")
public Iterator<Object[]> generateValidation() {
    return new ArrayList<Object[]>() {
        {/*from   ww w .ja va  2  s  .  c  o m*/
            DesktopOS win = new DesktopOS(OSType.WINDOWS);
            DesktopOS mac = new DesktopOS(OSType.MAC);
            MobileOS iphone = new MobileOS(OSType.IPHONE);
            MobileOS ipad = new MobileOS(OSType.IPAD);
            MobileOS android = new MobileOS(OSType.ANDROID);

            // desktop os, mobile os, browser type, is null?
            // @formatter:off
            add(new Object[] { mac, null, "", true });
            add(new Object[] { mac, null, BrowserType.IE, false });
            add(new Object[] { win, iphone, null, false });
            add(new Object[] { win, ipad, null, false });
            add(new Object[] { win, iphone, null, false });
            add(new Object[] { win, android, null, false });
            add(new Object[] { mac, ipad, BrowserType.CHROME, false });
            add(new Object[] { mac, ipad, null, false });
            add(new Object[] { mac, ipad, BrowserType.SAFARI, false });
            add(new Object[] { mac, android, BrowserType.SAFARI, false });
            add(new Object[] { mac, android, BrowserType.CHROME, false });
            // @formatter:on
        }
    }.iterator();
}

From source file:com.comcast.magicwand.wizards.AbstractWizard.java

License:Apache License

/**
 * Creates default desired capabilities based on a device type
 *//*from  w  w  w  . jav  a  2 s  .  co  m*/
protected void createCapabilities() {
    DesiredCapabilities curCaps = null;
    if (isMobile()) {
        OSType mos = this.mobileOS.getType();
        switch (mos) {
        case ANDROID:
            curCaps = DesiredCapabilities.android();
            break;
        case IPAD:
            curCaps = DesiredCapabilities.ipad();
            break;
        case IPHONE:
            curCaps = DesiredCapabilities.iphone();
            break;
        default:
            // nothing to do here
            break;
        }
    } else {
        if (BrowserType.FIREFOX.equals(browserType)) {
            curCaps = DesiredCapabilities.firefox();
        } else if (BrowserType.SAFARI.equals(browserType)) {
            curCaps = DesiredCapabilities.safari();
        } else if (BrowserType.IE.equals(browserType)) {
            curCaps = DesiredCapabilities.internetExplorer();
        } else if (BrowserType.CHROME.equals(browserType)) {
            curCaps = DesiredCapabilities.chrome();
        }
    }

    // we need to iterate over each capability because
    // method DesiredCapabilities#merge is invoking
    // HashMap#putAll method which overwrites entries
    DesiredCapabilities iDc = ingredients.getDriverCapabilities();
    for (Entry<String, ?> cap : curCaps.asMap().entrySet()) {
        if (null == iDc.getCapability(cap.getKey())) {
            iDc.setCapability(cap.getKey(), cap.getValue());
        }
    }
}

From source file:com.consol.citrus.selenium.endpoint.SeleniumBrowser.java

License:Apache License

/**
 * Creates local web driver./*from ww  w.ja  v a  2s  . co  m*/
 * @param browserType
 * @return
 */
private WebDriver createLocalWebDriver(String browserType) {
    switch (browserType) {
    case BrowserType.FIREFOX:
        FirefoxProfile firefoxProfile = getEndpointConfiguration().getFirefoxProfile();

        /* set custom download folder */
        firefoxProfile.setPreference("browser.download.dir", temporaryStorage.toFile().getAbsolutePath());

        DesiredCapabilities defaults = DesiredCapabilities.firefox();
        defaults.setCapability(FirefoxDriver.PROFILE, firefoxProfile);
        return new FirefoxDriver(defaults);
    case BrowserType.IE:
        return new InternetExplorerDriver();
    case BrowserType.EDGE:
        return new EdgeDriver();
    case BrowserType.SAFARI:
        return new SafariDriver();
    case BrowserType.CHROME:
        return new ChromeDriver();
    case BrowserType.GOOGLECHROME:
        return new ChromeDriver();
    case BrowserType.HTMLUNIT:
        BrowserVersion browserVersion = null;
        if (getEndpointConfiguration().getVersion().equals("FIREFOX")) {
            browserVersion = BrowserVersion.FIREFOX_45;
        } else if (getEndpointConfiguration().getVersion().equals("INTERNET_EXPLORER")) {
            browserVersion = BrowserVersion.INTERNET_EXPLORER;
        } else if (getEndpointConfiguration().getVersion().equals("EDGE")) {
            browserVersion = BrowserVersion.EDGE;
        } else if (getEndpointConfiguration().getVersion().equals("CHROME")) {
            browserVersion = BrowserVersion.CHROME;
        }

        HtmlUnitDriver htmlUnitDriver;
        if (browserVersion != null) {
            htmlUnitDriver = new HtmlUnitDriver(browserVersion);
        } else {
            htmlUnitDriver = new HtmlUnitDriver();
        }
        htmlUnitDriver.setJavascriptEnabled(getEndpointConfiguration().isJavaScript());
        return htmlUnitDriver;
    default:
        throw new CitrusRuntimeException("Unsupported local browser type: " + browserType);
    }
}

From source file:com.github.licanhua.test.framework.DefaultWebDriverProvider.java

License:Apache License

private static String getBrowserName(DesiredCapabilities cap) {
    String browserString = cap.getBrowserName();
    if (browserString == null || "".equals(browserString)) {
        return "missingBrowserName";
    }//ww w.  ja  va  2 s.  com

    String ret = browserString;

    // Map browser environments to icon names.
    if (browserString.contains("iexplore") || browserString.startsWith("*iehta")) {
        ret = BrowserType.IE;
    } else if (browserString.contains("firefox") || browserString.startsWith("*chrome")) {
        if (cap.getVersion() != null && cap.getVersion().toLowerCase().equals("beta")
                || cap.getBrowserName().toLowerCase().contains("beta")) {
            ret = "firefoxbeta";
        } else if (cap.getVersion() != null && cap.getVersion().toLowerCase().equals("aurora")
                || cap.getBrowserName().toLowerCase().contains("aurora")) {
            ret = "aurora";
        } else if (cap.getVersion() != null && cap.getVersion().toLowerCase().equals("nightly")
                || cap.getBrowserName().toLowerCase().contains("nightly")) {
            ret = "nightly";
        } else {
            ret = BrowserType.FIREFOX;
        }

    } else if (browserString.startsWith("*safari")) {
        ret = BrowserType.SAFARI;
    } else if (browserString.startsWith("*googlechrome")) {
        ret = BrowserType.CHROME;
    } else if (browserString.startsWith("opera")) {
        ret = BrowserType.OPERA;
    } else if (browserString.toLowerCase().contains("edge")) {
        ret = BrowserType.EDGE;
    }

    return ret; //ret.replace(" ", "_");
}

From source file:com.monstrenyatko.desert.util.WebDriverFactory.java

License:MIT License

private static WebDriver createLocalDriver(Capabilities capabilities) {
    String browserType = capabilities.getBrowserName();
    if (browserType.equals(BrowserType.FIREFOX))
        return new FirefoxDriver(capabilities);
    if (browserType.equals(BrowserType.IE))
        return new InternetExplorerDriver(capabilities);
    if (browserType.equals(BrowserType.CHROME))
        return new ChromeDriver(capabilities);
    if (browserType.equals(BrowserType.SAFARI))
        return new SafariDriver(capabilities);

    throw new Error("Unsupported browser type: " + browserType);
}

From source file:com.rmn.qa.servlet.AutomationTestRunServletTest.java

License:Open Source License

@Test
// Tests a request cannot be fulfilled when the browser is not a supported browser to spin up
public void testRequestCantFulfillUnsupportedBrowser() throws IOException, ServletException {
    MockVmManager manageEc2 = new MockVmManager();
    MockRequestMatcher matcher = new MockRequestMatcher();
    matcher.setThreadsToReturn(0);/* w  ww.j  ava 2 s  .  com*/
    MockAutomationTestRunServlet servlet = new MockAutomationTestRunServlet(null, false, manageEc2, matcher);
    MockHttpServletRequest request = new MockHttpServletRequest();
    request.setParameter("uuid", "testUuid");
    request.setParameter("browser", BrowserType.SAFARI.toString());
    request.setParameter("os", Platform.WINDOWS.toString());
    request.setParameter("threadCount", "7");
    String nodeId = "nodeId";
    // Add a node that is not running to make sure its not included in the available calculation
    AutomationDynamicNode node = new AutomationDynamicNode("testUuid", nodeId, null, null, new Date(), 50);
    AutomationContext.getContext().addNode(node);
    ProxySet proxySet = new ProxySet(false);
    MockRemoteProxy proxy = new MockRemoteProxy();
    proxy.setMaxNumberOfConcurrentTestSessions(50);
    proxy.setCapabilityMatcher(new AutomationCapabilityMatcher());
    Map<String, Object> config = new HashMap<String, Object>();
    config.put(AutomationConstants.INSTANCE_ID, nodeId);
    proxy.setConfig(config);
    Map<String, Object> capabilities = new HashMap<String, Object>();
    capabilities.put(CapabilityType.BROWSER_NAME, "chrome");
    TestSlot testSlot = new TestSlot(proxy, SeleniumProtocol.WebDriver, null, capabilities);
    proxy.setMultipleTestSlots(testSlot, 10);
    proxySet.add(proxy);
    servlet.setProxySet(proxySet);
    AutomationContext.getContext().setTotalNodeCount(50);
    MockHttpServletResponse response = new MockHttpServletResponse();
    servlet.doGet(request, response);
    Assert.assertEquals("Hub should not be able to fulfill request", HttpServletResponse.SC_GONE,
            response.getErrorCode());
}