Teste Resutls JSON/XML VRaptor3

5 respostas
progoz

Bom dia galera,

Estou escrevendo teste de um certo Controller que em uma de suas actions me retonar um JSON algo do tipo.
@Get
public void create(Interger id) {
    Objeto instance = ObjetoService.getById(id)
    result.use(Results.json()).from(instance).serialize();
}

Eu gostaria de saber como testar se esta vindo o json e testar se o json esta sendo populado certo. Olhei o código do MockResult mas não vi nada do tipo para testar o resultado, apesar de indentificar dois métodos use() e used() mas pelo que vi no código não se aplica ao que eu quero.

Grato,

5 Respostas

G

Você pode se basear nas classes de teste do próprio VRaptor: https://github.com/caelum/vraptor/blob/master/vraptor-core/src/test/java/br/com/caelum/vraptor/serialization/xstream/XStreamJSONSerializationTest.java

progoz

garcia-jj, obrigado pela resposta,

o que acontece é, que nessa classe de teste está sendo testado a serialização pura e somente, a minha intenção é saber se o objeto por sua vez está sendo retornado
corretamente pelo controller.

Lucas_Cavalcanti

se vc quiser fazer o teste no controller, vc pode passar o result de verdade do VRaptor (DefaultResult) mockando as coisas que forem convenientes… mas é um teste meio chatinho de fazer o setUp

progoz

Lucas, valeu,

Eu estou implementando o MockResult pra poder armazenar o objeto xml/json em string do response, daí vou conseguir validar facilmente. Depois mando o pull request pro github pra caso seja interessante adicionar.

Grato pela ajuda !

Lucas_Cavalcanti

contribuições são sempre bem-vindas =)

Criado 15 de março de 2011
Ultima resposta 15 de mar. de 2011
Respostas 5
Participantes 3