8000 #111 Removed all calls to mock(WebDriver.class) · seleniumQuery/seleniumQuery@d687d9f · GitHub
[go: up one dir, main page]

Skip to content

Commit d687d9f

Browse files
committed
#111 Removed all calls to mock(WebDriver.class)
1 parent c79a5ef commit d687d9f

File tree

9 files changed

+97
-57
lines changed

9 files changed

+97
-57
lines changed

src/test/java/endtoend/browser/driver/SeleniumQueryDriverTest.java

Lines changed: 27 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2015 seleniumQuery authors
2+
* Copyright (c) 2016 seleniumQuery authors
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -24,20 +24,21 @@
2424
import org.openqa.selenium.ie.InternetExplorerDriver;
2525
import org.openqa.selenium.phantomjs.PhantomJSDriver;
2626
import testinfrastructure.junitrule.SetUpAndTearDownDriver;
27+
import testinfrastructure.testdouble.org.openqa.selenium.WebDriverQuitSpy;
2728

2829
import static io.github.seleniumquery.SeleniumQuery.$;
2930
import static org.hamcrest.CoreMatchers.is;
3031
import static org.hamcrest.core.IsInstanceOf.instanceOf;
3132
import static org.junit.Assert.assertThat;
3233
import static org.junit.Assume.assumeTrue;
33-
import static org.mockito.Mockito.*;
34+
import static testinfrastructure.testdouble.org.openqa.selenium.WebDriverQuitSpy.createWebDriverQuitSpy;
3435

