¿Existe un método limpio de burlarse de una clase con parámetros genéricos? Digamos que tengo que burlarme de una clase Foo<T>
que necesito pasar a un método que espera a Foo<Bar>
. Puedo hacer lo siguiente con bastante facilidad:
Foo mockFoo = mock(Foo.class);
when(mockFoo.getValue).thenReturn(new Bar());
Suponiendo que getValue()
devuelve el tipo genérico T
. Pero eso tendrá gatitos cuando más tarde lo pase a un método esperando Foo<Bar>
. ¿Es el casting el único medio para hacer esto?