Merge branch 'master' of wp5.e-taxonomy.eu:/var/git/cdmlib into remoting-4.0
[cdmlib.git] / cdmlib-services / src / test / java / eu / etaxonomy / cdm / api / service / TaxonServiceSearchTest.java
index ca2ae9239fb5ee5e84bca45b18c7e6b384fae1b8..b83b0a10823bd92dbdf65660ba45f6b457d12000 100644 (file)
@@ -49,7 +49,6 @@ import eu.etaxonomy.cdm.model.common.CdmBase;
 import eu.etaxonomy.cdm.model.common.DefinedTermBase;\r
 import eu.etaxonomy.cdm.model.common.IdentifiableEntity;\r
 import eu.etaxonomy.cdm.model.common.Language;\r
-import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;\r
 import eu.etaxonomy.cdm.model.description.CategoricalData;\r
 import eu.etaxonomy.cdm.model.description.CommonTaxonName;\r
 import eu.etaxonomy.cdm.model.description.DescriptionBase;\r
@@ -77,12 +76,12 @@ import eu.etaxonomy.cdm.model.taxon.TaxonBase;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;\r
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationship;\r
 import eu.etaxonomy.cdm.model.taxon.TaxonRelationshipType;\r
+import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;\r
 import eu.etaxonomy.cdm.persistence.query.MatchMode;\r
 import eu.etaxonomy.cdm.persistence.query.OrderHint;\r
 import eu.etaxonomy.cdm.test.integration.CdmTransactionalIntegrationTest;\r
 import eu.etaxonomy.cdm.test.unitils.CleanSweepInsertLoadStrategy;\r
 \r
