org.mockito.stubbing.DeprecatedOngoingStubbing Maven / Gradle / Ivy
/*
* Copyright (c) 2007 Mockito contributors
* This program is made available under the terms of the MIT License.
*/
package org.mockito.stubbing;
import org.mockito.Mockito;
import org.mockito.internal.progress.IOngoingStubbing;
/**
* Stubs a method call with return value or an exception. E.g:
*
*
* stub(mock.someMethod()).toReturn(10);
*
* //you can use flexible argument matchers, e.g:
* stub(mock.someMethod(anyString())).toReturn(10);
*
* //setting exception to be thrown:
* stub(mock.someMethod("some arg")).toThrow(new RuntimeException());
*
* //you can stub with different behavior for consecutive method calls.
* //Last stubbing (e.g: toReturn("foo")) determines the behavior for further consecutive calls.
* stub(mock.someMethod("some arg"))
* .toThrow(new RuntimeException())
* .toReturn("foo");
*
*
*
* See examples in javadoc for {@link Mockito#stub}
*/
public interface DeprecatedOngoingStubbing extends IOngoingStubbing {
/**
* Set a return value for the stubbed method. E.g:
*
* stub(mock.someMethod()).toReturn(10);
*
*
* See examples in javadoc for {@link Mockito#stub}
*
* @param value return value
*
* @return iOngoingStubbing object that allows stubbing consecutive calls
*/
DeprecatedOngoingStubbing toReturn(T value);
/**
* Set a Throwable to be thrown when the stubbed method is called. E.g:
*
* stub(mock.someMethod()).toThrow(new RuntimeException());
*
*
* If throwable is a checked exception then it has to
* match one of the checked exceptions of method signature.
*
* See examples in javadoc for {@link Mockito#stub}
*
* @param throwable to be thrown on method invocation
*
* @return iOngoingStubbing object that allows stubbing consecutive calls
*/
DeprecatedOngoingStubbing toThrow(Throwable throwable);
/**
* Set a generic Answer for the stubbed method. E.g:
*
* stub(mock.someMethod(10)).toAnswer(new Answer<Integer>() {
* public Integer answer(InvocationOnMock invocation) throws Throwable {
* return (Integer) invocation.getArguments()[0];
* }
* }
*
*
* @param answer the custom answer to execute.
*
* @return iOngoingStubbing object that allows stubbing consecutive calls
*/
DeprecatedOngoingStubbing toAnswer(Answer> answer);
}