Package org.mockito.plugins
Interface InstantiatorProvider
- All Known Implementing Classes:
InstantiatorProvider2Adapter
Deprecated.
- Since:
- 2.0.31
-
Method Summary
Modifier and TypeMethodDescriptiongetInstantiator
(MockCreationSettings<?> settings) Deprecated., seeInstantiatorProvider
.
-
Method Details
-
getInstantiator
Deprecated., seeInstantiatorProvider
. Returns an instantiator, used to create new class instances.
-
InstantiatorProvider2
and Issue 1303Mockito will invoke this interface in order to fetch an instance instantiator provider.
By default, an internal byte-buddy/asm/objenesis based implementation is used.
Using the extension point
The plugin mechanism of mockito works in a similar way as the
ServiceLoader
, however instead of looking in theMETA-INF
directory, Mockito will look inmockito-extensions
directory. The reason for that is that Android SDK strips jar from theMETA-INF
directory when creating an APK.org.awesome.mockito.AwesomeInstantiatorProvider
that implements theInstantiatorProvider
.mockito-extensions/org.mockito.plugins.InstantiatorProvider
". The content of this file is exactly a one line with the qualified name:org.awesome.mockito.AwesomeInstantiatorProvider
.Note that if several
mockito-extensions/org.mockito.plugins.InstantiatorProvider
files exists in the classpath, Mockito will only use the first returned by the standardClassLoader.getResource(java.lang.String)
mechanism.So just create a custom implementation of
InstantiatorProvider
and place the qualified name in the following filemockito-extensions/org.mockito.plugins.InstantiatorProvider
.This class is deprecated and was replaced by
InstantiatorProvider2
. Hence if there is both amockito-extensions/org.mockito.plugins.InstantiatorProvider
andmockito-extensions/org.mockito.plugins.InstantiatorProvider2
the second one takes preference.