Project

General

Profile

Download (3.42 KB) Statistics
| Branch: | Tag: | Revision:
1
package eu.etaxonomy.cdm.remote.view;
2

    
3
import java.io.File;
4
import eu.etaxonomy.cdm.common.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.taxon.Taxon;
27
import eu.etaxonomy.cdm.remote.view.oaipmh.IdentifyView;
28

    
29
@Ignore
30
@SpringApplicationContext("file:./target/test-classes/eu/etaxonomy/cdm/applicationContext-test.xml")
31
public class JsonToCsvViewTest extends UnitilsJUnit4 {
32

    
33
    public static final Logger logger = Logger.getLogger(JsonToCsvViewTest.class);
34

    
35
    @SpringBeanByName
36
    private Marshaller marshaller;
37

    
38
    @SpringBeanByType
39
    private Mapper mapper;
40

    
41
    private Map<String,Object> model;
42
    private IdentifyView identifyView;
43
    private CsvDemoRecord demoRecord;
44
    private MockHttpServletRequest request;
45
    private MockHttpServletResponse response;
46

    
47
    private URI serverURI;
48

    
49
	private CsvDemoMetaDataRecord metaDataRecord;
50

    
51
	private CsvDemoExportConfigurator config;
52

    
53
    @Before
54
    public void setUp() throws Exception {
55

    
56
        model = new HashMap<String,Object>();
57
        identifyView = new IdentifyView();
58
        identifyView.setMarshaller(marshaller);
59

    
60
        metaDataRecord = new CsvDemoMetaDataRecord(true, "/tmp", "");
61
        config = CsvDemoExportConfigurator.NewInstance(null, null);
62

    
63
        demoRecord = new CsvDemoRecord(metaDataRecord, config);
64

    
65
        request = new MockHttpServletRequest();
66

    
67
        serverURI = new URI("localhost");
68

    
69
        request.setServerName(serverURI.toString());
70
        request.setServerPort(8090);
71
        response = new MockHttpServletResponse();
72
    }
73

    
74

    
75
    @Test
76
    public void testGetRecordView() throws Exception {
77

    
78
        Taxon taxon = Taxon.NewInstance(null, null);
79
        taxon.setTitleCache("TitleCache", true);
80
        taxon.setCreated(new DateTime());
81

    
82
        demoRecord.setScientificName(taxon.getTitleCache());
83
        demoRecord.setAuthorName("Author");
84
        demoRecord.setDatasetName("Classification");
85

    
86
        ArrayList<CsvDemoRecord> recordList = new ArrayList<CsvDemoRecord>();
87
        logger.info(recordList.size());
88
        recordList.add(demoRecord);
89
        recordList.add(demoRecord);
90
        recordList.add(demoRecord);
91
        logger.info(recordList.size());
92
        logger.info(recordList.get(0).getScientificName());
93
        model.put("csv", recordList);
94

    
95
        request.setRequestURI("/cgi-bin/oai?verb=GetRecord&identifier=urn:lsid:example.org:taxonconcepts:1&metadataPrefix=oai_dc");
96
        CsvFileDownloadView jview = new CsvFileDownloadView(new File("test"));
97
        jview.render(model, request, response);
98
//		System.out.println(new String(response.getContentAsByteArray()));
99
    }
100

    
101
}
(1-1/3)