Schnittstelle der zu testenden Methode
public class Foo {
public void process(List<String> arg0) {
/*Siehe unten*/
}
}
Entsprechender Testcode von mir geschrieben
List<String> arg0 = Arrays.asList("Ah", "ich", "U.");
Foo foo = new Foo();
foo.process(arg0);
Dies fällt aus irgendeinem Grund mit einer "ClassCastException" zusammen. Ich war überrascht, die zu testende Quelle zu sehen.
Warum hast du dich die Mühe gemacht zu besetzen?
public void process(List<String> arg0) {
//↓ Keine Kompilierungswarnung!
List<String> ls = (ArrayList) arg0;
//Folgendes wird weggelassen
}
Es war ein schrecklicher Code, der nicht einmal eine Kompilierungswarnung gab ...
Es fiel nicht dahin, wo es natürlich war. (Ich sage nicht, dass es gut ist, weil es nicht fällt)
Testcode von einem Neuling geschrieben
List<String> arg0 = new ArrayList<>();
arg0.add("Ah");
arg0.add("ich");
arg0.add("U.");
Foo foo = new Foo();
foo.process(arg0);