Skip to content

Commit d289954

Browse files
committed
Adding another test for SafariDriver constructor
1 parent 9c4f94c commit d289954

File tree

2 files changed

+35
-18
lines changed

2 files changed

+35
-18
lines changed

java/client/test/org/openqa/selenium/safari/TechnologyPreviewTest.java renamed to java/client/test/org/openqa/selenium/safari/SafariDriverTest.java

Lines changed: 34 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -21,41 +21,58 @@
2121
import static org.junit.Assert.assertEquals;
2222
import static org.junit.Assume.assumeTrue;
2323

24-
import org.junit.Before;
24+
import org.junit.After;
2525
import org.junit.Test;
2626
import org.openqa.selenium.WebDriver;
27+
import org.openqa.selenium.net.PortProber;
2728
import org.openqa.selenium.testing.JUnit4TestBase;
2829

30+
import java.io.IOException;
2931
import java.nio.file.Files;
3032
import java.nio.file.Path;
3133
import java.nio.file.Paths;
3234

33-
public class TechnologyPreviewTest extends JUnit4TestBase {
35+
public class SafariDriverTest extends JUnit4TestBase {
3436

35-
@Before
36-
public void checkTechnologyPreviewInstalled() {
37+
private boolean technologyPreviewInstalled() {
3738
Path driverShim =
3839
Paths.get("/Applications/Safari Technology Preview.app/Contents/MacOS/safaridriver");
39-
assumeTrue("Technology Preview not installed", Files.exists(driverShim));
40+
return Files.exists(driverShim);
41+
}
42+
43+
private SafariDriverService service;
44+
private WebDriver driver2;
45+
46+
@After
47+
public void stopAll() {
48+
if (driver2 != null) {
49+
driver2.quit();
50+
}
51+
if (service != null) {
52+
service.stop();
53+
}
54+
}
55+
56+
@Test
57+
public void canStartADriverUsingAService() throws IOException {
58+
removeDriver();
59+
int port = PortProber.findFreePort();
60+
service = new SafariDriverService.Builder().usingPort(port).build();
61+
service.start();
62+
driver2 = new SafariDriver(service);
63+
driver2.get(pages.xhtmlTestPage);
64+
assertEquals("XHTML Test Page", driver2.getTitle());
4065
}
4166

4267
@Test
4368
public void canStartTechnologyPreview() {
69+
assumeTrue(technologyPreviewInstalled());
4470
removeDriver();
4571
SafariOptions options = new SafariOptions();
4672
options.setUseTechnologyPreview(true);
47-
48-
WebDriver driver2 = null;
49-
try {
50-
driver2 = new SafariDriver(options);
51-
52-
driver2.get(pages.xhtmlTestPage);
53-
assertEquals("XHTML Test Page", driver2.getTitle());
54-
} finally {
55-
if (driver2 != null) {
56-
driver2.quit();
57-
}
58-
}
73+
driver2 = new SafariDriver(options);
74+
driver2.get(pages.xhtmlTestPage);
75+
assertEquals("XHTML Test Page", driver2.getTitle());
5976
}
6077

6178
}

java/client/test/org/openqa/selenium/safari/SafariDriverTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@
3030
@Suite.SuiteClasses({
3131
StandardSeleniumTests.class,
3232
//AlertsTest.class,
33+
SafariDriverTest.class,
3334
CleanSessionTest.class,
3435
CrossDomainTest.class,
3536
SafariOptionsTest.class,
36-
TechnologyPreviewTest.class,
3737
})
3838
public class SafariDriverTests {
3939

0 commit comments

Comments
 (0)