Revision 9dc896c9
Added by Andreas Müller almost 7 years ago
cdmlib-services/src/test/java/eu/etaxonomy/cdm/api/service/NameServiceImplTest.java | ||
---|---|---|
36 | 36 |
import eu.etaxonomy.cdm.model.name.Rank; |
37 | 37 |
import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignation; |
38 | 38 |
import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignationStatus; |
39 |
import eu.etaxonomy.cdm.model.name.TaxonNameBase;
|
|
39 |
import eu.etaxonomy.cdm.model.name.TaxonName; |
|
40 | 40 |
import eu.etaxonomy.cdm.model.name.TaxonNameFactory; |
41 | 41 |
import eu.etaxonomy.cdm.model.name.TypeDesignationBase; |
42 | 42 |
import eu.etaxonomy.cdm.model.occurrence.DerivedUnit; |
... | ... | |
115 | 115 |
*/ |
116 | 116 |
@Test |
117 | 117 |
@DataSet(loadStrategy=CleanSweepInsertLoadStrategy.class) |
118 |
public void testDeleteTaxonNameBaseWithNameRelations() {
|
|
118 |
public void testDeleteTaxonNameWithNameRelations() { |
|
119 | 119 |
|
120 |
final String[] tableNames = new String[]{"USERACCOUNT", "TaxonNameBase","NameRelationship","HybridRelationship","DescriptionBase","NomenclaturalStatus","TaxonBase","SpecimenOrObservationBase","OriginalSourceBase","DescriptionElementBase"};
|
|
120 |
final String[] tableNames = new String[]{"USERACCOUNT", "TaxonName","NameRelationship","HybridRelationship","DescriptionBase","NomenclaturalStatus","TaxonBase","SpecimenOrObservationBase","OriginalSourceBase","DescriptionElementBase"}; |
|
121 | 121 |
// printDataSetWithNull(System.err, true, null); |
122 | 122 |
|
123 |
TaxonNameBase<?,?> name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
123 |
TaxonName<?,?> name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
124 | 124 |
name1.setTitleCache("Name1", true); |
125 |
TaxonNameBase<?,?> nameWithBasionym = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
125 |
TaxonName<?,?> nameWithBasionym = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
126 | 126 |
nameWithBasionym.setTitleCache("nameWithBasionym", true); |
127 | 127 |
|
128 | 128 |
NameRelationshipType nameRelType = (NameRelationshipType)termService.find(NameRelationshipType.BASIONYM().getUuid()); |
... | ... | |
162 | 162 |
|
163 | 163 |
@Test |
164 | 164 |
@DataSet(loadStrategy=CleanSweepInsertLoadStrategy.class) |
165 |
public void testDeleteTaxonNameBaseConfiguratorWithNameRelations() {
|
|
166 |
final String[] tableNames = new String[]{"TaxonNameBase","NameRelationship","HybridRelationship"};
|
|
165 |
public void testDeleteTaxonNameConfiguratorWithNameRelations() { |
|
166 |
final String[] tableNames = new String[]{"TaxonName","NameRelationship","HybridRelationship"}; |
|
167 | 167 |
|
168 |
// printDataSet(System.err, new String[]{"TaxonNameBase","NameRelationship","HybridRelationship","DescriptionBase","NomenclaturalStatus","TaxonBase","SpecimenOrObservationBase","OriginalSourceBase",
|
|
168 |
// printDataSet(System.err, new String[]{"TaxonName","NameRelationship","HybridRelationship","DescriptionBase","NomenclaturalStatus","TaxonBase","SpecimenOrObservationBase","OriginalSourceBase", |
|
169 | 169 |
// "DescriptionElementBase", |
170 | 170 |
// "AGENTBASE", "USERACCOUNT", "PERMISSIONGROUP", "USERACCOUNT_PERMISSIONGROUP", "USERACCOUNT_GRANTEDAUTHORITYIMPL", "GRANTEDAUTHORITYIMPL"}); |
171 | 171 |
|
172 |
TaxonNameBase<?,?> name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
172 |
TaxonName name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
173 | 173 |
name1.setTitleCache("Name1", true); |
174 |
TaxonNameBase<?,?> nameWithBasionym = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
174 |
TaxonName nameWithBasionym = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
175 | 175 |
nameWithBasionym.setTitleCache("nameWithBasionym", true); |
176 | 176 |
|
177 | 177 |
NameRelationshipType nameRelType = (NameRelationshipType)termService.find(NameRelationshipType.BASIONYM().getUuid()); |
... | ... | |
205 | 205 |
* Test method for {@link eu.etaxonomy.cdm.api.service.NameServiceImpl#generateTitleCache()}. |
206 | 206 |
*/ |
207 | 207 |
@Test |
208 |
public void testDeleteTaxonNameBaseConfiguratorWithNameRelationsAll() {
|
|
209 |
final String[] tableNames = new String[]{"TaxonNameBase","NameRelationship","HybridRelationship"};
|
|
208 |
public void testDeleteTaxonNameConfiguratorWithNameRelationsAll() { |
|
209 |
final String[] tableNames = new String[]{"TaxonName","NameRelationship","HybridRelationship"}; |
|
210 | 210 |
|
211 |
TaxonNameBase<?,?> name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
211 |
TaxonName name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
212 | 212 |
name1.setTitleCache("Name1", true); |
213 |
TaxonNameBase<?,?> nameWithBasionym = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
213 |
TaxonName nameWithBasionym = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
214 | 214 |
nameWithBasionym.setTitleCache("nameWithBasionym", true); |
215 | 215 |
|
216 | 216 |
NameRelationshipType nameRelType = (NameRelationshipType)termService.find(NameRelationshipType.BASIONYM().getUuid()); |
... | ... | |
244 | 244 |
* Test method for {@link eu.etaxonomy.cdm.api.service.NameServiceImpl#generateTitleCache()}. |
245 | 245 |
*/ |
246 | 246 |
@Test |
247 |
public void testDeleteTaxonNameBaseConfiguratorWithHasBasionym() {
|
|
248 |
final String[] tableNames = new String[]{"TaxonNameBase","NameRelationship","HybridRelationship"};
|
|
247 |
public void testDeleteTaxonNameConfiguratorWithHasBasionym() { |
|
248 |
final String[] tableNames = new String[]{"TaxonName","NameRelationship","HybridRelationship"}; |
|
249 | 249 |
|
250 |
TaxonNameBase<?,?> name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
250 |
TaxonName name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
251 | 251 |
name1.setTitleCache("Name1", true); |
252 |
TaxonNameBase<?,?> basionym = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
252 |
TaxonName basionym = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
253 | 253 |
basionym.setTitleCache("basionym", true); |
254 | 254 |
|
255 | 255 |
NameRelationshipType nameRelType = (NameRelationshipType)termService.find(NameRelationshipType.BASIONYM().getUuid()); |
... | ... | |
289 | 289 |
*/ |
290 | 290 |
@Test |
291 | 291 |
// @Ignore //currently does not run in suite |
292 |
public void testDeleteTaxonNameBaseWithHybridRelations() {
|
|
293 |
final String[] tableNames = new String[]{"TaxonNameBase","NameRelationship","HybridRelationship"};
|
|
292 |
public void testDeleteTaxonNameWithHybridRelations() { |
|
293 |
final String[] tableNames = new String[]{"TaxonName","NameRelationship","HybridRelationship"}; |
|
294 | 294 |
|
295 |
TaxonNameBase<?,?> name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
295 |
TaxonName name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
296 | 296 |
name1.setTitleCache("Name1", true); |
297 |
TaxonNameBase<?,?> parent = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
297 |
TaxonName parent = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
298 | 298 |
parent.setTitleCache("parent", true); |
299 |
TaxonNameBase<?,?> child = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
299 |
TaxonName child = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
300 | 300 |
child.setTitleCache("child", true); |
301 | 301 |
|
302 | 302 |
HybridRelationshipType relType = (HybridRelationshipType)termService.find(HybridRelationshipType.FIRST_PARENT().getUuid()); |
... | ... | |
349 | 349 |
*/ |
350 | 350 |
@Test |
351 | 351 |
@DataSet(loadStrategy=CleanSweepInsertLoadStrategy.class) |
352 |
public void testDeleteTaxonNameBaseInConcept() {
|
|
353 |
final String[] tableNames = new String[]{"TaxonNameBase","TaxonBase"};
|
|
352 |
public void testDeleteTaxonNameInConcept() { |
|
353 |
final String[] tableNames = new String[]{"TaxonName","TaxonBase"}; |
|
354 | 354 |
|
355 |
TaxonNameBase<?,?> name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
355 |
TaxonName name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
356 | 356 |
name1.setTitleCache("Name1", true); |
357 |
TaxonNameBase<?,?> basionym = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
357 |
TaxonName basionym = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
358 | 358 |
basionym.setTitleCache("basionym", true); |
359 | 359 |
|
360 | 360 |
Taxon taxon = Taxon.NewInstance(name1, null); |
... | ... | |
368 | 368 |
if (result.isOk()){ |
369 | 369 |
Assert.fail("Delete should throw an error as long as name is used in a concept."); |
370 | 370 |
} |
371 |
TaxonNameBase<?,?> nameBase =nameService.find(name1.getUuid());
|
|
371 |
TaxonName nameBase =nameService.find(name1.getUuid()); |
|
372 | 372 |
Assert.assertNotNull("Name should still be in database",nameBase); |
373 | 373 |
TaxonBase<?> taxonBase = taxonService.find(taxon.getUuid()); |
374 | 374 |
Assert.assertNotNull("Taxon should still be in database",taxonBase); |
... | ... | |
396 | 396 |
*/ |
397 | 397 |
@Test |
398 | 398 |
@DataSet(loadStrategy=CleanSweepInsertLoadStrategy.class) |
399 |
public void testDeleteTaxonNameBaseAsStoredUnder() {
|
|
400 |
final String[] tableNames = new String[]{"TaxonNameBase","SpecimenOrObservationBase"};
|
|
399 |
public void testDeleteTaxonNameAsStoredUnder() { |
|
400 |
final String[] tableNames = new String[]{"TaxonName","SpecimenOrObservationBase"}; |
|
401 | 401 |
|
402 |
TaxonNameBase<?,?> name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
402 |
TaxonName name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
403 | 403 |
name1.setTitleCache("Name1", true); |
404 | 404 |
DerivedUnit specimen = DerivedUnit.NewPreservedSpecimenInstance(); |
405 | 405 |
specimen.setStoredUnder(name1); |
... | ... | |
438 | 438 |
*/ |
439 | 439 |
@Test |
440 | 440 |
@Ignore //currently does not run in suite |
441 |
public void testDeleteTaxonNameBaseInSource() {
|
|
442 |
final String[] tableNames = new String[]{"TaxonNameBase","DescriptionBase","TaxonBase","OriginalSourceBase","DescriptionElementBase"};
|
|
441 |
public void testDeleteTaxonNameInSource() { |
|
442 |
final String[] tableNames = new String[]{"TaxonName","DescriptionBase","TaxonBase","OriginalSourceBase","DescriptionElementBase"}; |
|
443 | 443 |
|
444 |
TaxonNameBase<?,?> name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
444 |
TaxonName name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
445 | 445 |
name1.setTitleCache("Name1", true); |
446 |
TaxonNameBase<?,?> taxonName = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
446 |
TaxonName taxonName = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
447 | 447 |
taxonName.setTitleCache("taxonName", true); |
448 | 448 |
Taxon taxon = Taxon.NewInstance(taxonName, null); |
449 | 449 |
|
... | ... | |
496 | 496 |
*/ |
497 | 497 |
@Test |
498 | 498 |
|
499 |
public void testDeleteTaxonNameBaseAsType() {
|
|
500 |
final String[] tableNames = new String[]{"TaxonNameBase","TypeDesignationBase","TaxonNameBase_TypeDesignationBase"};
|
|
499 |
public void testDeleteTaxonNameAsType() { |
|
500 |
final String[] tableNames = new String[]{"TaxonName","TypeDesignationBase","TaxonName_TypeDesignationBase"};
|
|
501 | 501 |
|
502 |
TaxonNameBase<?,?> name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
502 |
TaxonName name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
503 | 503 |
name1.setTitleCache("Name used as type", true); |
504 | 504 |
|
505 |
TaxonNameBase<?,?> higherName = TaxonNameFactory.NewBotanicalInstance(getGenusRank());
|
|
505 |
TaxonName<?,?> higherName = TaxonNameFactory.NewBotanicalInstance(getGenusRank()); |
|
506 | 506 |
higherName.setTitleCache("genus name", true); |
507 | 507 |
NameTypeDesignationStatus typeStatus = (NameTypeDesignationStatus)termService.find(NameTypeDesignationStatus.AUTOMATIC().getUuid()); |
508 | 508 |
boolean addToAllHomotypicNames = true; |
... | ... | |
540 | 540 |
*/ |
541 | 541 |
@Test |
542 | 542 |
|
543 |
public void testDeleteTaxonNameBase() {
|
|
544 |
final String[] tableNames = new String[]{"TaxonNameBase","NameRelationship","HybridRelationship","DescriptionBase","NomenclaturalStatus","TaxonBase","SpecimenOrObservationBase","OriginalSourceBase","DescriptionElementBase","TypeDesignationBase","TaxonNameBase_TypeDesignationBase"};
|
|
543 |
public void testDeleteTaxonName() { |
|
544 |
final String[] tableNames = new String[]{"TaxonName","NameRelationship","HybridRelationship","DescriptionBase","NomenclaturalStatus","TaxonBase","SpecimenOrObservationBase","OriginalSourceBase","DescriptionElementBase","TypeDesignationBase","TaxonName_TypeDesignationBase"};
|
|
545 | 545 |
|
546 |
TaxonNameBase<?,?> name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
546 |
TaxonName name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
547 | 547 |
name1.setTitleCache("Name1", true); |
548 | 548 |
|
549 | 549 |
//TaxonNameDescription |
... | ... | |
614 | 614 |
* Test method for {@link eu.etaxonomy.cdm.api.service.NameServiceImpl#generateTitleCache()}. |
615 | 615 |
*/ |
616 | 616 |
@Test |
617 |
public void testDeleteTaxonNameBaseWithTypeInHomotypicalGroup() {
|
|
618 |
final String[] tableNames = new String[]{"TaxonNameBase","NameRelationship","HybridRelationship","DescriptionBase","NomenclaturalStatus","TaxonBase","SpecimenOrObservationBase","OriginalSourceBase","DescriptionElementBase","TypeDesignationBase","TaxonNameBase_TypeDesignationBase"};
|
|
617 |
public void testDeleteTaxonNameWithTypeInHomotypicalGroup() { |
|
618 |
final String[] tableNames = new String[]{"TaxonName","NameRelationship","HybridRelationship","DescriptionBase","NomenclaturalStatus","TaxonBase","SpecimenOrObservationBase","OriginalSourceBase","DescriptionElementBase","TypeDesignationBase","TaxonName_TypeDesignationBase"};
|
|
619 | 619 |
|
620 | 620 |
//Type Designations for homotypical group with > 1 names |
621 |
TaxonNameBase<?,?> name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
621 |
TaxonName name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
622 | 622 |
name1.setTitleCache("Name1 with type designation", true); |
623 |
TaxonNameBase<?,?> name2 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank());
|
|
623 |
TaxonName name2 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
|
624 | 624 |
name2.setTitleCache("Name2 with type designation", true); |
625 | 625 |
name2.setHomotypicalGroup(name1.getHomotypicalGroup()); |
626 | 626 |
|
... | ... | |
652 | 652 |
@DataSet(loadStrategy=CleanSweepInsertLoadStrategy.class) |
653 | 653 |
public void testDeleteTypeDesignation() { |
654 | 654 |
final String[] tableNames = new String[]{ |
655 |
"TaxonNameBase","TypeDesignationBase","TaxonNameBase_TypeDesignationBase",
|
|
655 |
"TaxonName","TypeDesignationBase","TaxonName_TypeDesignationBase",
|
|
656 | 656 |
"SpecimenOrObservationBase"}; |
657 | 657 |
|
658 | 658 |
// IBotanicalName name1 = TaxonNameFactory.NewBotanicalInstance(getSpeciesRank()); |
... | ... | |
697 | 697 |
// |
698 | 698 |
|
699 | 699 |
|
700 |
TaxonNameBase<?,?> name1 = this.nameService.load(UUID.fromString("6dbd41d1-fe13-4d9c-bb58-31f051c2c384"));
|
|
701 |
TaxonNameBase<?,?> name2 = this.nameService.load(UUID.fromString("f9e9c13f-5fa5-48d3-88cf-712c921a099e"));
|
|
702 |
TaxonNameBase<?,?> name3 = this.nameService.load(UUID.fromString("e1e66264-f16a-4df9-80fd-6ab5028a3c28"));
|
|
700 |
TaxonName name1 = this.nameService.load(UUID.fromString("6dbd41d1-fe13-4d9c-bb58-31f051c2c384")); |
|
701 |
TaxonName name2 = this.nameService.load(UUID.fromString("f9e9c13f-5fa5-48d3-88cf-712c921a099e")); |
|
702 |
TaxonName name3 = this.nameService.load(UUID.fromString("e1e66264-f16a-4df9-80fd-6ab5028a3c28")); |
|
703 | 703 |
DerivedUnit specimen1 = CdmBase.deproxy(this.occurrenceService.load(UUID.fromString("0d19a9ca-21a7-4adb-8640-8d6719e15eea")), DerivedUnit.class); |
704 | 704 |
DerivedUnit fossil = CdmBase.deproxy(this.occurrenceService.load(UUID.fromString("4c48b7c8-4c8d-4e48-b083-0837fe51a0a9")), DerivedUnit.class); |
705 | 705 |
|
... | ... | |
713 | 713 |
Assert.assertEquals("Specimen1 should be used in 1 type designation", 1, specimen1.getSpecimenTypeDesignations().size()); |
714 | 714 |
Assert.assertEquals("Fossil should be used in 1 type designation", 1, fossil.getSpecimenTypeDesignations().size()); |
715 | 715 |
|
716 |
nameService.deleteTypeDesignation((TaxonNameBase)null, null);
|
|
716 |
nameService.deleteTypeDesignation((TaxonName)null, null); |
|
717 | 717 |
|
718 | 718 |
commitAndStartNewTransaction(tableNames); |
719 | 719 |
|
... | ... | |
808 | 808 |
@DataSet |
809 | 809 |
public void testDeleteTypeDesignationAllNames() { |
810 | 810 |
final String[] tableNames = new String[]{ |
811 |
"TaxonNameBase","TypeDesignationBase",
|
|
812 |
"TaxonNameBase_TypeDesignationBase","SpecimenOrObservationBase"};
|
|
811 |
"TaxonName","TypeDesignationBase", |
|
812 |
"TaxonName_TypeDesignationBase","SpecimenOrObservationBase"}; |
|
813 | 813 |
|
814 | 814 |
|
815 |
TaxonNameBase<?,?> name1 = this.nameService.load(UUID.fromString("6dbd41d1-fe13-4d9c-bb58-31f051c2c384"));
|
|
816 |
TaxonNameBase<?,?> name2 = this.nameService.load(UUID.fromString("f9e9c13f-5fa5-48d3-88cf-712c921a099e"));
|
|
817 |
TaxonNameBase<?,?> name3 = this.nameService.load(UUID.fromString("e1e66264-f16a-4df9-80fd-6ab5028a3c28"));
|
|
815 |
TaxonName name1 = this.nameService.load(UUID.fromString("6dbd41d1-fe13-4d9c-bb58-31f051c2c384")); |
|
816 |
TaxonName name2 = this.nameService.load(UUID.fromString("f9e9c13f-5fa5-48d3-88cf-712c921a099e")); |
|
817 |
TaxonName name3 = this.nameService.load(UUID.fromString("e1e66264-f16a-4df9-80fd-6ab5028a3c28")); |
|
818 | 818 |
DerivedUnit specimen1 = CdmBase.deproxy(this.occurrenceService.load(UUID.fromString("0d19a9ca-21a7-4adb-8640-8d6719e15eea")), DerivedUnit.class); |
819 | 819 |
DerivedUnit fossil = CdmBase.deproxy(this.occurrenceService.load(UUID.fromString("4c48b7c8-4c8d-4e48-b083-0837fe51a0a9")), DerivedUnit.class); |
820 | 820 |
|
Also available in: Unified diff
fix #6368 rename table and class TaxonNameBase