test for searching multiple words in OR and AND combination also as Phrase
authorAndreas Kohlbecker <a.kohlbecker@bgbm.org>
Wed, 11 Jul 2012 13:38:09 +0000 (13:38 +0000)
committerAndreas Kohlbecker <a.kohlbecker@bgbm.org>
Wed, 11 Jul 2012 13:38:09 +0000 (13:38 +0000)
cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/TaxonServiceSearchTest.java

index 1d07edb4042b467ef7b032a770897d2dc9e9a919..5d34322e4d315b096ec7a1f6a280a70fbe7cfb24 100644 (file)
@@ -251,6 +251,38 @@ public class TaxonServiceSearchTest extends CdmTransactionalIntegrationTest {
         Assert.assertEquals("Abies balsamea sec. ", pager.getRecords().get(0).getEntity().getTitleCache());\r
     }\r
 \r
+    @SuppressWarnings("rawtypes")\r
+    @Test\r
+    @DataSet\r
+    public final void testFindByDescriptionElementFullText_MultipleWords() throws CorruptIndexException, IOException, ParseException {\r
+\r
+        refreshLuceneIndex();\r
+\r
+        // Pflanzenart aus der Gattung der Tannen\r
+\r
+        Pager<SearchResult<TaxonBase>> pager;\r
+        pager = taxonService.findByDescriptionElementFullText(TextData.class, "Pflanzenart Tannen", null, null, null, false, null, null, null, null);\r
+        Assert.assertEquals("OR search : Expecting one entity", Integer.valueOf(1), pager.getCount());\r
+\r
+        pager = taxonService.findByDescriptionElementFullText(TextData.class, "Pflanzenart Wespen", null, null, null, false, null, null, null, null);\r
+        Assert.assertEquals("OR search : Expecting one entity", Integer.valueOf(1), pager.getCount());\r
+\r
+        pager = taxonService.findByDescriptionElementFullText(TextData.class, "+Pflanzenart +Tannen", null, null, null, false, null, null, null, null);\r
+        Assert.assertEquals("AND search : Expecting one entity", Integer.valueOf(1), pager.getCount());\r
+\r
+        pager = taxonService.findByDescriptionElementFullText(TextData.class, "+Pflanzenart +Wespen", null, null, null, false, null, null, null, null);\r
+        Assert.assertEquals("AND search : Expecting no entity", Integer.valueOf(0), pager.getCount());\r
+\r
+        pager = taxonService.findByDescriptionElementFullText(TextData.class, "\"Pflanzenart aus der Gattung der Tannen\"", null, null, null, false, null, null, null, null);\r
+        Assert.assertEquals("Phrase search : Expecting one entity", Integer.valueOf(1), pager.getCount());\r
+\r
+        pager = taxonService.findByDescriptionElementFullText(TextData.class, "\"Pflanzenart aus der Gattung der Wespen\"", null, null, null, false, null, null, null, null);\r
+        Assert.assertEquals("Phrase search : Expecting one entity", Integer.valueOf(0), pager.getCount());\r
+\r
+\r
+    }\r
+\r
+\r
     @SuppressWarnings("rawtypes")\r
     @Test\r
     @DataSet\r