Project

General

Profile

« Previous | Next » 

Revision 4bbe7b5a

Added by Alexander Oppermann about 10 years ago

Generate CSV file from pojo

View differences:

.gitattributes
2093 2093
cdmlib-remote/src/test/java/eu/etaxonomy/cdm/remote/service/AuthorityControllerTest.java -text
2094 2094
cdmlib-remote/src/test/java/eu/etaxonomy/cdm/remote/service/DataControllerTest.java -text
2095 2095
cdmlib-remote/src/test/java/eu/etaxonomy/cdm/remote/service/MetadataControllerTest.java -text
2096
cdmlib-remote/src/test/java/eu/etaxonomy/cdm/remote/view/JsonToCsvViewTest.java -text
2096 2097
cdmlib-remote/src/test/java/eu/etaxonomy/cdm/remote/view/OaiPmhViewTest.java -text
2097 2098
cdmlib-remote/src/test/java/eu/etaxonomy/cdm/remote/view/RdfViewTest.java -text
2098 2099
cdmlib-remote/src/test/java/eu/etaxonomy/cdm/test/function/GenericRemoteTester.java -text
cdmlib-remote/src/test/java/eu/etaxonomy/cdm/remote/view/JsonToCsvViewTest.java
1
package eu.etaxonomy.cdm.remote.view;
2

  
3
import java.io.File;
4
import java.net.URI;
5
import java.util.ArrayList;
6
import java.util.HashMap;
7
import java.util.Map;
8

  
9
import org.apache.log4j.Logger;
10
import org.dozer.Mapper;
11
import org.joda.time.DateTime;
12
import org.junit.Before;
13
import org.junit.Ignore;
14
import org.junit.Test;
15
import org.springframework.mock.web.MockHttpServletRequest;
16
import org.springframework.mock.web.MockHttpServletResponse;
17
import org.springframework.oxm.Marshaller;
18
import org.unitils.UnitilsJUnit4;
19
import org.unitils.spring.annotation.SpringApplicationContext;
20
import org.unitils.spring.annotation.SpringBeanByName;
21
import org.unitils.spring.annotation.SpringBeanByType;
22

  
23
import eu.etaxonomy.cdm.io.csv.redlist.demo.CsvDemoExportConfigurator;
24
import eu.etaxonomy.cdm.io.csv.redlist.demo.CsvDemoMetaDataRecord;
25
import eu.etaxonomy.cdm.io.csv.redlist.demo.CsvDemoRecord;
26
import eu.etaxonomy.cdm.model.common.LSID;
27
import eu.etaxonomy.cdm.model.taxon.Taxon;
28
import eu.etaxonomy.cdm.model.taxon.TaxonBase;
29
import eu.etaxonomy.cdm.remote.view.oaipmh.IdentifyView;
30
import eu.etaxonomy.cdm.remote.view.oaipmh.ListIdentifiersView;
31
import eu.etaxonomy.cdm.remote.view.oaipmh.ListMetadataFormatsView;
32
import eu.etaxonomy.cdm.remote.view.oaipmh.ListSetsView;
33
import eu.etaxonomy.cdm.remote.view.oaipmh.dc.ListRecordsView;
34

  
35
@Ignore
36
@SpringApplicationContext("file:./target/test-classes/eu/etaxonomy/cdm/applicationContext-test.xml")
37
public class JsonToCsvViewTest extends UnitilsJUnit4 {
38

  
39
    public static final Logger logger = Logger.getLogger(JsonToCsvViewTest.class);
40

  
41
    @SpringBeanByName
42
    private Marshaller marshaller;
43

  
44
    @SpringBeanByType
45
    private Mapper mapper;
46

  
47
    private Map<String,Object> model;
48
    private IdentifyView identifyView;
49
    private CsvDemoRecord demoRecord;
50
    private MockHttpServletRequest request;
51
    private MockHttpServletResponse response;
52

  
53
    private URI serverURI;
54

  
55
	private CsvDemoMetaDataRecord metaDataRecord;
56

  
57
	private CsvDemoExportConfigurator config;
58

  
59
    @Before
60
    public void setUp() throws Exception {
61
    
62
        model = new HashMap<String,Object>();
63
        identifyView = new IdentifyView();
64
        identifyView.setMarshaller(marshaller);
65
        
66
        metaDataRecord = new CsvDemoMetaDataRecord(true, "/tmp", "");
67
        config = CsvDemoExportConfigurator.NewInstance(null, null);
68

  
69
        demoRecord = new CsvDemoRecord(metaDataRecord, config);
70

  
71
        request = new MockHttpServletRequest();
72

  
73
        serverURI = new URI("localhost");
74

  
75
        request.setServerName(serverURI.toString());
76
        request.setServerPort(8090);
77
        response = new MockHttpServletResponse();
78
    }
79

  
80

  
81
    @Test
82
    public void testGetRecordView() throws Exception {
83

  
84
        Taxon taxon = Taxon.NewInstance(null, null);
85
        taxon.setTitleCache("TitleCache", true);
86
        taxon.setCreated(new DateTime());
87

  
88
        demoRecord.setScientificName(taxon.getTitleCache());
89
        demoRecord.setAuthorName("Author");
90
        demoRecord.setDatasetName("Classification");
91
        
92
        ArrayList<CsvDemoRecord> recordList = new ArrayList<CsvDemoRecord>();
93
        logger.info(recordList.size());
94
        recordList.add(demoRecord);
95
        recordList.add(demoRecord);
96
        recordList.add(demoRecord);
97
        logger.info(recordList.size());
98
        logger.info(recordList.get(0).getScientificName());
99
        model.put("csv", recordList);
100

  
101
        request.setRequestURI("/cgi-bin/oai?verb=GetRecord&identifier=urn:lsid:example.org:taxonconcepts:1&metadataPrefix=oai_dc");
102
        CsvFileDownloadView jview = new CsvFileDownloadView(new File("test"));
103
        jview.render(model, request, response);
104
//		System.out.println(new String(response.getContentAsByteArray()));
105
    }
106

  
107
}

Also available in: Unified diff