Pessoal,
Estou fazendo um teste de persistencia usando JPA e Spring, vou mostrar o código e depois comento o problema:
public class EstadoServiceIntegrationTests extends AbstractJpaTests {
private EstadoService estadoservice;
private Long spId;
public void setEstadoservice(EstadoService estadoservice) {
this.estadoservice = estadoservice;
}
protected String[] getConfigLocations() {
return new String[] { "classpath:/br/com/ze/locais/dao/dwspring-service.xml" };
}
protected void onSetUpInTransaction() throws Exception{
Estado estado1 = new Estado();
estado1.setNome("São Paulo");
estado1.setSigla("SP");
Estado estado2 = new Estado();
estado2.setNome("Rio de Janeiro");
estado2.setSigla("RJ");
estadoservice.save(estado1);
estadoservice.save(estado2);
estado1.setNome("Sao Paulo");
estado1 = estadoservice.update(estado1);
spId = estado1.getId();
}
public void testModifyEstado(){
String oldName = "Rio de Janeiro";
String newName = "Riu de Janeiro";
List<Estado> list = estadoservice.findByNome(oldName);
Estado est = list.get(0);
est.setNome(newName);
System.out.println("Alo: " + est.getId() + est.getNome() + est.getSigla());
Estado est2 = estadoservice.update(est);
assertEquals(newName, est2.getNome());
System.out.println("Nome : " + est2.getNome());
Estado e = new Estado();
e.setNome("Nome");
e.setSigla("SG");
estadoservice.save(e);
System.out.println(e.getId());
e.setNome("NNNN");
estadoservice.update(e);
}
}
Tudo ocorre normalmente, mas olhando a saída:
Podemos perceber que estão faltando 2 updates, os dois estão em testModifyEstado. Os updates em onSetUpInTransaction ocorrem normalmente, enquanto na função test* não, alguem sabe me explicar por que?
Desde ja agradeço,