KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
This is the test: import static junit.framework.Assert.assertTrue; import static org.powermock.api.mockito.PowerMockito.mock; import static org.powermock.api.mockito.PowerMockito.whenNew; import org.junit.Test; import org.junit.runner.RunWith; import org.powermock.core.classloader.annotations.PrepareForTest; import org.powermock.modules.junit4.PowerMockRunner; @RunWith(PowerMockRunner.class) @PrepareForTest( {ClassUnderTesting.class} ) public class ClassUnderTestingTest { @Test public void shouldInitializeMocks() throws Exception { CollaboratorToBeMocked mockedCollaborator = mock(CollaboratorToBeMocked.class); suppress(constructor(CollaboratorToBeMocked.class, InjectedIntoCollaborator.class)); whenNew(CollaboratorToBeMocked.class) .withArguments(InjectedAsTypeIntoCollaborator.class) .thenReturn(mockedCollaborator); new ClassUnderTesting().methodUnderTesting(); assertTrue(true); } } These are the classes : public class ClassUnderTesting { public void methodUnderTesting() { new CollaboratorToBeMocked(InjectedAsTypeIntoCollaborator.class); } } public class CollaboratorToBeMocked { public CollaboratorToBeMocked(Class<InjectedAsTypeIntoCollaborator> clazz) { } public CollaboratorToBeMocked(InjectedIntoCollaborator someCollaborator) { } public CollaboratorToBeMocked() { } } public class InjectedAsTypeIntoCollaborator { } public class InjectedIntoCollaborator { } This is the error : org.powermock.reflect.exceptions.TooManyConstructorsFoundException: Several matching constructors found, please specify the argument parameter types so that PowerMock can determine which method you're refering to. Matching constructors in class CollaboratorToBeMocked were: CollaboratorToBeMocked( InjectedIntoCollaborator.class ) CollaboratorToBeMocked( java.lang.Class
Tags (comma-separated)
Save Edits
Cancel