Gibt es eine saubere Methode, eine Klasse mit generischen Parametern zu verspotten? Angenommen, ich muss eine Klasse verspotten, Foo<T>
die ich an eine Methode übergeben muss, die a erwartet Foo<Bar>
. Ich kann Folgendes leicht genug tun:
Foo mockFoo = mock(Foo.class);
when(mockFoo.getValue).thenReturn(new Bar());
Angenommen, es wird getValue()
der generische Typ zurückgegeben T
. Aber das wird Kätzchen haben, wenn ich es später in eine erwartete Methode übergebe Foo<Bar>
. Ist Casting das einzige Mittel, um dies zu tun?