/** Eigene kleine Testklasse (ohne JUnit): Exit-Code 0 = alles gruen, 1 = mindestens ein Test rot. */ public final class RechnungTest { private static int fehler = 0; private static void pruefe(String name, long erwartet, long ist) { if (erwartet == ist) { System.out.println("OK " + name); } else { fehler++; System.out.println("FEHL " + name + ": erwartet " + erwartet + ", war " + ist); } } public static void main(String[] args) { long[] preise = {1999, 2500, 100, 4000}; pruefe("drei Positionen", 4599, Rechnung.summeErsten(preise, 3)); pruefe("eine Position", 1999, Rechnung.summeErsten(preise, 1)); pruefe("alle vier Positionen", 8599, Rechnung.summeErsten(preise, 4)); pruefe("keine Position", 0, Rechnung.summeErsten(preise, 0)); pruefe("Rabatt 10 Prozent auf 4599", 4139, Rechnung.mitRabatt(4599, 10)); pruefe("Rabatt 0 Prozent", 4599, Rechnung.mitRabatt(4599, 0)); try { Rechnung.summeErsten(preise, 5); fehler++; System.out.println("FEHL n=5 haette eine Ausnahme werfen muessen"); } catch (IllegalArgumentException e) { System.out.println("OK n=5 wirft IllegalArgumentException"); } System.out.println(fehler == 0 ? "ALLE GRUEN" : fehler + " Test(s) rot"); System.exit(fehler == 0 ? 0 : 1); } }