Verspotten generischer Typen mit Mockito

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Verspotten generischer Typen mit Mockito

by Guest » 14 Jan 2025, 12:14

Es fällt mir schwer, generische Typen zu verspotten. Nachfolgend finden Sie meine Klassendefinitionen

Code: Select all

public interface MyHandler {
void handle(S t1, T t2);
}
Das Folgende ist meine Implementierungsklasse

Code: Select all

public class MyFirstConcreteHandler implements MyHandler{
// implementation
}
Hier erweitert OtherClass BaseClass
Das Folgende ist meine Factory-Klasse

Code: Select all

public class MyHandlerFactory {

Map myHandlers;

public MyHandler getHandler(String key) {
// myhandlers will be populated in constructor
return myHandlers.get(key.toLowerCase());
}

}
Das Folgende ist, was ich zu verspotten versuche

Code: Select all

 MyHandlerFactory myHandlerFactory = mock(MyHandlerFactory.class)
MyFirstConcreteHandler mockHandler =   mock(MyFirstConcreteHandler.class);
when(myHandlerFactory.getHandler("random")).thenReturn(mockHandler);
Das Folgende ist ein Compilerfehler, den ich erhalte

Code: Select all

Cannot resolve method 'thenReturn(MyConcreteHandler)'
Wie löse ich das?

Top