Home | History | Annotate | Download | only in basicapi
      1 package org.mockitousage.basicapi;
      2 
      3 import org.junit.Test;
      4 import org.mockito.Mock;
      5 import org.mockito.exceptions.misusing.NotAMockException;
      6 import org.mockitousage.IMethods;
      7 import org.mockitoutil.TestBase;
      8 
      9 import static junit.framework.TestCase.assertEquals;
     10 import static org.mockito.Mockito.*;
     11 
     12 public class ResetInvocationsTest extends TestBase {
     13 
     14     @Mock
     15     IMethods methods;
     16 
     17     @Mock
     18     IMethods moarMethods;
     19 
     20     @Test
     21     public void reset_invocations_should_reset_only_invocations() {
     22         when(methods.simpleMethod()).thenReturn("return");
     23 
     24         methods.simpleMethod();
     25         verify(methods).simpleMethod();
     26 
     27         clearInvocations(methods);
     28 
     29         verifyNoMoreInteractions(methods);
     30         assertEquals("return", methods.simpleMethod());
     31     }
     32 
     33     @Test
     34     public void should_reset_invocations_on_multiple_mocks() {
     35         methods.simpleMethod();
     36         moarMethods.simpleMethod();
     37 
     38         clearInvocations(methods, moarMethods);
     39 
     40         verifyNoMoreInteractions(methods, moarMethods);
     41     }
     42 
     43     @Test(expected = NotAMockException.class)
     44     public void resettingNonMockIsSafe() {
     45         clearInvocations("");
     46     }
     47 
     48     @Test(expected = NotAMockException.class)
     49     public void resettingNullIsSafe() {
     50         clearInvocations(new Object[]{null});
     51     }
     52 }
     53