Project

General

Profile

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

    
12
import java.sql.SQLException;
13
import java.util.Collection;
14

    
15
import org.apache.log4j.Logger;
16
import org.junit.Assert;
17
import org.junit.BeforeClass;
18
import org.junit.Ignore;
19
import org.junit.Test;
20
import org.unitils.dbunit.annotation.DataSet;
21

    
22
import com.vaadin.data.Item;
23
import com.vaadin.data.util.sqlcontainer.RowId;
24

    
25
import eu.etaxonomy.cdm.vaadin.CdmVaadinBaseTest;
26
import eu.etaxonomy.cdm.vaadin.container.CdmSQLContainer;
27
import eu.etaxonomy.cdm.vaadin.container.LeafNodeTaxonContainer;
28
import eu.etaxonomy.cdm.vaadin.view.IStatusComposite;
29

    
30

    
31
/**
32
 * @author cmathew
33
 * @date 10 Mar 2015
34
 *
35
 */
36
@DataSet
37

    
38
public class StatusPresenterTest extends CdmVaadinBaseTest {
39

    
40
    private static final Logger logger = Logger.getLogger(StatusPresenterTest.class);
41

    
42
    private static StatusPresenter sp;
43

    
44
    @BeforeClass
45
    public static void init() {
46
        sp = new StatusPresenter(new MockStatusComposite());
47
    }
48

    
49
    @Test
50
    public void testLoadTaxa() throws SQLException {
51
        LeafNodeTaxonContainer container = sp.loadTaxa(11);
52

    
53
        Collection<?> propIds = container.getContainerPropertyIds();
54
        Collection<?> itemIds = container.getItemIds();
55
        for(Object itemId : itemIds) {
56
            Item item = container.getItem(itemId);
57
            // column names need to be uppercase for h2 in the test environment
58
            String taxon = (String)item.getItemProperty("Name").getValue();
59
            logger.info("taxon : " + taxon);
60
        }
61
        Assert.assertEquals(3,itemIds.size());
62

    
63
        sp.setUnplacedFilter();
64
        itemIds = container.getItemIds();
65
        Assert.assertEquals(1,itemIds.size());
66

    
67
        sp.removeUnplacedFilter();
68
        itemIds = container.getItemIds();
69
        Assert.assertEquals(3,itemIds.size());
70

    
71
        sp.setNameFilter("Taxon A");
72
        itemIds = container.getItemIds();
73
        Assert.assertEquals(1,itemIds.size());
74

    
75

    
76
    }
77

    
78
    @Test
79
    public void testLoadSynonyms() throws SQLException {
80
        LeafNodeTaxonContainer container = sp.loadTaxa(11);
81

    
82
        Collection<?> rootItemIds = container.rootItemIds();
83
        Assert.assertEquals(3,rootItemIds.size());
84

    
85
        RowId taxonId10 = new RowId(10);
86
        RowId taxonId11 = new RowId(11);
87
        Collection<?> childIds = container.getChildren(taxonId10);
88
        Assert.assertEquals(2, childIds.size());
89

    
90
        Assert.assertEquals(true, container.areChildrenAllowed(taxonId10));
91
        Assert.assertEquals(false, container.areChildrenAllowed(taxonId11));
92
    }
93

    
94
    @Test
95
    public void updatePublishFlag() throws SQLException {
96
        LeafNodeTaxonContainer container = sp.loadTaxa(11);
97
        RowId taxonId = new RowId(10);
98
        boolean pb = (Boolean) container.getItem(taxonId).getItemProperty(LeafNodeTaxonContainer.PB_ID).getValue();
99
        Assert.assertTrue(pb);
100
        sp.updatePublished(false, taxonId);
101
        container.refresh();
102
        pb = (Boolean) container.getItem(taxonId).getItemProperty(LeafNodeTaxonContainer.PB_ID).getValue();
103
        Assert.assertFalse(pb);
104
    }
105

    
106
    @Ignore
107
    @Test
108
    public void testLoadClassifications() throws SQLException {
109
        CdmSQLContainer container = sp.loadClassifications();
110
        Collection<?> itemIds = container.getItemIds();
111
        String[] uuids = {"6595638e-4993-421a-9fe5-76b09d94f36a", "1ef8aada-de72-4023-bbe1-14465b6bc60d"};
112
        int count = 0;
113
        for(Object itemId : itemIds) {
114
            Item item = container.getItem(itemId);
115

    
116
            String uuid = (String)item.getItemProperty("UUID").getValue();
117
            Assert.assertEquals(uuids[count], uuid);
118
            String titleCache = (String)item.getItemProperty("TITLECACHE").getValue();
119
            logger.info("titleCache : " + titleCache);
120
            count++;
121

    
122
        }
123
    }
124

    
125
    public static class MockStatusComposite implements IStatusComposite {
126

    
127
        /* (non-Javadoc)
128
         * @see eu.etaxonomy.cdm.vaadin.view.IStatusComposite#setListener(eu.etaxonomy.cdm.vaadin.view.IStatusComposite.StatusComponentListener)
129
         */
130
        @Override
131
        public void setListener(StatusComponentListener listener) {
132
            // TODO Auto-generated method stub
133

    
134
        }
135

    
136
    }
137
}
    (1-1/1)