Mock alle Instanzen einer Klasse

8

Ich weiß, das ist normalerweise eine schlechte Übung, aber in meinem Fall ist es notwendig.

Ich habe einen Fall, in dem ein Enum eine Klasse hält, um Informationen zu erhalten. So dass Enum eine Instanz dieses Kalbs in seinem Konstruktor erstellt.

%Vor%

MyImpl.java ist nur eine Klasse mit einer einzigen Methode, die einen String zurückgibt.

%Vor%

Jetzt endlich der Komponententest:

%Vor%

Die Ausgabe ist:

%Vor%

Aber sollte 3 mal funktionieren!

    
Zarathustra 27.12.2013, 08:31
quelle

1 Antwort

7

Ich habe den fehlerhaften Teil gefunden.

Ich habe mich geändert

%Vor%

bis

%Vor%

Jetzt funktioniert das Spotten. Aber ich muss sagen, dass, wie Jon Skeet ausgedruckt hat, das Enum nicht überall diese verspottete Mitgliederinstanz hat. In einem anderen Unit-Test wird also MyEnum.CONSTANT.sayHello(); erneut it works anstelle von Hello! ausgeben.

    
Zarathustra 27.12.2013, 09:56
quelle