Constructor and Description |
---|
CglibMockMaker() |
Modifier and Type | Method and Description |
---|---|
<T> T |
createMock(MockCreationSettings<T> settings,
MockHandler handler)
If you want to provide your own implementation of
MockMaker this method should:
Create a proxy object that implements settings.typeToMock and potentially also settings.extraInterfaces .
You may use the information from settings to create/configure your proxy object.
Your proxy object should carry the handler with it. |
MockHandler |
getHandler(java.lang.Object mock)
Returns the handler for the
mock . |
void |
resetMock(java.lang.Object mock,
MockHandler newHandler,
MockCreationSettings settings)
Replaces the existing handler on
mock with newHandler . |
public <T> T createMock(MockCreationSettings<T> settings, MockHandler handler)
MockMaker
MockMaker
this method should:
settings.typeToMock
and potentially also settings.extraInterfaces
.settings
to create/configure your proxy object.handler
with it. For example, if you generate byte code
to create the proxy you could generate an extra field to keep the handler
with the generated object.
Your implementation of MockMaker
is required to provide this instance of handler
when
MockMaker.getHandler(Object)
is called.
createMock
in interface MockMaker
T
- Type of the mock to return, actually the settings.getTypeToMock
.settings
- - mock creation settings like type to mock, extra interfaces and so on.handler
- See MockHandler
.
Do not provide your own implementation at this time. Make sure your implementation of
MockMaker.getHandler(Object)
will return this instance.public void resetMock(java.lang.Object mock, MockHandler newHandler, MockCreationSettings settings)
MockMaker
mock
with newHandler
.
The invocation handler actually store invocations to achieve stubbing and verification. In order to reset the mock, we pass a new instance of the invocation handler.
Your implementation should make sure the newHandler
is correctly associated to passed mock
public MockHandler getHandler(java.lang.Object mock)
MockMaker
mock
. Do not provide your own implementations at this time
because the work on the MockHandler
api is not completed.
Use the instance provided to you by Mockito at MockMaker.createMock(org.mockito.mock.MockCreationSettings<T>, org.mockito.invocation.MockHandler)
or MockMaker.resetMock(java.lang.Object, org.mockito.invocation.MockHandler, org.mockito.mock.MockCreationSettings)
.getHandler
in interface MockMaker
mock
- The mock instance.