Delphi-Quellcode:
type
TToaster = class
public
constructor Create(const powerSupply: IPowerSupply);
end;
In einem Unittest kannst du nun, um deinen Toaster zu testen, ein Mock für IPowerSupply übergeben, womit du also nicht die richtige Implementierung davon benötigts (denn du willst ja TToaster testen und nicht was anderes). Über einen Mock kannst du auch sicherstellen, dass der TToaster die entsprechenden Methoden von IPowerSupply aufruft, die gemäß Spezifikation erwartet werden.
Das hatte ich schon so verstanden. Ich dachte (wahrscheinlich zu kompliziert) eher daran: Wie teste ich, ob eine Klasse, die ein bestimmtes Interface implementiert, das richtig implementiert?
Delphi-Quellcode:
type
TMyClass = class (TInterfacedObject,IMyInterface)
public
procedure IrgendeineProzedurDesInterfaces();
end;
type
TMyClass_Test = class(TTestCase)
published
procedure TestInterface;
end;
Wie müsste TestInterface aussehen? Teste ich darin einfach die Prozefur IrgendeineProzedurDesInterfaces() der Testklasse, sprich interessiert mich an der Stelle gar nicht, das TMyClass IMyInterface implementiert?
P.S.: Danke für den Video-Link. Schau ich mir heut Abend mal an.