Skip to content

Commit fa90697

Browse files
committed
Add Class MockitoSpyTest
1 parent 532d279 commit fa90697

File tree

1 file changed

+79
-0
lines changed

1 file changed

+79
-0
lines changed
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
package org.baeldung.mockito;
2+
3+
import static org.junit.Assert.assertEquals;
4+
import static org.mockito.Mockito.doReturn;
5+
import static org.mockito.Mockito.mock;
6+
import static org.mockito.Mockito.spy;
7+
import static org.mockito.Mockito.verify;
8+
9+
import java.util.ArrayList;
10+
import java.util.List;
11+
12+
import org.junit.Test;
13+
import org.junit.runner.RunWith;
14+
import org.mockito.Spy;
15+
import org.mockito.runners.MockitoJUnitRunner;
16+
17+
@RunWith(MockitoJUnitRunner.class)
18+
public class MockitoSpyTest {
19+
20+
@Test
21+
public void whenSpyOnList_thenCorrect() {
22+
final List<String> list = new ArrayList<String>();
23+
final List<String> spy = spy(list);
24+
25+
spy.add("one");
26+
spy.add("two");
27+
28+
verify(spy).add("one");
29+
verify(spy).add("two");
30+
31+
assertEquals(2, spy.size());
32+
}
33+
34+
@Spy
35+
List<String> spyList = new ArrayList<String>();
36+
37+
@Test
38+
public void whenUseSpyAnnotation_thenCorrect() {
39+
spyList.add("one");
40+
spyList.add("two");
41+
42+
verify(spyList).add("one");
43+
verify(spyList).add("two");
44+
45+
assertEquals(2, spyList.size());
46+
}
47+
48+
@Test
49+
public void whenStubASpy_thenStubbed() {
50+
final List<String> list = new ArrayList<String>();
51+
final List<String> spy = spy(list);
52+
53+
assertEquals(0, spy.size());
54+
55+
doReturn(100).when(spy).size();
56+
assertEquals(100, spy.size());
57+
}
58+
59+
@Test
60+
public void whenCreateMock_thenCreated() {
61+
final List mockedList = mock(List.class);
62+
63+
mockedList.add("one");
64+
verify(mockedList).add("one");
65+
66+
assertEquals(0, mockedList.size());
67+
}
68+
69+
@Test
70+
public void whenCreateSpy_thenCreate() {
71+
final List spy = spy(new ArrayList());
72+
73+
spy.add("one");
74+
verify(spy).add("one");
75+
76+
assertEquals(1, spy.size());
77+
}
78+
79+
}

0 commit comments

Comments
 (0)