All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.mockito.verification.VerificationWithTimeout Maven / Gradle / Ivy

There is a newer version: 2.0.2-beta
Show newest version
/*
 * Copyright (c) 2007 Mockito contributors
 * This program is made available under the terms of the MIT License.
 */

package org.mockito.verification;

import org.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); /** * @deprecated * Validation with timeout combined with never simply does not make sense, as never() will typically immediately pass, * and therefore not wait the timeout. The behaviour you may be looking for is actually provided by after().never(). *

* To avoid compilation errors upon upgrade the method is deprecated and it throws a "friendly reminder" exception. *

* In a future release we will remove timeout(x).atMost(y) and timeout(x).never() from the API. *

* Do you want to find out more? See issue 235 * * @return verification mode */ @Deprecated public VerificationMode never(); /** * 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); /** * @deprecated * * Deprecated * Validation with timeout combined with never simply does not make sense, as atMost() will typically immediately pass, * and therefore not wait the timeout. The behaviour you may be looking for is actually provided by after().atMost(). *

* To avoid compilation errors upon upgrade the method is deprecated and it throws a "friendly reminder" exception. *

* In a future release we will remove timeout(x).atMost(y) and timeout(x).never() from the API. *

* Do you want to find out more? See issue 235 * * @return verification mode */ @Deprecated public VerificationMode atMost(int maxNumberOfInvocations); /** * 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();
     *   verifyNoMoreInvocations(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