com.fitbur.mockito.verification.VerificationWithTimeout Maven / Gradle / Ivy
/*
* Copyright (c) 2007 Mockito contributors
* This program is made available under the terms of the MIT License.
*/
package com.fitbur.mockito.verification;
import com.fitbur.mockito.Mockito;
/**
* VerificationWithTimeout is a {@link VerificationMode} that allows combining existing verification modes with 'timeout'. E.g:
*
*
* verify(mock, timeout(100).times(5)).foo();
*
* verify(mock, timeout(100).never()).bar();
*
* verify(mock, timeout(200).atLeastOnce()).baz();
*
*
* This is similar to {@link VerificationAfterDelay after()} except this assertion will immediately pass if it becomes true at any point,
* whereas after() will wait the full period. Assertions which are consistently expected to be initially true and potentially become false
* are deprecated below, and after() should be used instead.
*
*
* See examples in javadoc for {@link Mockito#verify(Object, VerificationMode)}
*/
public interface VerificationWithTimeout extends VerificationMode {
/**
* Allows verifying exact number of invocations within given timeout
*
* verify(mock, timeout(100).times(2)).someMethod("some arg");
*
*
* See examples in javadoc for {@link Mockito} class
*
* @param wantedNumberOfInvocations wanted number of invocations
*
* @return verification mode
*/
public VerificationMode times(int wantedNumberOfInvocations);
/**
* Allows at-least-once verification within given timeout. E.g:
*
* verify(mock, timeout(100).atLeastOnce()).someMethod("some arg");
*
* Alias to atLeast(1)
*
* See examples in javadoc for {@link Mockito} class
*
* @return verification mode
*/
public VerificationMode atLeastOnce();
/**
* Allows at-least-x verification within given timeout. E.g:
*
* verify(mock, timeout(100).atLeast(3)).someMethod("some arg");
*
*
* See examples in javadoc for {@link Mockito} class
*
* @param minNumberOfInvocations minimum number of invocations
*
* @return verification mode
*/
public VerificationMode atLeast(int minNumberOfInvocations);
/**
* Allows checking if given method was the only one invoked. E.g:
*
* verify(mock, only()).someMethod();
* //above is a shorthand for following 2 lines of code:
* verify(mock).someMethod();
* verifyNoMoreInteractions(mock);
*
*
*
* See also {@link Mockito#verifyNoMoreInteractions(Object...)}
*
* See examples in javadoc for {@link Mockito} class
*
* @return verification mode
*/
public VerificationMode only();
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy