89 lines
2.7 KiB
Java
89 lines
2.7 KiB
Java
package eu.dnetlib.ariadneplus.virtuoso;
|
|
|
|
import java.io.IOException;
|
|
|
|
import eu.dnetlib.ariadneplus.publisher.AriadnePlusPublisherException;
|
|
import eu.dnetlib.ariadneplus.publisher.SaxonHelper;
|
|
import eu.dnetlib.ariadneplus.rdf.RecordParserHelper;
|
|
import net.sf.saxon.s9api.SaxonApiException;
|
|
import org.apache.commons.io.IOUtils;
|
|
import org.apache.commons.logging.Log;
|
|
import org.apache.commons.logging.LogFactory;
|
|
import org.junit.Assert;
|
|
import org.junit.Before;
|
|
import org.junit.Ignore;
|
|
import org.junit.Test;
|
|
import org.junit.runner.RunWith;
|
|
import org.junit.runners.JUnit4;
|
|
import org.springframework.core.io.ClassPathResource;
|
|
import virtuoso.jena.driver.VirtModel;
|
|
|
|
/**
|
|
* Created by Alessia Bardi on 12/07/2017.
|
|
*
|
|
* @author Alessia Bardi
|
|
*/
|
|
@Ignore
|
|
@RunWith(JUnit4.class)
|
|
public class VirtuosoClientTest {
|
|
|
|
private static final Log log = LogFactory.getLog(VirtuosoClientTest.class);
|
|
|
|
private String testGraph = "virt:test";
|
|
//private String connectionString = "jdbc:virtuoso://localhost:1111";
|
|
private String connectionString = "jdbc:virtuoso://virtuoso.ariadneplus.d4science.org:1111";
|
|
private String testUser = "dba";
|
|
private String testPwd = "dba";
|
|
private String defaultURIBaseURl = "http://test/";
|
|
|
|
private String recordPath = "eu/dnetlib/ariadneplus/virtuoso/test_record_plain.xml";
|
|
|
|
private VirtuosoClient client;
|
|
|
|
private SaxonHelper saxonHelper = new SaxonHelper();
|
|
|
|
|
|
@Before
|
|
public void prepare() throws SaxonApiException {
|
|
RecordParserHelper rph = new RecordParserHelper();
|
|
rph.setSaxonHelper(saxonHelper);
|
|
rph.init();
|
|
client = new VirtuosoClient(connectionString, testUser, testPwd, rph, defaultURIBaseURl);
|
|
}
|
|
|
|
@Test
|
|
public void testConnection(){
|
|
VirtModel.openDatabaseModel("x", connectionString, testUser, testPwd);
|
|
}
|
|
|
|
|
|
|
|
@Test
|
|
public void testFeedProvenance(){
|
|
long res = client.feedProvenance("ariadne_____::0002b8b77eb2d6c62f61c6e1a1ce6891", "2017-05-14T12:06:38.152+02:00" , "2017-05-14T12:11:55.573", "ARIADNE", "ariadne_api");
|
|
Assert.assertEquals(3, res);
|
|
}
|
|
|
|
@Test
|
|
public void testRecord() throws AriadnePlusPublisherException {
|
|
System.out.println(client.feed(getString(recordPath)));
|
|
}
|
|
|
|
@Test
|
|
public void testRemoveFromProvenance(){
|
|
long res = client.feedProvenance("ariadne_____::0002b8b77eb2d6c62f61c6e1a1ce6891", "2017-05-14T12:06:38.152+02:00" , "2017-05-14T12:11:55.573", "ARIADNE", "ariadne_api");
|
|
Assert.assertEquals(3, res);
|
|
long deleted = client.drop("ariadne_api");
|
|
Assert.assertEquals(0, deleted);
|
|
}
|
|
|
|
private String getString(final String classpath) {
|
|
try {
|
|
final ClassPathResource resource = new ClassPathResource(classpath);
|
|
return IOUtils.toString(resource.getInputStream(), "UTF-8");
|
|
}catch(IOException e){
|
|
return null;
|
|
}
|
|
}
|
|
}
|