package br.com.dextra.dextranet.indexacao; import java.util.List; import org.junit.Assert; import org.junit.Test; import br.com.dextra.dextranet.conteudo.post.Post; import br.com.dextra.dextranet.conteudo.post.PostFields; import br.com.dextra.dextranet.conteudo.post.PostRepository; import br.com.dextra.dextranet.conteudo.post.comentario.Comentario; import br.com.dextra.dextranet.conteudo.post.comentario.ComentarioRepository; import br.com.dextra.teste.TesteIntegracaoBase; public class IndexacaoRepositoryTest extends TesteIntegracaoBase { private PostRepository repositorioDePosts = new PostRepository(); private IndexacaoRepository repositorioDeIndex = new IndexacaoRepository(); private ComentarioRepository repositorioDeComentarios = new ComentarioRepository(); @Test public void testaBuscaPostsIndexados() { limpaPostsInseridos(repositorioDePosts); Post post01 = new Post("usuario01", "post1", "esse eh um post de teste"); Post post02 = new Post("usuario02", "post2", "esse eh um post de teste"); repositorioDePosts.persiste(post01); repositorioDePosts.persiste(post02); List<Post> busca = repositorioDeIndex.buscar(Post.class, PostFields.titulo.name() + ": post1"); Assert.assertEquals(1, busca.size()); busca = repositorioDeIndex.buscar(Post.class, PostFields.conteudo.name() + ": esse eh um post de teste"); Assert.assertEquals(2, busca.size()); busca = repositorioDeIndex.buscar(Post.class, PostFields.usuario.name() + ": usuario01"); Assert.assertEquals(1, busca.size()); busca = repositorioDeIndex.buscar(Post.class, "esse eh um post de teste"); Assert.assertEquals(2, busca.size()); } @Test public void testaBuscaComentariosIndexados() { limpaPostsInseridos(repositorioDePosts); Post post01 = new Post("usuario01", "post1", "esse eh um post de teste"); Post post02 = new Post("usuario02", "post2", "esse eh um post de teste"); repositorioDePosts.persiste(post01); repositorioDePosts.persiste(post02); Comentario comentario01 = new Comentario(post01.getId(), "usuario", "conteudo1-1"); Comentario comentario02 = new Comentario(post02.getId(), "usuario", "conteudo2-1"); repositorioDeComentarios.persiste(comentario01); repositorioDeComentarios.persiste(comentario02); List<Comentario> comentarios = repositorioDeIndex.buscar(Comentario.class, "conteudo1-1"); Assert.assertEquals(1, comentarios.size()); comentarios = repositorioDeIndex.buscar(Comentario.class, "conteudo2-1"); Assert.assertEquals(1, comentarios.size()); } }