Project

General

Profile

Download (3.43 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2017 EDIT
3
* European Distributed Institute of Taxonomy
4
* http://www.e-taxonomy.eu
5
*
6
* The contents of this file are subject to the Mozilla Public License Version 1.1
7
* See LICENSE.TXT at the top of this package for the full license terms.
8
*/
9
package eu.etaxonomy.cdm.vaadin.util.converter;
10

    
11
import static org.junit.Assert.assertEquals;
12
import static org.junit.Assert.assertNotNull;
13

    
14
import java.util.ArrayList;
15
import java.util.Iterator;
16
import java.util.List;
17

    
18
import org.apache.log4j.Logger;
19
import org.junit.Test;
20

    
21
import eu.etaxonomy.cdm.model.name.NameTypeDesignation;
22
import eu.etaxonomy.cdm.model.name.Rank;
23
import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignation;
24
import eu.etaxonomy.cdm.model.name.SpecimenTypeDesignationStatus;
25
import eu.etaxonomy.cdm.model.name.TaxonName;
26
import eu.etaxonomy.cdm.model.name.TaxonNameFactory;
27
import eu.etaxonomy.cdm.model.name.TypeDesignationBase;
28
import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
29
import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
30
import eu.etaxonomy.cdm.model.reference.Reference;
31
import eu.etaxonomy.cdm.model.reference.ReferenceFactory;
32
import eu.etaxonomy.cdm.vaadin.CdmVaadinBaseTest;
33
import eu.etaxonomy.cdm.vaadin.view.registration.RegistrationValidationException;
34

    
35
/**
36
 * @author a.kohlbecker
37
 * @since Mar 10, 2017
38
 *
39
 */
40
public class TypeDesignationConverterTest extends CdmVaadinBaseTest{
41

    
42

    
43
    @Test
44
    public void test1() throws RegistrationValidationException{
45

    
46
        TaxonName typifiedName = TaxonNameFactory.NewBacterialInstance(Rank.SPECIES());
47
        typifiedName.setTitleCache("Prionus coriatius L.", true);
48

    
49
        NameTypeDesignation ntd = NameTypeDesignation.NewInstance();
50
        TaxonName typeName = TaxonNameFactory.NewBacterialInstance(Rank.SPECIES());
51
        typeName.setTitleCache("Prionus L.", true);
52
        ntd.setTypeName(typeName);
53
        Reference citation = ReferenceFactory.newGeneric();
54
        citation.setTitleCache("Species Platarum", true);
55
        ntd.setCitation(citation);
56

    
57
        typifiedName.addTypeDesignation(ntd, false);
58

    
59
        SpecimenTypeDesignation std_HT = SpecimenTypeDesignation.NewInstance();
60
        DerivedUnit specimen_HT = DerivedUnit.NewInstance(SpecimenOrObservationType.PreservedSpecimen);
61
        specimen_HT.setTitleCache("OHA", true);
62
        std_HT.setTypeSpecimen(specimen_HT);
63
        std_HT.setTypeStatus(SpecimenTypeDesignationStatus.HOLOTYPE());
64
        typifiedName.addTypeDesignation(std_HT, false);
65

    
66
        SpecimenTypeDesignation std_IT = SpecimenTypeDesignation.NewInstance();
67
        DerivedUnit specimen_IT = DerivedUnit.NewInstance(SpecimenOrObservationType.PreservedSpecimen);
68
        specimen_IT.setTitleCache("BER", true);
69
        std_IT.setTypeSpecimen(specimen_IT);
70
        std_IT.setTypeStatus(SpecimenTypeDesignationStatus.ISOTYPE());
71
        typifiedName.addTypeDesignation(std_IT, false);
72

    
73
        List<TypeDesignationBase> tds = new ArrayList<>();
74
        tds.add(ntd);
75
        tds.add(std_IT);
76
        tds.add(std_HT);
77

    
78
        TypeDesignationConverter typeDesignationConverter = new TypeDesignationConverter(tds);
79
        String result = typeDesignationConverter.buildString().print();
80
        Logger.getLogger(this.getClass()).debug(result);
81
        assertNotNull(result);
82
        Iterator<String> keyIt = typeDesignationConverter.getOrderedTypeDesignationRepresentations().keySet().iterator();
83
        assertEquals("Holotype", keyIt.next());
84
        assertEquals("Isotype", keyIt.next());
85
    }
86

    
87
}
    (1-1/1)