-
Notifications
You must be signed in to change notification settings - Fork 71
Open
Description
Currently mock object is created as follows -
Mockery mockery = new Mockery();
DummyInterface dummyInterface = mockery.mock(DummyInterface .class);
This can be created like below as well. We don't have to explicitly provide class name.
Mockery mockery = new Mockery();
DummyInterface dummyInterface = mockery.mock();
This is in reference to pull request mockito/mockito#2779 (comment)
Below code can be added -
private static <T> Class<T> getClassOf(T[] array) {
return (Class<T>) array.getClass().getComponentType();
}
/**
* Creates a mock object of type <var>typeToMock</var> and generates a name for it.
* @param <T> is the class of the mock
* @param reified don't pass any values to it. It's a trick to detect the class/interface you want to mock.
* @return the mock of typeToMock
*/
public <T> T mock(T... reified) {
if (reified.length > 0) {
throw new IllegalArgumentException(
"Please don't pass any values here. Java will detect class automagically.");
}
return mock(getClassOf(reified));
}
Metadata
Metadata
Assignees
Labels
No labels