Class MockitoPostProcessor

java.lang.Object
org.springframework.boot.test.mock.mockito.MockitoPostProcessor
All Implemented Interfaces:
org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.config.BeanFactoryPostProcessor, org.springframework.beans.factory.config.BeanPostProcessor, org.springframework.beans.factory.config.InstantiationAwareBeanPostProcessor, org.springframework.core.Ordered

public class MockitoPostProcessor extends Object implements org.springframework.beans.factory.config.InstantiationAwareBeanPostProcessor, org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.config.BeanFactoryPostProcessor, org.springframework.core.Ordered
A BeanFactoryPostProcessor used to register and inject @MockBeans with the ApplicationContext. An initial set of definitions can be passed to the processor with additional definitions being automatically created from @Configuration classes that use @MockBean.
Since:
1.4.0
  • Field Summary

    Fields inherited from interface org.springframework.core.Ordered

    HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
  • Constructor Summary

    Constructors
    Constructor
    Description
    MockitoPostProcessor(Set<org.springframework.boot.test.mock.mockito.Definition> definitions)
    Create a new MockitoPostProcessor instance with the given initial definitions.
  • Method Summary

    Modifier and Type
    Method
    Description
    protected final Object
     
    int
     
    void
    postProcessBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory beanFactory)
     
    org.springframework.beans.PropertyValues
    postProcessProperties(org.springframework.beans.PropertyValues pvs, Object bean, String beanName)
     
    static void
    register(org.springframework.beans.factory.support.BeanDefinitionRegistry registry)
    Register the processor with a BeanDefinitionRegistry.
    static void
    register(org.springframework.beans.factory.support.BeanDefinitionRegistry registry, Class<? extends MockitoPostProcessor> postProcessor, Set<org.springframework.boot.test.mock.mockito.Definition> definitions)
    Register the processor with a BeanDefinitionRegistry.
    static void
    register(org.springframework.beans.factory.support.BeanDefinitionRegistry registry, Set<org.springframework.boot.test.mock.mockito.Definition> definitions)
    Register the processor with a BeanDefinitionRegistry.
    void
     
    void
    setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.springframework.beans.factory.config.BeanPostProcessor

    postProcessAfterInitialization, postProcessBeforeInitialization

    Methods inherited from interface org.springframework.beans.factory.config.InstantiationAwareBeanPostProcessor

    postProcessAfterInstantiation, postProcessBeforeInstantiation
  • Constructor Details

    • MockitoPostProcessor

      public MockitoPostProcessor(Set<org.springframework.boot.test.mock.mockito.Definition> definitions)
      Create a new MockitoPostProcessor instance with the given initial definitions.
      Parameters:
      definitions - the initial definitions
  • Method Details

    • setBeanClassLoader

      public void setBeanClassLoader(ClassLoader classLoader)
      Specified by:
      setBeanClassLoader in interface org.springframework.beans.factory.BeanClassLoaderAware
    • setBeanFactory

      public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) throws org.springframework.beans.BeansException
      Specified by:
      setBeanFactory in interface org.springframework.beans.factory.BeanFactoryAware
      Throws:
      org.springframework.beans.BeansException
    • postProcessBeanFactory

      public void postProcessBeanFactory(org.springframework.beans.factory.config.ConfigurableListableBeanFactory beanFactory) throws org.springframework.beans.BeansException
      Specified by:
      postProcessBeanFactory in interface org.springframework.beans.factory.config.BeanFactoryPostProcessor
      Throws:
      org.springframework.beans.BeansException
    • createSpyIfNecessary

      protected final Object createSpyIfNecessary(Object bean, String beanName) throws org.springframework.beans.BeansException
      Throws:
      org.springframework.beans.BeansException
    • postProcessProperties

      public org.springframework.beans.PropertyValues postProcessProperties(org.springframework.beans.PropertyValues pvs, Object bean, String beanName) throws org.springframework.beans.BeansException
      Specified by:
      postProcessProperties in interface org.springframework.beans.factory.config.InstantiationAwareBeanPostProcessor
      Throws:
      org.springframework.beans.BeansException
    • getOrder

      public int getOrder()
      Specified by:
      getOrder in interface org.springframework.core.Ordered
    • register

      public static void register(org.springframework.beans.factory.support.BeanDefinitionRegistry registry)
      Register the processor with a BeanDefinitionRegistry. Not required when using the SpringRunner as registration is automatic.
      Parameters:
      registry - the bean definition registry
    • register

      public static void register(org.springframework.beans.factory.support.BeanDefinitionRegistry registry, Set<org.springframework.boot.test.mock.mockito.Definition> definitions)
      Register the processor with a BeanDefinitionRegistry. Not required when using the SpringRunner as registration is automatic.
      Parameters:
      registry - the bean definition registry
      definitions - the initial mock/spy definitions
    • register

      public static void register(org.springframework.beans.factory.support.BeanDefinitionRegistry registry, Class<? extends MockitoPostProcessor> postProcessor, Set<org.springframework.boot.test.mock.mockito.Definition> definitions)
      Register the processor with a BeanDefinitionRegistry. Not required when using the SpringRunner as registration is automatic.
      Parameters:
      registry - the bean definition registry
      postProcessor - the post processor class to register
      definitions - the initial mock/spy definitions