@PersistenceContext
private EntityManager em;
WeldContainer weld = new Weld().initialize();
ServicesDAO dao = weld.instance().select(ServicesDAO.class).get();
@Inject
Boa tarde Gregory,
A princípio vc deve mockar a dependência do DAO o entitymanager (http://www.adam-bien.com/roller/abien/entry/mocking_jpa_entitymanager_with_query).
Abs
--
Você recebeu essa mensagem porque está inscrito no grupo "caelum-vraptor" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para caelum-vrapto...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para caelum-...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/caelum-vraptor.
Para mais opções, acesse https://groups.google.com/d/optout.
Boa tarde Rafael Ponte,
Eu concordo contigo, eu disse "a princípio" por não saber exatamente o objetivo do teste unitário do Gregory.
Aqui tb tem um exemplo de mock de entitymanager onde fez sentido para o autor: https://github.com/caelum/vraptor-jpa/blob/master/src/test/java/br/com/caelum/vraptor/jpa/EntityManagerCreatorTest.java
Agora pensando em tocar o banco e etc vejo como teste de integração, logo faz sentido validar as consultas.
No geral, eu testo o domínio do negócio com unitário, mockando o q for necessário, depende do desacoplamento de domínios. Quando o domínio interage com elementos de entrada ou saída, (controller, daos e etc), geralmente vejo a necessidade de testes de integração.
Gregory, se sua dúvida for mais conceitual há uma lista de discussão que trata disso: tdd-no-m...@googlegroups.com
Abs
Você recebeu essa mensagem porque está inscrito em um tópico no grupo "caelum-vraptor" dos Grupos do Google.
Para cancelar inscrição nesse tópico, acesse https://groups.google.com/d/topic/caelum-vraptor/HS5nXBtpeNU/unsubscribe.
Para cancelar inscrição nesse grupo e todos os seus tópicos, envie um e-mail para caelum-vrapto...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para caelum-...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/caelum-vraptor.
Para mais opções, acesse https://groups.google.com/d/optout.
Fala Ponte,
Concordo contigo, queria até saber do teu feeling dum dado contexto, onde o projeto segue a ideia da arquitetura hexagonal/cebola, o domínio fica mto fácil de testar por unitário, enquanto nas outras camadas acaba sendo comum usar teste de integração ou até teste de tela/aceitação.
Claro que não dá pra generalizar, mas eu fico com essa sensação, onde o ato de testar traz resultados efetivos.
*Mal ae sair do foco da thread*
Abs
Você recebeu essa mensagem porque está inscrito em um tópico no grupo "caelum-vraptor" dos Grupos do Google.
Para cancelar inscrição nesse tópico, acesse https://groups.google.com/d/topic/caelum-vraptor/HS5nXBtpeNU/unsubscribe.
Para cancelar inscrição nesse grupo e todos os seus tópicos, envie um e-mail para caelum-vrapto...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para caelum-...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/caelum-vraptor.
Para mais opções, acesse https://groups.google.com/d/optout.
public class ServicesDAO {
@PersistenceContext
private EntityManager em;
public List<Categoria> getCategorias() throws RuntimeException {
return em.createNamedQuery("Categoria.findAll", Categoria.class).getResultList();
}
...
@Inject
ServicesDAO dao;
@Test
public void getCategorias(){
Assert.assertTrue(servicesDAO.getCategorias().size() > 0);
}
--
Você recebeu essa mensagem porque está inscrito em um tópico no grupo "caelum-vraptor" dos Grupos do Google.
Para cancelar inscrição nesse tópico, acesse https://groups.google.com/d/topic/caelum-vraptor/HS5nXBtpeNU/unsubscribe.
Para cancelar inscrição nesse grupo e todos os seus tópicos, envie um e-mail para caelum-vrapto...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para caelum-...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/caelum-vraptor.
Para mais opções, acesse https://groups.google.com/d/optout.
Você recebeu essa mensagem porque está inscrito no grupo "caelum-vraptor" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para caelum-vrapto...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para caelum-...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/caelum-vraptor.
Para mais opções, acesse https://groups.google.com/d/optout.
--
Você recebeu essa mensagem porque está inscrito no grupo "caelum-vraptor" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para caelum-vrapto...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para caelum-...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/caelum-vraptor.
Para mais opções, acesse https://groups.google.com/d/optout.
Você recebeu essa mensagem porque está inscrito em um tópico no grupo "caelum-vraptor" dos Grupos do Google.
Para cancelar inscrição nesse tópico, acesse https://groups.google.com/d/topic/caelum-vraptor/HS5nXBtpeNU/unsubscribe.
Para cancelar inscrição nesse grupo e todos os seus tópicos, envie um e-mail para caelum-vrapto...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para caelum-...@googlegroups.com.
Acesse esse grupo em https://groups.google.com/group/caelum-vraptor.
Para mais opções, acesse https://groups.google.com/d/optout.