![]() | ||||||||||||||||||||
|
Das Entwurfsmuster Iterator testen
Der folgende Text ist ein Auszug aus dem Buch Iterator ist ein Verhaltensmuster und wurde populär durch das Buch Entwurfsmuster - Elemente wiederverwendbarer objektorientierter Software von Erich Gamma, Richard Helm, John Vlissides und Ralph Johnson. Die korrekte Funktionsweise einer Iterator-Implementierung kann einfach geprüft werden, indem das Ergebnis von hasNext() und next() mit einer parallel durchlaufenen Schleife über die zugrunde liegende Liste verglichen wird. Um das Beispiel zu verkürzen, wird hier der Test für die in der Klasse java.util.Vector integrierte Iterator-Implementierung durchgeführt. import java.util.*; In diesem Listing werden zwei Tests durchgeführt. Erstens wird geprüft, ob die Listenelemente in der erwarteten Reihenfolge iteriert werden und zweitens, ob alle Elemente berücksichtigt werden. Im zweiten Fall kann es vorkommen, dass entweder zu wenige oder zu viele Elemente traversiert werden sollen. Für jede der beiden Möglichkeiten wird im Fehlerfall eine unterschiedliche Fehlermeldung ausgegeben. |
|||||||||||||||||||
|