Skip to content

Commit

Permalink
Check that ChangeLog events are serialised to RDF
Browse files Browse the repository at this point in the history
  • Loading branch information
berezovskyi committed Mar 27, 2021
1 parent b5f7207 commit 69b3f7e
Show file tree
Hide file tree
Showing 2 changed files with 50 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -1,11 +1,22 @@
package org.eclipse.lyo.core.trs;

import java.lang.reflect.InvocationTargetException;
import java.net.URI;
import java.util.List;

import static org.assertj.core.api.Assertions.*;
import static org.junit.Assert.*;

import org.apache.jena.rdf.model.Model;
import org.apache.jena.rdf.model.RDFNode;
import org.eclipse.lyo.oslc4j.core.exception.OslcCoreApplicationException;
import org.eclipse.lyo.oslc4j.provider.jena.JenaModelHelper;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import javax.xml.datatype.DatatypeConfigurationException;

/**
* Created on 2017-06-08
* @author Andrew Berezovskyi (andriib@kth.se)
Expand All @@ -29,4 +40,24 @@ public void changeEventListCantBeSetToNull() throws Exception {
log.info("Setting changeLog Change Event list to null");
changeLog.setChange(null);
}


@Test
public void changeLogModelContainsEvents() throws InvocationTargetException, DatatypeConfigurationException,
OslcCoreApplicationException, IllegalAccessException {
// see https://github.com/eclipse/lyo/issues/83

final ChangeLog log1 = new ChangeLog();
log1.setAbout(URI.create("urn:trs:log1"));
final URI ch1Uri = URI.create("urn:trs:ch1");
final Deletion ch1 = new Deletion(ch1Uri, URI.create("urn:about:nothing"), 1);
log1.getChange().add(ch1);
final Model model = JenaModelHelper.createJenaModel(new Object[]{log1});

Helper.printModelTrace(model);

// <urn:trs:ch1> ?p ?o .
assertTrue(model.contains(model.createResource(ch1Uri.toString()), null, (RDFNode) null));
}

}
19 changes: 19 additions & 0 deletions core/oslc-trs/src/test/java/org/eclipse/lyo/core/trs/Helper.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package org.eclipse.lyo.core.trs;

import org.apache.jena.rdf.model.Model;
import org.apache.jena.riot.RDFDataMgr;
import org.apache.jena.riot.RDFFormat;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.ByteArrayOutputStream;

public class Helper {
private static final Logger log = LoggerFactory.getLogger(Helper.class);

static void printModelTrace(Model model) {
final ByteArrayOutputStream baos = new ByteArrayOutputStream();
RDFDataMgr.write(baos, model, RDFFormat.TRIG_PRETTY);
log.trace(baos.toString()); // .toString(StandardCharsets.UTF_8) for JDK10+
}
}

0 comments on commit 69b3f7e

Please sign in to comment.