C'è un modo per abbinare qualsiasi argomento di classe della routine di esempio di seguito?
class A {
public B method(Class<? extends A> a) {}
}
Come posso sempre restituire un new B()
indipendentemente da quale classe è passata method
? Il seguente tentativo funziona solo per il caso specifico in cui A
è associato.
A a = new A();
B b = new B();
when(a.method(eq(A.class))).thenReturn(b);
EDIT : una soluzione è
(Class<?>) any(Class.class)
Class<?>
sorprendente!