dataminer-invocation-model/src/test/java/DataMinerInvocationTest.java

111 lines
4.2 KiB
Java

/**
*
*/
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import javax.xml.bind.JAXBException;
import org.gcube.data.analysis.dminvocation.DataMinerInvocationManager;
import org.gcube.data.analysis.dminvocation.MediaType;
import org.gcube.data.analysis.dminvocation.model.DataMinerInvocation;
import org.junit.Before;
import org.junit.Test;
import org.xml.sax.SAXException;
/**
*
* @author Francesco Mangiacrapa francesco.mangiacrapa@isti.cnr.it
* Dec 4, 2018
*/
public class DataMinerInvocationTest {
static String operatorID = "[THE_OPERATOR_ID]";
static Map<String,String> parameters = new HashMap<String,String>();
static DataMinerInvocationManager dmMng;
@Before
public void init() throws JAXBException, IOException, SAXException{
parameters.put("[key1]", "[value1]");
parameters.put("[key2]", "[value2]");
dmMng = DataMinerInvocationManager.getInstance();
}
//@Test
public void marshallingTest() throws JAXBException, IOException, SAXException {
System.out.println(DataMinerInvocationTest.class.getMethods()[0].getName()+" called");
//LOADING PARAMETERS
// List<DataMinerParam> inParams = new ArrayList<DataMinerParam>();
// for (String pm : parameters.keySet()) {
// inParams.add(new DataMinerParam(pm, parameters.get(pm)));
// }
//
// DataMinerInputParams inputParams = new DataMinerInputParams(inParams);
// DataMinerOutputParams outputParams = new DataMinerOutputParams(null);
// DataMinerParameters params = new DataMinerParameters(inputParams, outputParams);
DataMinerInvocation dmInvocation = new DataMinerInvocation();
dmInvocation.setOperatorId(operatorID);
//dmInvocation.setParameters(params);
System.out.println(dmInvocation);
// ByteArrayOutputStream outStreamJSON = DataMinerInvocationManager.marshaling(dmInvocation, MediaType.ApplicationJSON);
// System.out.println(new String(outStreamJSON.toByteArray()));
ByteArrayOutputStream outStreamXML = dmMng.marshaling(dmInvocation, MediaType.ApplicationXML, true);
System.out.println(new String(outStreamXML.toByteArray()));
}
@Test
public void unmarshallingXMLTest() throws JAXBException, IOException, SAXException{
System.out.println(DataMinerInvocationTest.class.getMethods()[1].getName()+" called");
FileInputStream dmInvocationXMLFile = new FileInputStream(new File("./src/test/resources/DataMinerInvocation.xml"));
DataMinerInvocation dmInvocation = dmMng.unmarshaling(dmInvocationXMLFile, MediaType.ApplicationXML, true);
System.out.println(dmInvocation);
ByteArrayOutputStream outStreamJSON = dmMng.marshaling(dmInvocation, MediaType.ApplicationXML, true);
System.out.println(new String(outStreamJSON.toByteArray()));
outStreamJSON = dmMng.marshaling(dmInvocation, MediaType.ApplicationJSON, true);
System.out.println(new String(outStreamJSON.toByteArray()));
}
//@Test
public void unmarshallingJSONTest() throws JAXBException, IOException, SAXException{
System.out.println(DataMinerInvocationTest.class.getMethods()[2].getName()+" called");
FileInputStream dmInvocationJSONFile = new FileInputStream(new File("./src/test/resources/DataMinerInvocation.json"));
DataMinerInvocation dmInvocation = dmMng.unmarshaling(dmInvocationJSONFile, MediaType.ApplicationJSON, true);
System.out.println(dmInvocation);
// ByteArrayOutputStream outStreamXML = dmMng.marshaling(dmInvocation, MediaType.ApplicationXML, true);
// System.out.println(new String(outStreamXML.toByteArray()));
}
// public static void main(String[] args) throws JAXBException, IOException, SAXException {
// parameters.put("[key1]", "[value1]");
// parameters.put("[key2]", "[value2]");
// dmMng = DataMinerInvocationManager.getInstance();
// System.out.println(DataMinerInvocationTest.class.getMethods()[2].getName()+" called");
// FileInputStream dmInvocationJSONFile = new FileInputStream(new File("./src/test/resources/DataMinerInvocation.json"));
// DataMinerInvocation dmInvocation = dmMng.unmarshaling(dmInvocationJSONFile, MediaType.ApplicationJSON, true);
// System.out.println(dmInvocation);
//
// ByteArrayOutputStream outStreamXML = dmMng.marshaling(dmInvocation, MediaType.ApplicationXML, true);
// System.out.println(new String(outStreamXML.toByteArray()));
// }
}