ckan2zenodo-library/src/test/java/org/gcube/tests/ParsingTests.java

94 lines
3.4 KiB
Java

package org.gcube.tests;
import java.io.IOException;
import org.gcube.data.publishing.ckan2zenodo.Fixer;
import org.gcube.data.publishing.ckan2zenodo.model.zenodo.ZenodoDeposition;
import org.junit.BeforeClass;
import org.junit.Test;
import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
public class ParsingTests {
static ObjectMapper mapper=null;
@BeforeClass
public static void init () {
mapper=TestCommons.getMapper();
}
@Test
public void DateTest() throws Exception {
for(String d:new String[] {"2019-11-29T14:54:42.542142","2016-06-15T16:10:03.319363+00:00","2019-11-30","2019-11-29T17:01:31.000160+0000"}) {
System.out.println(d);
System.out.println(Fixer.fixIncomingDateString(d));
System.out.println("--");
}
}
@Test
public void fullCircleFromIncoming() throws JsonParseException, JsonMappingException, IOException {
String s="{\n" +
" \"conceptrecid\": \"426311\",\n" +
" \"created\": \"2019-11-29T14:54:42.542142\",\n" +
" \"doi\": \"\",\n" +
" \"doi_url\": \"https://doi.org/\",\n" +
" \"id\": 426312,\n" +
" \"links\":\n" +
" {\n" +
" \"discard\": \"https://sandbox.zenodo.org/api/deposit/depositions/426312/actions/discard\",\n" +
" \"edit\": \"https://sandbox.zenodo.org/api/deposit/depositions/426312/actions/edit\",\n" +
" \"files\": \"https://sandbox.zenodo.org/api/deposit/depositions/426312/files\",\n" +
" \"html\": \"https://sandbox.zenodo.org/deposit/426312\",\n" +
" \"latest_draft\": \"https://sandbox.zenodo.org/api/deposit/depositions/426312\",\n" +
" \"latest_draft_html\": \"https://sandbox.zenodo.org/deposit/426312\",\n" +
" \"publish\": \"https://sandbox.zenodo.org/api/deposit/depositions/426312/actions/publish\",\n" +
" \"self\": \"https://sandbox.zenodo.org/api/deposit/depositions/426312\"\n" +
" },\n" +
" \"metadata\":\n" +
" {\n" +
" \"access_right\": \"open\",\n" +
" \"creators\": [\n" +
" {\n" +
" \"name\": \"simpleMan\"\n" +
" }],\n" +
" \"description\": \"Simple description\",\n" +
" \"doi\": \"\",\n" +
" \"license\": \"CC0-1.0\",\n" +
" \"prereserve_doi\":\n" +
" {\n" +
" \"doi\": \"10.5072/zenodo.426312\",\n" +
" \"recid\": 426312\n" +
" },\n" +
" \"publication_date\": \"2018-12-30\",\n" +
" \"title\": \"Test\",\n" +
" \"upload_type\": \"dataset\"\n" +
" },\n" +
" \"modified\": \"2019-11-29T14:54:43.203022\",\n" +
" \"owner\": 31041,\n" +
" \"record_id\": 426312,\n" +
" \"state\": \"unsubmitted\",\n" +
" \"submitted\": false,\n" +
" \"title\": \"Test\"\n" +
"}";
System.out.println("Sample String : ");
System.out.println(s);
System.out.println("READ (toString): ");
ZenodoDeposition dep=mapper.readValue(Fixer.fixIncoming(s), ZenodoDeposition.class);
System.out.println(dep);
System.out.println("READ (JSON): ");
String json=mapper.writeValueAsString(dep);
System.out.println(json);
System.out.println("FIXED JSON ");
String fixed=Fixer.fixSending(json);
System.out.println(fixed);
}
}