1 package com.atlassian.webdriver.browsers;
2
3 import com.atlassian.browsers.BrowserAutoInstaller;
4 import com.atlassian.browsers.BrowserConfig;
5 import com.atlassian.browsers.BrowserConfiguration;
6 import com.atlassian.browsers.InstallConfigurator;
7
8 import javax.annotation.Nonnull;
9 import java.util.concurrent.atomic.AtomicReference;
10
11
12
13
14 public class AutoInstallConfiguration
15 {
16
17
18
19 public static BrowserConfig setupBrowser()
20 {
21 return setupBrowser(new WebDriverBrowserConfiguration());
22 }
23
24
25
26
27 public static BrowserConfig setupBrowser(final BrowserConfiguration browserConfiguration)
28 {
29 final AtomicReference<BrowserConfig> ref = new AtomicReference<BrowserConfig>();
30 final BrowserAutoInstaller browserAutoInstaller = new BrowserAutoInstaller(browserConfiguration, new InstallConfigurator()
31 {
32 @Override
33 public void setupBrowser(@Nonnull BrowserConfig browserConfig)
34 {
35 ref.set(browserConfig);
36 }
37
38 @Override
39 public void setupFirefoxBrowser(final BrowserConfig browserConfig)
40 {
41 System.setProperty("webdriver.firefox.bin", browserConfig.getBinaryPath());
42 }
43
44 @Override
45 public void setupChromeBrowser(final BrowserConfig browserConfig)
46 {
47 System.setProperty("webdriver.chrome.bin", browserConfig.getBinaryPath());
48 }
49 });
50 browserAutoInstaller.setupBrowser();
51 return ref.get();
52 }
53
54 }