22
33import com .codecentric .sample .store .model .Item ;
44import com .codecentric .sample .store .repository .ItemRepository ;
5+ import com .codecentric .sample .store .service .tools .StaticService ;
56import org .junit .Before ;
67import org .junit .Test ;
78import org .junit .runner .RunWith ;
89import org .junit .runners .Parameterized ;
910import org .mockito .InjectMocks ;
1011import org .mockito .Mock ;
1112import org .mockito .MockitoAnnotations ;
13+ import org .powermock .api .mockito .PowerMockito ;
14+ import org .powermock .core .classloader .annotations .PrepareForTest ;
15+ import org .powermock .modules .junit4 .PowerMockRunner ;
16+ import org .powermock .modules .junit4 .PowerMockRunnerDelegate ;
1217
1318import java .util .Arrays ;
1419import java .util .Collection ;
1520
1621import static org .hamcrest .CoreMatchers .is ;
1722import static org .junit .Assert .assertThat ;
23+ import static org .mockito .Mockito .times ;
24+ import static org .mockito .Mockito .verify ;
1825import static org .mockito .Mockito .when ;
26+ import static org .powermock .api .mockito .PowerMockito .mockStatic ;
27+ import static org .powermock .api .mockito .PowerMockito .verifyStatic ;
1928
20- @ RunWith (Parameterized .class )
29+ // See http://www.jayway.com/2014/11/29/using-another-junit-runner-with-powermock/
30+ // for an example with the SpringJUnit4ClassRunner.class
31+
32+ @ RunWith (PowerMockRunner .class )
33+ @ PowerMockRunnerDelegate (Parameterized .class )
34+ @ PrepareForTest ({StaticService .class })
2135public class RateServiceTest {
2236
2337 @ Mock
@@ -57,6 +71,8 @@ public void rateCalculationTest() {
5771 // Given
5872 //
5973 when (itemRepositoryeMock .findById (item .getId ())).thenReturn (item );
74+ mockStatic (StaticService .class );
75+ PowerMockito .when (StaticService .getMultiplicator ()).thenReturn (multiplicator );
6076
6177 //
6278 // When
@@ -66,6 +82,10 @@ public void rateCalculationTest() {
6682 //
6783 // Then
6884 //
85+ verify (itemRepositoryeMock , times (1 )).findById (item .getId ());
86+ verifyStatic (times (1 ));
87+ StaticService .getMultiplicator ();
88+
6989 assertThat (result , is (expected ));
7090 }
7191}
0 commit comments