Class InOrderImpl

  • All Implemented Interfaces:
    InOrder, InOrderContext

    public class InOrderImpl
    extends java.lang.Object
    implements InOrder, InOrderContext
    Allows verifying in order. This class should not be exposed, hence default access.
    • Field Detail

      • mocksToBeVerifiedInOrder

        private final java.util.List<java.lang.Object> mocksToBeVerifiedInOrder
    • Constructor Detail

      • InOrderImpl

        public InOrderImpl​(java.util.List<?> mocksToBeVerifiedInOrder)
    • Method Detail

      • getMocksToBeVerifiedInOrder

        public java.util.List<java.lang.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
      • objectIsMockToBeVerified

        private boolean objectIsMockToBeVerified​(java.lang.Object mock)
      • 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