1e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson/* 2e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * Copyright (c) 2007 Mockito contributors 3e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * This program is made available under the terms of the MIT License. 4e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson */ 5e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinsonpackage org.mockito.listeners; 6e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson 7e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinsonimport org.mockito.exceptions.PrintableInvocation; 8e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinsonimport org.mockito.invocation.DescribedInvocation; 9e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson 10e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson/** 11e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * Represent a method call on a mock. 12e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * 13e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * <p> 14e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * Contains the information on the mock, the location of the stub 15e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * the return value if it returned something (maybe null), or an 16e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * exception if one was thrown when the method was invoked. 17e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * </p> 18e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson */ 19e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinsonpublic interface MethodInvocationReport { 20e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson /** 21e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * The return type is deprecated, please assign the return value from this method 22e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * to the {@link DescribedInvocation} type. Sorry for inconvenience but we had to move 23e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * {@link PrintableInvocation} to better place to keep the API consistency. 24e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * 25e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * @return Information on the method call, never {@code null} 26e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson */ 27e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson DescribedInvocation getInvocation(); 28e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson 29e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson /** 30e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * @return The resulting value of the method invocation, may be <code>null</code> 31e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson */ 32e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson Object getReturnedValue(); 33e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson 34e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson /** 35e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * @return The throwable raised by the method invocation, maybe <code>null</code> 36e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson */ 37e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson Throwable getThrowable(); 38e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson 39e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson /** 40e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * @return <code>true</code> if an exception was raised, <code>false</code> otherwise 41e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson */ 42e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson boolean threwException(); 43e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson 44e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson /** 45e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson * @return Location of the stub invocation 46e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson */ 47e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson String getLocationOfStubbing(); 48e0ae5d7e87b1dd6e789803c1b9615a84bd7488b7Ian Parkinson} 49