Si tengo una clase con un método @PostConstruct, ¿cómo puedo probar su constructor y, por lo tanto, su método @PostConstruct usando JUnit y Spring? No puedo simplemente usar un nuevo ClassName (param, param) porque no está usando Spring: el método @PostConstruct no se activa.¿Cómo probar el constructor de una clase que tiene un método @PostConstruct usando Spring?
¿Me falta algo obvio aquí?
public class Connection {
private String x1;
private String x2;
public Connection(String x1, String x2) {
this.x1 = x1;
this.x2 = x2;
}
@PostConstruct
public void init() {
x1 = "arf arf arf"
}
}
@Test
public void test() {
Connection c = new Connection("dog", "ruff");
assertEquals("arf arf arf", c.getX1();
}
que tienen algo similar (aunque un poco más compleja) que esto y el método @PostConstruct no consigue golpear.
Entiendo eso, como dije. Pero, ¿cómo pruebo múltiples permutaciones de este constructor dentro de una clase de prueba? ¿Qué no estoy aclarando sobre mi pregunta? – AHungerArtist
Quiero cinco casos de prueba para el constructor de esta clase. ¿Realmente no hay mejor manera que tener un contexto de aplicación con cinco de esos beans y cargarlo? – AHungerArtist
En tiempo real si hay 5 formas posibles de inyectar su clase, me da miedo decir que tiene que crear 5 definiciones de bean en ese caso. –