org.mockito.Mock Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of securemock Show documentation
Show all versions of securemock Show documentation
Libraries for Elasticsearch
The newest version!
/*
* Copyright (c) 2007 Mockito contributors
* This program is made available under the terms of the MIT License.
*/
package org.mockito;
import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;
import org.mockito.junit.MockitoJUnitRunner;
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
/**
* Mark a field as a mock.
*
*
* - Allows shorthand mock creation.
* - Minimizes repetitive mock creation code.
* - Makes the test class more readable.
* - Makes the verification error easier to read because the field name is used to identify the mock.
*
*
*
* public class ArticleManagerTest extends SampleBaseTestCase {
*
* @Mock private ArticleCalculator calculator;
* @Mock(name = "database") private ArticleDatabase dbMock;
* @Mock(answer = RETURNS_MOCKS) private UserProvider userProvider;
* @Mock(extraInterfaces = {Queue.class, Observer.class}) private articleMonitor;
* @Mock(stubOnly = true) private Logger logger;
*
* private ArticleManager manager;
*
* @Before public void setup() {
* manager = new ArticleManager(userProvider, database, calculator, articleMonitor, logger);
* }
* }
*
* public class SampleBaseTestCase {
*
* @Before public void initMocks() {
* MockitoAnnotations.initMocks(this);
* }
* }
*
*
*
* MockitoAnnotations.initMocks(this) method has to be called to initialize annotated objects.
* In above example, initMocks() is called in @Before (JUnit4) method of test's base class.
* For JUnit3 initMocks() can go to setup() method of a base class.
* Instead you can also put initMocks() in your JUnit runner (@RunWith) or use the built-in
* {@link MockitoJUnitRunner}.
*
*
* @see Mockito#mock(Class)
* @see Spy
* @see InjectMocks
* @see MockitoAnnotations#initMocks(Object)
* @see MockitoJUnitRunner
*/
@Target({FIELD, PARAMETER})
@Retention(RUNTIME)
@Documented
public @interface Mock {
Answers answer() default Answers.RETURNS_DEFAULTS;
boolean stubOnly() default false;
String name() default "";
Class>[] extraInterfaces() default {};
boolean serializable() default false;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy