3 * Copyright (C) 2015 EDIT
4 * European Distributed Institute of Taxonomy
5 * http://www.e-taxonomy.eu
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.
10 package eu
.etaxonomy
.taxeditor
.service
;
12 import java
.io
.FileNotFoundException
;
13 import java
.io
.FileOutputStream
;
14 import java
.io
.IOException
;
15 import java
.util
.HashSet
;
16 import java
.util
.List
;
17 import java
.util
.UUID
;
19 import org
.junit
.Assert
;
20 import org
.junit
.Test
;
21 import org
.unitils
.dbunit
.annotation
.DataSet
;
23 import eu
.etaxonomy
.cdm
.api
.application
.CdmApplicationState
;
24 import eu
.etaxonomy
.cdm
.api
.service
.INameService
;
25 import eu
.etaxonomy
.cdm
.io
.common
.ExportResult
;
26 import eu
.etaxonomy
.cdm
.io
.csv
.caryophyllales
.out
.CsvNameExportConfigurator
;
27 import eu
.etaxonomy
.cdm
.io
.csv
.redlist
.demo
.CsvDemoExportConfigurator
;
28 import eu
.etaxonomy
.cdm
.io
.jaxb
.JaxbExportConfigurator
;
29 import eu
.etaxonomy
.cdm
.io
.sdd
.out
.SDDExportConfigurator
;
30 import eu
.etaxonomy
.cdm
.io
.service
.IIOService
;
31 import eu
.etaxonomy
.taxeditor
.httpinvoker
.BaseRemotingTest
;
39 public class IOServiceExportTest
extends BaseRemotingTest
{
41 private final IIOService ioService
= CdmApplicationState
.getIOService();
42 private final INameService nameService
= CdmApplicationState
.getCurrentAppConfig().getNameService();
45 public void exportJaxbTest() {
46 JaxbExportConfigurator config
= JaxbExportConfigurator
.NewInstance(null, null);
47 ExportResult result
= ioService
.export(config
);
48 List
<byte[]> dataList
= result
.getExportData();
49 Assert
.assertEquals(1, dataList
.size());
50 byte[] exportData
= dataList
.get(0);
51 String savePath
= "target/exportjaxb.xml";
52 FileOutputStream stream
= null;
54 stream
= new FileOutputStream(savePath
);
55 stream
.write(exportData
);
56 } catch (FileNotFoundException e
) {
58 } catch (IOException e
) {
65 } catch (IOException e
) {
73 public void exportSDDTest() {
74 SDDExportConfigurator config
= SDDExportConfigurator
.NewInstance(null, null, null);
75 ExportResult result
= ioService
.export(config
);
76 List
<byte[]> dataList
= result
.getExportData();
77 Assert
.assertEquals(1, dataList
.size());
78 byte[] exportData
= dataList
.get(0);
79 String savePath
= "target/exportsdd.xml";
80 FileOutputStream stream
= null;
82 stream
= new FileOutputStream(savePath
);
83 stream
.write(exportData
);
84 } catch (FileNotFoundException e
) {
86 } catch (IOException e
) {
93 } catch (IOException e
) {
100 public void exportCSVTest() {
101 HashSet
<UUID
> set
= new HashSet
<UUID
>();
102 set
.add(UUID
.fromString("0c2b5d25-7b15-4401-8b51-dd4be0ee5cab"));
103 CsvDemoExportConfigurator config
= CsvDemoExportConfigurator
.NewInstance(null, null);
104 config
.setClassificationUuids(set
);
105 config
.setDoTaxa(true);
106 config
.setHasHeaderLines(true);
107 config
.setClassification(true);
108 config
.setTaxonName(true);
109 config
.setAuthor(true);
110 config
.setRank(true);
111 config
.setLastChange(true);
113 ExportResult result
= ioService
.export(config
);
114 List
<byte[]> dataList
= result
.getExportData();
115 Assert
.assertEquals(1, dataList
.size());
116 byte[] exportData
= dataList
.get(0);
117 String savePath
= "target/exportcsv.xml";
118 saveToFile(savePath
, exportData
);
122 public void exportCSVNameTest() {
123 CsvNameExportConfigurator config
= CsvNameExportConfigurator
.NewInstance(null,null);
124 ExportResult result
= ioService
.export(config
);
125 List
<byte[]> dataList
= result
.getExportData();
126 Assert
.assertEquals(1, dataList
.size());
127 byte[] exportData
= dataList
.get(0);
128 String savePath
= "target/exportcsvname.xml";
129 saveToFile(savePath
, exportData
);
133 public void exportCSVPrintTest() {
134 CsvNameExportConfigurator config
= CsvNameExportConfigurator
.NewInstance(null,null);
135 config
.setNamesOnly(false);
136 config
.setClassificationUUID(UUID
.fromString("0c2b5d25-7b15-4401-8b51-dd4be0ee5cab"));
137 ExportResult result
= ioService
.export(config
);
138 List
<byte[]> dataList
= result
.getExportData();
139 Assert
.assertEquals(1, dataList
.size());
140 byte[] exportData
= dataList
.get(0);
141 String savePath
= "target/exportcsvprint.xml";
142 saveToFile(savePath
, exportData
);
145 private static void saveToFile(String filePath
, byte[] data
) {
146 FileOutputStream stream
= null;
148 stream
= new FileOutputStream(filePath
);
150 } catch (FileNotFoundException e
) {
152 } catch (IOException e
) {
159 } catch (IOException e
) {