Class InOrderImpl

java.lang.Object
org.mockito.internal.InOrderImpl
All Implemented Interfaces:
InOrder, InOrderContext

public class InOrderImpl extends Object implements InOrder, InOrderContext
Allows verifying in order. This class should not be exposed, hence default access.
  • Constructor Details

    • InOrderImpl

      public InOrderImpl(List<?> mocksToBeVerifiedInOrder)
  • Method Details

    • getMocksToBeVerifiedInOrder

      public List<Object> getMocksToBeVerifiedInOrder()
    • verify

      public <T> T verify(T mock)
      Description copied from interface: InOrder
      Verifies interaction happened once in order.

      Alias to inOrder.verify(mock, times(1))

      Example:

      
       InOrder inOrder = inOrder(firstMock, secondMock);
      
       inOrder.verify(firstMock).someMethod("was called first");
       inOrder.verify(secondMock).someMethod("was called second");
       
      See examples in javadoc for Mockito class
      Specified by:
      verify in interface InOrder
      Parameters:
      mock - to be verified
      Returns:
      mock object itself
    • verify

      public <T> T verify(T mock, VerificationMode mode)
      Description copied from interface: InOrder
      Verifies interaction in order. E.g:
      
       InOrder inOrder = inOrder(firstMock, secondMock);
      
       inOrder.verify(firstMock, times(2)).someMethod("was called first two times");
       inOrder.verify(secondMock, atLeastOnce()).someMethod("was called second at least once");
       
      See examples in javadoc for Mockito class
      Specified by:
      verify in interface InOrder
      Parameters:
      mock - to be verified
      mode - for example times(x) or atLeastOnce()
      Returns:
      mock object itself
    • verify

      public void verify(MockedStatic<?> mockedStatic, MockedStatic.Verification verification, VerificationMode mode)
      Description copied from interface: InOrder
      Verifies static interaction in order. E.g:
      
       try (MockedStatic mocked = mockStatic(Foo.class)) {
         InOrder inOrder = inOrder(Foo.class);
      
         mocked.when(Foo::firstMethod).thenReturn("first");
         mocked.when(Foo::secondMethod).thenReturn("second");
      
         assertEquals("first", Foo.firstMethod());
         assertEquals("second", Foo.secondMethod());
      
         inOrder.verify(mocked, Foo::firstMethod, times(1));
         inOrder.verify(mocked, Foo::secondMethod, atLeastOnce());
       }
       
      Specified by:
      verify in interface InOrder
      Parameters:
      mockedStatic - static mock to be verified
      verification - verification to be verified
      mode - for example times(x) or atLeastOnce()
    • isVerified

      public boolean isVerified(Invocation i)
      Specified by:
      isVerified in interface InOrderContext
    • markVerified

      public void markVerified(Invocation i)
      Specified by:
      markVerified in interface InOrderContext
    • verifyNoMoreInteractions

      public void verifyNoMoreInteractions()
      Description copied from interface: InOrder
      Verifies that no more interactions happened in order. Different from Mockito.verifyNoMoreInteractions(Object...) because the order of verification matters.

      Example:

      
       mock.foo(); //1st
       mock.bar(); //2nd
       mock.baz(); //3rd
      
       InOrder inOrder = inOrder(mock);
      
       inOrder.verify(mock).bar(); //2n
       inOrder.verify(mock).baz(); //3rd (last method)
      
       //passes because there are no more interactions after last method:
       inOrder.verifyNoMoreInteractions();
      
       //however this fails because 1st method was not verified:
       Mockito.verifyNoMoreInteractions(mock);
       
      Specified by:
      verifyNoMoreInteractions in interface InOrder