wollte grad Aufgabe 4 Teil 2 angehen (Design umbauen, dass es DbC-Konform wird)
Da habe ich ein Problem. Es wird im Interface Account ja verlangt, dass lineOfCredit immer positiv ist. Das kollidiert ja mit CheckingsAccount, wo es negativ verwendet wird. Selbst wenn alle Klassen Account selbst implementieren und somit Schwierigkeiten mit überschriebenen Methoden ausgeschlossen werden - SavingsAccount verletzt ja immernoch die "unantastbare" Bedingung von lineOfCredit >= 0, oder?
Genauso der JuniorCheckingsAccount. Hier wird im Test eine Konto mit Guthaben 10, lineOfCredit 1000 generiert. Anschließend 2 mal withdraw(10) aufgerufen. Das kann / darf ja garnicht gehen, weil lineOfCredit = 0. Wie soll ich dann bewerkstelligen, dass die Tests durchlaufen?!
Code: Alles auswählen
@Test
public void testWitdrawFromOpenAccount() throws Exception {
final Account a = createAndOpenAccount(10, 1000);
a.withdraw(10);
a.withdraw(10);
}
Tibor