package org.gbif.occurrence.persistence.util; import org.gbif.api.util.IsoDateParsingUtils.IsoDateFormat; import org.gbif.dwc.terms.DcTerm; import org.gbif.dwc.terms.Term; import org.gbif.occurrence.common.json.ExtensionSerDeserUtils; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import com.google.common.collect.Lists; import org.junit.Assert; import org.junit.Test; /** * Test class for ExtensionsUtil class. */ public class ExtensionSerDeserUtilsTest { /** * Generates a test object. */ private List<Map<Term, String>> getExtensionTest() { Map<Term, String> verbatimRecord = new HashMap<Term, String>(); Date today = new Date(); verbatimRecord.put(DcTerm.created, IsoDateFormat.FULL.getDateFormat().format(today)); verbatimRecord.put(DcTerm.creator, "fede"); verbatimRecord.put(DcTerm.description, "testDescription"); verbatimRecord.put(DcTerm.format, "jpg"); verbatimRecord.put(DcTerm.license, "licenseTest"); verbatimRecord.put(DcTerm.publisher, "publisherTest"); verbatimRecord.put(DcTerm.title, "titleTest"); verbatimRecord.put(DcTerm.references, "http://www.gbif.org/"); verbatimRecord.put(DcTerm.identifier, "http://www.gbif.org/"); List<Map<Term, String>> verbatimRecords = Lists.newArrayList(); verbatimRecords.add(verbatimRecord); return verbatimRecords; } /** * Test the serialization of a List<Map<Term, String>>. */ @Test public void toJsonTest() { Assert.assertNotNull(ExtensionSerDeserUtils.toJson(getExtensionTest())); } /** * Test the deserialization of a List<Map<Term, String>>. */ @Test public void fromJsonTest() { String jsonExtension = ExtensionSerDeserUtils.toJson(getExtensionTest()); List<Map<Term, String>> serExtensions = ExtensionSerDeserUtils.fromJson(jsonExtension); Assert.assertNotNull(serExtensions); Assert.assertTrue(serExtensions.size() == 1); } }