-\r
 /**\r
  * @author a.babadshanjan, a.kohlbecker\r
  * @created 04.02.2009\r
@@ -227,6 +226,18 @@ public class TaxonServiceSearchTest extends CdmTransactionalIntegrationTest {
         List<UuidAndTitleCache<IdentifiableEntity>> list = taxonService.findTaxaAndNamesForEditor(configurator);\r
 \r
          Assert.assertEquals("Expecting one entity", 1, list.size());\r
+         \r
+         configurator.setTitleSearchString("silver fir");\r
+         configurator.setMatchMode(MatchMode.BEGINNING);\r
+         configurator.setDoTaxa(false);\r
+         configurator.setDoSynonyms(false);\r
+         configurator.setDoNamesWithoutTaxa(true);\r
+         configurator.setDoTaxaByCommonNames(true);\r
+\r
+         list = taxonService.findTaxaAndNamesForEditor(configurator);\r
+\r
+         Assert.assertEquals("Expecting one entity", 1, list.size());\r
+         \r
     }\r
 \r
     @SuppressWarnings("rawtypes")\r
@@ -631,7 +642,7 @@ public class TaxonServiceSearchTest extends CdmTransactionalIntegrationTest {
         DescriptionElementBase textData = descriptionService.getDescriptionElementByUuid(UUID.fromString(descriptionElementUuidStr[0]));\r
 \r
         ((TextData)textData).removeText(Language.GERMAN());\r
-        ((TextData)textData).putText(Language.SPANISH_CASTILIAN(), "abeto balsámico");\r
+        ((TextData)textData).putText(Language.SPANISH_CASTILIAN(), "abeto bals"+UTF8.SMALL_A_ACUTE+"mico");\r
 \r
         descriptionService.saveDescriptionElement(textData);\r
         commitAndStartNewTransaction(null);\r
@@ -643,9 +654,9 @@ public class TaxonServiceSearchTest extends CdmTransactionalIntegrationTest {
         pager = taxonService.findByDescriptionElementFullText(TextData.class, "Balsam-Tanne", null, null, Arrays.asList(new Language[]{Language.GERMAN(), Language.RUSSIAN()}), false, null, null, null, null);\r
         Assert.assertEquals("The german 'Balsam-Tanne' TextData should no longer be indexed", Integer.valueOf(0), pager.getCount());\r
         pager = taxonService.findByDescriptionElementFullText(TextData.class, "abeto", null, null, Arrays.asList(new Language[]{Language.SPANISH_CASTILIAN()}), false, null, null, null, null);\r
-        Assert.assertEquals("expecting to find the SPANISH_CASTILIAN 'abeto balsámico'", Integer.valueOf(1), pager.getCount());\r
-        pager = taxonService.findByDescriptionElementFullText(TextData.class, "balsámico", null, null, null, false, null, null, null, null);\r
-        Assert.assertEquals("expecting to find the SPANISH_CASTILIAN 'abeto balsámico'", Integer.valueOf(1), pager.getCount());\r
+        Assert.assertEquals("expecting to find the SPANISH_CASTILIAN 'abeto bals"+UTF8.SMALL_A_ACUTE+"mico'", Integer.valueOf(1), pager.getCount());\r
+        pager = taxonService.findByDescriptionElementFullText(TextData.class, "bals"+UTF8.SMALL_A_ACUTE+"mico", null, null, null, false, null, null, null, null);\r
+        Assert.assertEquals("expecting to find the SPANISH_CASTILIAN 'abeto bals"+UTF8.SMALL_A_ACUTE+"mico'", Integer.valueOf(1), pager.getCount());\r
 \r
         //\r
         // modify the DescriptionElement via the Description object\r
@@ -654,15 +665,15 @@ public class TaxonServiceSearchTest extends CdmTransactionalIntegrationTest {
         for( DescriptionElementBase elm : elements){\r
             if(elm.getUuid().toString().equals(descriptionElementUuidStr[0])){\r
                 ((TextData)elm).removeText(Language.SPANISH_CASTILIAN());\r
-                ((TextData)elm).putText(Language.POLISH(), "JodÅ‚a balsamiczna");\r
+                ((TextData)elm).putText(Language.POLISH(), "Jod"+UTF8.POLISH_L+"a balsamiczna");\r
             }\r
         }\r
         descriptionService.saveOrUpdate(description);\r
         commitAndStartNewTransaction(null);\r
         pager = taxonService.findByDescriptionElementFullText(TextData.class, "abeto", null, null, Arrays.asList(new Language[]{Language.SPANISH_CASTILIAN()}), false, null, null, null, null);\r
-        Assert.assertEquals("The spanish 'abeto balsámico' TextData should no longer be indexed", Integer.valueOf(0), pager.getCount());\r
+        Assert.assertEquals("The spanish 'abeto bals"+UTF8.SMALL_A_ACUTE+"mico' TextData should no longer be indexed", Integer.valueOf(0), pager.getCount());\r
         pager = taxonService.findByDescriptionElementFullText(TextData.class, "balsamiczna", null, null, Arrays.asList(new Language[]{Language.POLISH()}), false, null, null, null, null);\r
-        Assert.assertEquals("expecting to find the POLISH 'JodÅ‚a balsamiczna'", Integer.valueOf(1), pager.getCount());\r
+        Assert.assertEquals("expecting to find the POLISH 'Jod"+UTF8.POLISH_L+"a balsamiczna'", Integer.valueOf(1), pager.getCount());\r
     }\r
 \r
     @SuppressWarnings("rawtypes")\r
@@ -696,7 +707,7 @@ public class TaxonServiceSearchTest extends CdmTransactionalIntegrationTest {
         d_abies_balsamea_new\r
                 .addElement(TextData\r
                         .NewInstance(\r
-                                "Die Balsamtanne ist mit bis zu 30 m HÃ\83¶he ein mittelgro"+UTF8.SHARP_S+"er Baum und kann bis zu 200 Jahre alt werden",\r
+                                "Die Balsamtanne ist mit bis zu 30 m Höhe ein mittelgro"+UTF8.SHARP_S+"er Baum und kann bis zu 200 Jahre alt werden",\r
                                 Language.GERMAN(), null));\r
         t_abies_balsamea.addDescription(d_abies_balsamea_new);\r
         // set authorshipCache to null to avoid validation exception,\r
@@ -1173,7 +1184,7 @@ public class TaxonServiceSearchTest extends CdmTransactionalIntegrationTest {
 //        createRandomTaxonWithCommonName(NUM_OF_NEW_RADOM_ENTITIES);\r
 //\r
 //        IFindTaxaAndNamesConfigurator configurator = new FindTaxaAndNamesConfiguratorImpl();\r
-//        configurator.setTitleSearchString("Weiß%");\r
+//        configurator.setTitleSearchString("Wei"+UTF8.SHARP_S+"%");\r
 //        configurator.setMatchMode(MatchMode.BEGINNING);\r
 //        configurator.setDoTaxa(false);\r
 //        configurator.setDoSynonyms(false);\r
@@ -1368,12 +1379,12 @@ public class TaxonServiceSearchTest extends CdmTransactionalIntegrationTest {
         d_abies_balsamea\r
                 .addElement(TextData\r
                         .NewInstance(\r
-                                "Бальзам Ð½ÑŒÑ‹Ð² (лат. Abies balsamea) â€“ Ð±Ñ‹Ð´Ð¼Ð°Ñ�Ñ�Ñ�злӧн Ð¿Ð¾Ð¶ÑƒÐ¼ ÐºÐ¾Ñ‚ыриÑ�ÑŒ Ð½ÑŒÑ‹Ð² ÑƒÐ²Ñ‚ырын Ñ‚орьÑ� Ð²Ð¸Ð´. Ð�ьывпуыÑ� Ð±Ñ‹Ð´Ð¼Ó§ 14–20 Ð¼ÐµÑ‚ра Ð²Ñ‹Ð»Ñ‹Ð½Ð° Ð´Ð° Ð¾Ð²Ð»Ó§ 10–60 Ñ�м ÐºÑ‹Ð·Ð° Ð´Ð¸Ð°Ð¼ÐµÑ‚рын. Ð�ьывпу Ð¿Ð°Ð½Ñ‚аÑ�ьӧ ÐžÐ¹Ð²Ñ‹Ð² Ð�мерикаын.",\r
+                                       TaxonServiceSearchTestUtf8Constants.RUSSIAN_ABIES_ALBA_LONG,\r
                                 Language.RUSSIAN(), null));\r
         d_abies_balsamea\r
         .addElement(CommonTaxonName\r
                 .NewInstance(\r
-                        "Бальзам Ð½ÑŒÑ‹Ð²",\r
+                               TaxonServiceSearchTestUtf8Constants.RUSSIAN_ABIES_ALBA_SHORT,\r
                         Language.RUSSIAN(), null));\r
         descriptionService.saveOrUpdate(d_abies_balsamea);\r
 \r