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

index 5d34322e4d315b096ec7a1f6a280a70fbe7cfb24..711c31c0a6e5e295cc7af290e2c11745f31a1226 100644 (file)
@@ -485,6 +485,26 @@ public class TaxonServiceSearchTest extends CdmTransactionalIntegrationTest {
         Assert.assertEquals("Expecting one entity when searching for any TextData", Integer.valueOf(1), pager.getCount());\r
         SearchResult<TaxonBase> searchResult = pager.getRecords().get(0);\r
         Assert.assertTrue("the map of highlighted fragments should contain at least one item", searchResult.getFieldHighlightMap().size() > 0);\r
+        String[] fragments = searchResult.getFieldHighlightMap().values().iterator().next();\r
+        Assert.assertTrue("first fragments should contains serch term", fragments[0].contains("<B>Abies</B>"));\r
+\r
+        pager = taxonService.findByDescriptionElementFullText(TextData.class, "Pflanzenart Tannen", null, null, null, true, null, null, null, null);\r
+        searchResult = pager.getRecords().get(0);\r
+        Assert.assertTrue("Phrase search : Expecting at least one item in highlighted fragments", searchResult.getFieldHighlightMap().size() > 0);\r
+        fragments = searchResult.getFieldHighlightMap().values().iterator().next();\r
+        Assert.assertTrue("first fragments should contains serch term", fragments[0].contains("<B>Pflanzenart</B>") || fragments[0].contains("<B>Tannen</B>"));\r
+\r
+        pager = taxonService.findByDescriptionElementFullText(TextData.class, "+Pflanzenart +Tannen", null, null, null, true, null, null, null, null);\r
+        searchResult = pager.getRecords().get(0);\r
+        Assert.assertTrue("Phrase search : Expecting at least one item in highlighted fragments", searchResult.getFieldHighlightMap().size() > 0);\r
+        fragments = searchResult.getFieldHighlightMap().values().iterator().next();\r
+        Assert.assertTrue("first fragments should contains serch term", fragments[0].contains("<B>Pflanzenart</B>") && fragments[0].contains("<B>Tannen</B>"));\r
+\r
+        pager = taxonService.findByDescriptionElementFullText(TextData.class, "\"Pflanzenart aus der Gattung der Tannen\"", null, null, null, true, null, null, null, null);\r
+        searchResult = pager.getRecords().get(0);\r
+        Assert.assertTrue("Phrase search : Expecting at least one item in highlighted fragments", searchResult.getFieldHighlightMap().size() > 0);\r
+        fragments = searchResult.getFieldHighlightMap().values().iterator().next();\r
+        Assert.assertTrue("first fragments should contains serch term", fragments[0].contains("<B>Pflanzenart aus der Gattung der Tannen</B>"));\r
     }\r
 \r
     /**\r