/* * Copyright (c) 2007 Mockito contributors * This program is made available under the terms of the MIT License. */ package org.mockito; import org.mockito.internal.stubbing.answers.CallsRealMethods; import org.mockito.internal.stubbing.defaultanswers.GloballyConfiguredAnswer; import org.mockito.internal.stubbing.defaultanswers.ReturnsDeepStubs; import org.mockito.internal.stubbing.defaultanswers.ReturnsMocks; import org.mockito.internal.stubbing.defaultanswers.ReturnsSmartNulls; import org.mockito.stubbing.Answer; /** * Enumeration of pre-configured mock answers *

* You can use it to pass extra parameters to @Mock annotation, see more info here: {@link Mock} *

* Example: *


 *   @Mock(answer = RETURNS_DEEP_STUBS) UserProvider userProvider;
 * 
* This is not the full list of Answers available in Mockito. Some interesting answers can be found in org.mockito.stubbing.answers package. */ public enum Answers { /** * The default configured answer of every mock. * *

Please see the {@link org.mockito.Mockito#RETURNS_DEFAULTS} documentation for more details.

* * @see org.mockito.Mockito#RETURNS_DEFAULTS */ RETURNS_DEFAULTS(new GloballyConfiguredAnswer()), /** * An answer that returns smart-nulls. * *

Please see the {@link org.mockito.Mockito#RETURNS_SMART_NULLS} documentation for more details.

* * @see org.mockito.Mockito#RETURNS_SMART_NULLS */ RETURNS_SMART_NULLS(new ReturnsSmartNulls()), /** * An answer that returns mocks (not stubs). * *

Please see the {@link org.mockito.Mockito#RETURNS_MOCKS} documentation for more details.

* * @see org.mockito.Mockito#RETURNS_MOCKS */ RETURNS_MOCKS(new ReturnsMocks()), /** * An answer that returns deep stubs (not mocks). * *

Please see the {@link org.mockito.Mockito#RETURNS_DEEP_STUBS} documentation for more details.

* * @see org.mockito.Mockito#RETURNS_DEEP_STUBS */ RETURNS_DEEP_STUBS(new ReturnsDeepStubs()), /** * An answer that calls the real methods (used for partial mocks). * *

Please see the {@link org.mockito.Mockito#CALLS_REAL_METHODS} documentation for more details.

* * @see org.mockito.Mockito#CALLS_REAL_METHODS */ CALLS_REAL_METHODS(new CallsRealMethods()) ; private Answer implementation; private Answers(Answer implementation) { this.implementation = implementation; } public Answer get() { return implementation; } }