3536
public class SeleniumQueryDriverTest {
3637

3738
@Test
3839
public void use__should_set_the_argument_as_current_WebDriver_____and___get__should_return_it() {
3940
// given
40-
WebDriver driver = mock(WebDriver.class);
41+
WebDriver driver = createWebDriverQuitSpy();
4142
// when
4243
$.driver().use(driver);
4344
// then
@@ -48,40 +49,32 @@ public void use__should_set_the_argument_as_current_WebDriver_____and___get__sho
4849
@Test
4950
public void quit__should_quit_the_current_webDriver() {
5051
// given
51-
WebDriver driver = mock(WebDriver.class);
52+
WebDriverQuitSpy driver = createWebDriverQuitSpy();
5253
$.driver().use(driver);
53-
assertDriverWasNotQuit(driver);
54+
driver.assertDriverWasNotQuit();
5455
// when
5556
$.driver().quit();
5657
// then
57-
assertDriverWasQuit(driver);
58+
driver.assertDriverWasQuit();
5859
}
5960

6061
@Test
6162
public void use__should_quit_the_previous_driver() {
6263
// given
63-
WebDriver previousDriver = mock(WebDriver.class);
64+
WebDriverQuitSpy previousDriver = createWebDriverQuitSpy();
6465
$.driver().use(previousDriver);
65-
assertDriverWasNotQuit(previousDriver);
66+
previousDriver.assertDriverWasNotQuit();
6667
// when
67-
WebDriver newDriver = mock(WebDriver.class);
68+
WebDriver newDriver = createWebDriverQuitSpy();
6869
$.driver().use(newDriver);
6970
// then
70-
assertDriverWasQuit(previousDriver);
71-
}
72-
73-
private void assertDriverWasQuit(WebDriver previousDriver) {
74-
verify(previousDriver).quit();
75-
}
76-
77-
private void assertDriverWasNotQuit(WebDriver previousDriver) {
78-
verify(previousDriver, never()).quit();
71+
previousDriver.assertDriverWasQuit();
7972
}
8073

8174
@Test
8275
public void get__should_return_the_same_WebDriver_upon_multiple_calls() {
8376
// given
84-
WebDriver previousDriver = mock(WebDriver.class);
77+
WebDriver previousDriver = createWebDriverQuitSpy();
8578
$.driver().use(previousDriver);
8679
WebDriver driverGetOnce = $.driver().get();
8780
// when
@@ -108,28 +101,28 @@ public void useHtmlUnit__should_create_a_HtmlUnitDriver_upon_first_use() {
108101
@Test
109102
public void useHtmlUnit__should_quit_the_previous_driver() {
110103
// given
111-
WebDriver previousDriver = mock(WebDriver.class);
104+
WebDriverQuitSpy previousDriver = createWebDriverQuitSpy();
112105
$.driver().use(previousDriver);
113-
assertDriverWasNotQuit(previousDriver);
106+
previousDriver.assertDriverWasNotQuit();
114107
// when
115108
$.driver().useHtmlUnit();
116109
// then
117-
assertDriverWasQuit(previousDriver);
110+
previousDriver.assertDriverWasQuit();
118111
}
119112

120113
@Test // I know this test asserts two things, but instantiating a FirefoxDriver is expensive!
121114
public void useFirefox__should_create_a_FirefoxDriver_upon_first_use___and___should_quit_the_previous_driver() {
122115
assumeTrue(SetUpAndTearDownDriver.driverToRunTestsIn.canRunFirefox());
123116
// given
124-
WebDriver previousDriver = mock(WebDriver.class);
117+
WebDriverQuitSpy previousDriver = createWebDriverQuitSpy();
125118
$.driver().use(previousDriver);
126-
assertDriverWasNotQuit(previousDriver);
119+
previousDriver.assertDriverWasNotQuit();
127120
try {
128121
// when
129122
$.driver().useFirefox();
130123
WebDriver driver = $.driver().get();
131124
// then
132-
assertDriverWasQuit(previousDriver);
125+
previousDriver.assertDriverWasQuit();
133126
assertThat(driver, instanceOf(FirefoxDriver.class));
134127
} finally {
135128
$.driver().quit();
@@ -140,15 +133,15 @@ public void useFirefox__should_create_a_FirefoxDriver_upon_first_use___and___sho
140133
public void useChrome__should_create_a_ChromeDriver_upon_first_use___and___should_quit_the_previous_driver() {
141134
assumeTrue(SetUpAndTearDownDriver.driverToRunTestsIn.canRunChrome());
142135
// given
143-
WebDriver previousDriver = mock(WebDriver.class);
136+
WebDriverQuitSpy previousDriver = createWebDriverQuitSpy();
144137
$.driver().use(previousDriver);
145-
assertDriverWasNotQuit(previousDriver);
138+
previousDriver.assertDriverWasNotQuit();
146139
try {
147140
// when
148141
$.driver().useChrome();
149142
WebDriver driver = $.driver().get();
150143
// then
151-
assertDriverWasQuit(previousDriver);
144+
previousDriver.assertDriverWasQuit();
152145
assertThat(driver, instanceOf(ChromeDriver.class));
153146
} finally {
154147
$.driver().quit();
@@ -159,15 +152,15 @@ public void useChrome__should_create_a_ChromeDriver_upon_first_use___and___shoul
159152
public void useInternetExplorer__should_create_a_InternetExplorerDriver_upon_first_use___and___should_quit_the_previous_driver() {
160153
assumeTrue(SetUpAndTearDownDriver.driverToRunTestsIn.canRunIE());
161154
// given
162-
WebDriver previousDriver = mock(WebDriver.class);
155+
WebDriverQuitSpy previousDriver = createWebDriverQuitSpy();
163156
$.driver().use(previousDriver);
164-
assertDriverWasNotQuit(previousDriver);
157+
previousDriver.assertDriverWasNotQuit();
165158
try {
166159
// when
167160
$.driver().useInternetExplorer();
168161
WebDriver driver = $.driver().get();
169162
// then
170-
assertDriverWasQuit(previousDriver);
163+
previousDriver.assertDriverWasQuit();
171164
assertThat(driver, instanceOf(InternetExplorerDriver.class));
172165
} finally {
173166
$.driver().quit();
@@ -178,15 +171,15 @@ public void useInternetExplorer__should_create_a_InternetExplorerDriver_upon_fir
178171
public void usePhantomJS__should_create_a_PhantomJSDriver_upon_first_use___and___should_quit_the_previous_driver() {
179172
assumeTrue(SetUpAndTearDownDriver.driverToRunTestsIn.canRunPhantomJS());
180173
// given
181-
WebDriver previousDriver = mock(WebDriver.class);
174+
WebDriverQuitSpy previousDriver = createWebDriverQuitSpy();
182175
$.driver().use(previousDriver);
183-
assertDriverWasNotQuit(previousDriver);
176+
previousDriver.assertDriverWasNotQuit();
184177
try {
185178
// when
186179
$.driver().usePhantomJS();
187180
WebDriver driver = $.driver().get();
188181
// then
189-
assertDriverWasQuit(previousDriver);
182+
previousDriver.assertDriverWasQuit();
190183
assertThat(driver, instanceOf(PhantomJSDriver.class));
191184
} finally {
192185
$.driver().quit();

src/test/java/integration/io/github/seleniumquery/by/DriverVersionUtilsTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2015 seleniumQuery authors
2+
* Copyright (c) 2016 seleniumQuery authors
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -27,6 +27,7 @@
2727
import static org.hamcrest.Matchers.is;
2828
import static org.junit.Assert.assertThat;
2929
import static org.mockito.Mockito.mock;
30+
import static testinfrastructure.testdouble.org.openqa.selenium.WebDriverDummy.createWebDriverDummy;
3031

3132
public class DriverVersionUtilsTest {
3233

@@ -75,7 +76,7 @@ public void isHtmlUnitDriverEmulatingIE__ie_non_deprecated_versions() {
7576

7677
@Test
7778
public void isHtmlUnitDriverEmulatingIE__not_HtmlUnit() {
78-
WebDriver webDriverMock = mock(WebDriver.class);
79+
WebDriver webDriverMock = createWebDriverDummy();
7980
boolean isHtmlUnitDriverEmulatingIE = DriverVersionUtils.isHtmlUnitDriverEmulatingIE(webDriverMock);
8081
assertThat(isHtmlUnitDriverEmulatingIE, is(false));
8182
}

src/test/java/io/github/seleniumquery/by/secondgen/csstree/selector/SQCssConditionalSelectorTest.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2015 seleniumQuery authors
2+
* Copyright (c) 2016 seleniumQuery authors
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -20,12 +20,11 @@
2020
import io.github.seleniumquery.by.secondgen.csstree.selector.combinator.SQCssDescendantSelector;
2121
import io.github.seleniumquery.by.secondgen.finder.ElementFinder;
2222
import org.junit.Test;
23-
import org.openqa.selenium.WebDriver;
2423

2524
import static org.hamcrest.CoreMatchers.is;
2625
import static org.hamcrest.collection.IsEmptyCollection.empty;
2726
import static org.junit.Assert.assertThat;
28-
import static org.mockito.Mockito.mock;
27+
import static testinfrastructure.testdouble.org.openqa.selenium.WebDriverDummy.createWebDriverDummy;
2928

3029
public class SQCssConditionalSelectorTest {
3130

@@ -37,7 +36,7 @@ public void toElementFinder() {
3736
// tagg.clz
3837
SQCssConditionalSelector conditionalSelector = new SQCssConditionalSelector(tagNameSelector, classAttributeCondition);
3938
// when
40-
ElementFinder elementFinder = conditionalSelector.toElementFinder(mock(WebDriver.class));
39+
ElementFinder elementFinder = conditionalSelector.toElementFinder(createWebDriverDummy());
4140
// then
4241
assertThat(elementFinder.getCssFinder().toString(), is("tagg.clz"));
4342
assertThat(elementFinder.canFetchThroughCssAlone(), is(true));
@@ -55,7 +54,7 @@ public void toElementFinder__with_ElementFinder_arg() {
5554
// a b.condition
5655
SQCssDescendantSelector descendantSelector = new SQCssDescendantSelector(aTagSelector, conditionalSelector);
5756
// when
58-
ElementFinder elementFinder = descendantSelector.toElementFinder(mock(WebDriver.class));
57+
ElementFinder elementFinder = descendantSelector.toElementFinder(createWebDriverDummy());
5958
// then
6059
assertThat(elementFinder.getCssFinder().toString(), is("a b.condition"));
6160
assertThat(elementFinder.canFetchThroughCssAlone(), is(true));

src/test/java/io/github/seleniumquery/by/secondgen/csstree/selector/combinator/SQCssDescendantSelectorTest.java

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2015 seleniumQuery authors
2+
* Copyright (c) 2016 seleniumQuery authors
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -19,12 +19,11 @@
1919
import io.github.seleniumquery.by.secondgen.csstree.selector.SQCssTagNameSelector;
2020
import io.github.seleniumquery.by.secondgen.finder.ElementFinder;
2121
import org.junit.Test;
22-
import org.openqa.selenium.WebDriver;
2322

2423
import static org.hamcrest.CoreMatchers.is;
2524
import static org.hamcrest.collection.IsEmptyCollection.empty;
2625
import static org.junit.Assert.assertThat;
27-
import static org.mockito.Mockito.mock;
26+
import static testinfrastructure.testdouble.org.openqa.selenium.WebDriverDummy.createWebDriverDummy;
2827

2928
public class SQCssDescendantSelectorTest {
3029

@@ -35,7 +34,7 @@ public void toElementFinder() {
3534
SQCssTagNameSelector bTagSelector = new SQCssTagNameSelector("b");
3635
SQCssDescendantSelector descendantSelector = new SQCssDescendantSelector(aTagSelector, bTagSelector);
3736
// when
38-
ElementFinder elementFinder = descendantSelector.toElementFinder(mock(WebDriver.class));
37+
ElementFinder elementFinder = descendantSelector.toElementFinder(createWebDriverDummy());
3938
// then
4039
assertThat(elementFinder.getCssFinder().toString(), is("a b"));
4140
assertThat(elementFinder.canFetchThroughCssAlone(), is(true));
@@ -52,7 +51,7 @@ public void toElementFinder_multiple() {
5251
SQCssTagNameSelector thirdSelector = new SQCssTagNameSelector("c");
5352
SQCssDescendantSelector descendantSelector = new SQCssDescendantSelector(firstAndSecondSelectors, thirdSelector);
5453
// when
55-
ElementFinder elementFinder = descendantSelector.toElementFinder(mock(WebDriver.class));
54+
ElementFinder elementFinder = descendantSelector.toElementFinder(createWebDriverDummy());
5655
// then
5756
assertThat(elementFinder.getCssFinder().toString(), is("a b c"));
5857
assertThat(elementFinder.canFetchThroughCssAlone(), is(true));

src/test/java/io/github/seleniumquery/by/secondgen/csstree/selector/combinator/SQCssDirectAdjacentSelectorTest.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2015 seleniumQuery authors
2+
* Copyright (c) 2016 seleniumQuery authors
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -25,6 +25,7 @@
2525
import static org.hamcrest.collection.IsEmptyCollection.empty;
2626
import static org.junit.Assert.assertThat;
2727
import static org.mockito.Mockito.mock;
28+
import static testinfrastructure.testdouble.org.openqa.selenium.WebDriverDummy.createWebDriverDummy;
2829

2930
public class SQCssDirectAdjacentSelectorTest {
3031

@@ -35,7 +36,7 @@ public void toElementFinder() {
3536
SQCssTagNameSelector bTagSelector = new SQCssTagNameSelector("b");
3637
SQCssDirectAdjacentSelector directAdjacentSelector = new SQCssDirectAdjacentSelector(aTagSelector, bTagSelector);
3738
// when
38-
ElementFinder elementFinder = directAdjacentSelector.toElementFinder(mock(WebDriver.class));
39+
ElementFinder elementFinder = directAdjacentSelector.toElementFinder(createWebDriverDummy());
3940
// then
4041
assertThat(elementFinder.getCssFinder().toString(), is("a+b"));
4142
assertThat(elementFinder.canFetchThroughCssAlone(), is(true));

src/test/java/io/github/seleniumquery/by/secondgen/csstree/selector/combinator/SQCssDirectDescendantSelectorTest.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2015 seleniumQuery authors
2+
* Copyright (c) 2016 seleniumQuery authors
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -19,12 +19,11 @@
1919
import io.github.seleniumquery.by.secondgen.csstree.selector.SQCssTagNameSelector;
2020
import io.github.seleniumquery.by.secondgen.finder.ElementFinder;
2121
import org.junit.Test;
22-
import org.openqa.selenium.WebDriver;
2322

2423
import static org.hamcrest.CoreMatchers.is;
2524
import static org.hamcrest.collection.IsEmptyCollection.empty;
2625
import static org.junit.Assert.assertThat;
27-
import static org.mockito.Mockito.mock;
26+
import static testinfrastructure.testdouble.org.openqa.selenium.WebDriverDummy.createWebDriverDummy;
2827

2928
public class SQCssDirectDescendantSelectorTest {
3029

@@ -35,7 +34,7 @@ public void toElementFinder() {
3534
SQCssTagNameSelector bTagSelector = new SQCssTagNameSelector("b");
3635
SQCssDirectDescendantSelector directDescendantSelector = new SQCssDirectDescendantSelector(aTagSelector, bTagSelector);
3736
// when
38-
ElementFinder elementFinder = directDescendantSelector.toElementFinder(mock(WebDriver.class));
37+
ElementFinder elementFinder = directDescendantSelector.toElementFinder(createWebDriverDummy());
3938
// then
4039
assertThat(elementFinder.getCssFinder().toString(), is("a>b"));
4140
assertThat(elementFinder.canFetchThroughCssAlone(), is(true));

src/test/java/io/github/seleniumquery/by/secondgen/csstree/selector/combinator/SQCssGeneralAdjacentSelectorTest.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2015 seleniumQuery authors
2+
* Copyright (c) 2016 seleniumQuery authors
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -19,12 +19,11 @@
1919
import io.github.seleniumquery.by.secondgen.csstree.selector.SQCssTagNameSelector;
2020
import io.github.seleniumquery.by.secondgen.finder.ElementFinder;
2121
import org.junit.Test;
22-
import org.openqa.selenium.WebDriver;
2322

2423
import static org.hamcrest.CoreMatchers.is;
2524
import static org.hamcrest.collection.IsEmptyCollection.empty;
2625
import static org.junit.Assert.assertThat;
27-
import static org.mockito.Mockito.mock;
26+
import static testinfrastructure.testdouble.org.openqa.selenium.WebDriverDummy.createWebDriverDummy;
2827

2928
public class SQCssGeneralAdjacentSelectorTest {
3029

@@ -35,7 +34,7 @@ public void toElementFinder() {
3534
SQCssTagNameSelector bTagSelector = new SQCssTagNameSelector("b");
3635
SQCssGeneralAdjacentSelector generalAdjacentSelector = new SQCssGeneralAdjacentSelector(aTagSelector, bTagSelector);
3736
// when
38-
ElementFinder elementFinder = generalAdjacentSelector.toElementFinder(mock(WebDriver.class));
37+
ElementFinder elementFinder = generalAdjacentSelector.toElementFinder(createWebDriverDummy());
3938
// then
4039
assertThat(elementFinder.getCssFinder().toString(), is("a~b"));
4140
assertThat(elementFinder.canFetchThroughCssAlone(), is(true));

src/test/java/io/github/seleniumquery/by/secondgen/finder/ElementFinderUtilsTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030

3131
public class ElementFinderUtilsTest {
3232

33-
public static final ElementFinder UNIVERSAL_SELECTOR_FINDER = universalSelectorFinder(mock(WebDriver.class));
33+
public static final ElementFinder UNIVERSAL_SELECTOR_FINDER = universalSelectorFinder(createWebDriverDummy());
3434
public static ElementFinder universalSelectorFinder(WebDriver driver) {
3535
return new ElementFinder(driver, universalSelector(), pureXPath(".//*[true()]"));
3636
}

0 commit comments

Comments
 (0)
0