bugfix for changeSynonymToAcceptedTaxon (#2556)
[cdmlib.git] / cdmlib-services / src / test / java / eu / etaxonomy / cdm / api / service / TaxonServiceImplTest.java
index 4758d65a848b8e1982fb7cb6755498e85be00878..0a95b608c21c9ff5a29b71af8d5b7e24597ef82f 100644 (file)
@@ -132,20 +132,25 @@ public class TaxonServiceImplTest extends CdmIntegrationTest {
        }\r
        \r
        @Test\r
-       public final void testMakeSynonymTaxon(){\r
+       public final void testChangeSynonymToAcceptedTaxon(){\r
                Rank rank = Rank.SPECIES();\r
                //HomotypicalGroup group = HomotypicalGroup.NewInstance();\r
                Taxon tax1 = Taxon.NewInstance(BotanicalName.NewInstance(rank, "Test1", null, null, null, null, null, null, null), null);\r
                Taxon tax2 = Taxon.NewInstance(BotanicalName.NewInstance(rank, "Test3", null, null, null, null, null, null, null), null);\r
                Synonym synonym = Synonym.NewInstance(BotanicalName.NewInstance(rank, "Test2", null, null, null, null, null, null, null), null);\r
+               Synonym synonym2 = Synonym.NewInstance(BotanicalName.NewInstance(rank, "Test4", null, null, null, null, null, null, null), null);\r
+               synonym2.getName().setHomotypicalGroup(synonym.getHomotypicGroup());\r
                //tax2.addHeterotypicSynonymName(synonym.getName());\r
                tax2.addSynonym(synonym, SynonymRelationshipType.HETEROTYPIC_SYNONYM_OF());\r
-               BotanicalName name = (BotanicalName)synonym.getName();\r
-               UUID uuidTaxon = service.save(tax1);\r
+               tax2.addSynonym(synonym2, SynonymRelationshipType.HETEROTYPIC_SYNONYM_OF());\r
+               \r
+               service.save(tax1);\r
                UUID uuidSyn = service.save(synonym);\r
-               UUID uuidGenus = service.save(tax2);\r
+               service.save(synonym2);\r
+               service.save(tax2);\r
                \r
-               Taxon tax = service.changeSynonymToAcceptedTaxon(synonym, tax2, true, true, null, null);\r
+               service.changeSynonymToAcceptedTaxon(synonym, tax2, true, true, null, null);\r
+               //test flush (resave deleted object)\r
                TaxonBase<?> syn = service.find(uuidSyn);\r
                assertNull(syn);\r
                \r