Project

General

Profile

Download (4.66 KB) Statistics
| Branch: | Tag: | Revision:
1
/**
2
* Copyright (C) 2015 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.taxeditor.service;
10

    
11
import java.io.FileOutputStream;
12
import java.io.IOException;
13
import java.util.HashSet;
14
import java.util.List;
15
import java.util.UUID;
16

    
17
import org.junit.Assert;
18
import org.junit.Test;
19
import org.unitils.dbunit.annotation.DataSet;
20

    
21
import eu.etaxonomy.cdm.api.application.CdmApplicationState;
22
import eu.etaxonomy.cdm.io.common.ExportResult;
23
import eu.etaxonomy.cdm.io.common.ExportResultType;
24
import eu.etaxonomy.cdm.io.csv.caryophyllales.out.CsvNameExportConfigurator;
25
import eu.etaxonomy.cdm.io.csv.redlist.demo.CsvDemoExportConfigurator;
26
import eu.etaxonomy.cdm.io.jaxb.JaxbExportConfigurator;
27
import eu.etaxonomy.cdm.io.sdd.out.SDDExportConfigurator;
28
import eu.etaxonomy.cdm.io.service.IIOService;
29
import eu.etaxonomy.taxeditor.httpinvoker.BaseRemotingTest;
30

    
31
/**
32
 * @author cmathew
33
 * @date 31 Jul 2015
34
 *
35
 */
36
@DataSet
37
public class IOServiceExportTest extends BaseRemotingTest {
38

    
39
    private final IIOService ioService = CdmApplicationState.getIOService();
40

    
41
    @Test
42
    public void exportJaxbTest() throws IOException {
43
        JaxbExportConfigurator config = JaxbExportConfigurator.NewInstance(null, null);
44
        ExportResult result = ioService.export(config);
45
        List<byte[]> dataList = (List<byte[]>)result.getExportData().getExportData();
46
        Assert.assertEquals(1, dataList.size());
47
        byte[] exportData = dataList.get(0);
48
        String savePath = "target/exportjaxb.xml";
49
        FileOutputStream stream = null;
50

    
51
        stream = new FileOutputStream(savePath);
52
        stream.write(exportData);
53
        stream.close();
54
    }
55

    
56
    @Test
57
    public void exportSDDTest() throws IOException {
58
        SDDExportConfigurator config = SDDExportConfigurator.NewInstance(null, null, null);
59
        ExportResult result = ioService.export(config);
60
        List<byte[]> dataList = (List<byte[]>)result.getExportData().getExportData();
61
        Assert.assertEquals(1, dataList.size());
62
        byte[] exportData = dataList.get(0);
63
        String savePath = "target/exportsdd.xml";
64
        FileOutputStream stream = null;
65

    
66
        stream = new FileOutputStream(savePath);
67
        stream.write(exportData);
68
        stream.close();
69

    
70
    }
71

    
72
    @Test
73
    public void exportCSVTest() throws IOException {
74
        HashSet<UUID> set = new HashSet<UUID>();
75
        set.add(UUID.fromString("0c2b5d25-7b15-4401-8b51-dd4be0ee5cab"));
76
        CsvDemoExportConfigurator config = CsvDemoExportConfigurator.NewInstance(null, null);
77
        config.setClassificationUuids(set);
78
        config.setDoTaxa(true);
79
        config.setHasHeaderLines(true);
80
        config.setClassification(true);
81
        config.setTaxonName(true);
82
        config.setAuthor(true);
83
        config.setRank(true);
84
        config.setLastChange(true);
85
        config.setResultType(ExportResultType.BYTE_ARRAY);
86

    
87

    
88
        ExportResult result = ioService.export(config);
89
        byte[] dataList =(byte[])result.getExportData().getExportData();
90
       // Assert.assertEquals(1, dataList.length);
91
       // byte[] exportData = dataList.get(0);
92
        String savePath = "target/exportcsv.xml";
93
        saveToFile(savePath, dataList);
94
    }
95

    
96
    @Test
97
    public void exportCSVNameTest() throws IOException {
98
        CsvNameExportConfigurator config = CsvNameExportConfigurator.NewInstance(null,null);
99
        ExportResult result = ioService.export(config);
100
        List<byte[]> dataList = (List<byte[]>)result.getExportData().getExportData();
101
        Assert.assertEquals(1, dataList.size());
102
        byte[] exportData = dataList.get(0);
103
        String savePath = "target/exportcsvname.xml";
104
        saveToFile(savePath, exportData);
105
    }
106

    
107
    @Test
108
    public void exportCSVPrintTest() throws IOException {
109
        CsvNameExportConfigurator config = CsvNameExportConfigurator.NewInstance(null,null);
110
        config.setNamesOnly(false);
111
        config.setClassificationUUID(UUID.fromString("0c2b5d25-7b15-4401-8b51-dd4be0ee5cab"));
112
        ExportResult result = ioService.export(config);
113
        List<byte[]> dataList =(List<byte[]>) result.getExportData().getExportData();
114
        Assert.assertEquals(1, dataList.size());
115
        byte[] exportData = dataList.get(0);
116
        String savePath = "target/exportcsvprint.xml";
117
        saveToFile(savePath, exportData);
118
    }
119

    
120
    private static void saveToFile(String filePath, byte[] data) throws IOException {
121
        FileOutputStream stream = null;
122
        stream = new FileOutputStream(filePath);
123
        stream.write(data);
124
        stream.close();
125
    }
126
}
(1-1/4)