You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commonsrdf.apache.org by wi...@apache.org on 2015/03/27 19:15:18 UTC
[20/50] [abbrv] incubator-commonsrdf git commit: Don't rely on
BlankNode.ntriplesString() making sense.
Don't rely on BlankNode.ntriplesString() making sense.
As pointed out in #42, the ntriplesString() does not need to match
the internal identifier.
The tests now also assume that RDFNodes in a Triple are equal to those
passed into the RDFTermFactory.createTriple() - as those
terms were also made with the same RDFTermFactory and the Triple
is not (yet) inserted into a graph.
Project: http://git-wip-us.apache.org/repos/asf/incubator-commonsrdf/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-commonsrdf/commit/28008951
Tree: http://git-wip-us.apache.org/repos/asf/incubator-commonsrdf/tree/28008951
Diff: http://git-wip-us.apache.org/repos/asf/incubator-commonsrdf/diff/28008951
Branch: refs/heads/master
Commit: 28008951c9e7ade548f30a5fb1363d3dc80054e3
Parents: 4d348f9
Author: Stian Soiland-Reyes <st...@apache.org>
Authored: Mon Jan 26 10:13:02 2015 +0000
Committer: Stian Soiland-Reyes <st...@apache.org>
Committed: Mon Jan 26 10:13:02 2015 +0000
----------------------------------------------------------------------
.../api/AbstractRDFTermFactoryTest.java | 73 ++++++++++----------
1 file changed, 38 insertions(+), 35 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-commonsrdf/blob/28008951/api/src/test/java/com/github/commonsrdf/api/AbstractRDFTermFactoryTest.java
----------------------------------------------------------------------
diff --git a/api/src/test/java/com/github/commonsrdf/api/AbstractRDFTermFactoryTest.java b/api/src/test/java/com/github/commonsrdf/api/AbstractRDFTermFactoryTest.java
index 56ec164..a4215c9 100644
--- a/api/src/test/java/com/github/commonsrdf/api/AbstractRDFTermFactoryTest.java
+++ b/api/src/test/java/com/github/commonsrdf/api/AbstractRDFTermFactoryTest.java
@@ -46,19 +46,11 @@ public abstract class AbstractRDFTermFactoryTest {
Assume.assumeNoException(ex);
return;
}
- String ntriplesString = bnode.ntriplesString();
- assertTrue("ntriples must start with _:",
- ntriplesString.startsWith("_:"));
- assertTrue("Internal identifier can't be empty", bnode
- .internalIdentifier().length() > 0);
- assertEquals("ntriples does not correspond with internal identifier",
- bnode.internalIdentifier(),
- ntriplesString.substring(2, ntriplesString.length()));
BlankNode bnode2 = factory.createBlankNode();
assertNotEquals(
"Second blank node has not got a unique internal identifier",
- bnode.internalIdentifier(), bnode2.internalIdentifier());
+ bnode.internalIdentifier(), bnode2.internalIdentifier());
}
@Test
@@ -71,9 +63,30 @@ public abstract class AbstractRDFTermFactoryTest {
return;
}
assertEquals("example1", bnode.internalIdentifier());
- assertEquals("_:example1", bnode.ntriplesString());
+ // .. but we can't assume the internal identifier leaks into
+ // ntriplesString
+ //assertEquals("_:example1", bnode.ntriplesString());
}
+ @Test
+ public void createBlankNodeIdentifierTwice() throws Exception {
+ BlankNode bnode1, bnode2, bnode3;
+ try {
+ bnode1 = factory.createBlankNode("example1");
+ bnode2 = factory.createBlankNode("example1");
+ bnode3 = factory.createBlankNode("differ");
+ } catch (UnsupportedOperationException ex) {
+ Assume.assumeNoException(ex);
+ return;
+ }
+ assertEquals(bnode1.internalIdentifier(), bnode2.internalIdentifier());
+ // We don't know what the ntriplesString is, but it MUST be the same
+ assertEquals(bnode1.ntriplesString(), bnode2.ntriplesString());
+ // and here it MUST differ
+ assertNotEquals(bnode1.ntriplesString(), bnode3.ntriplesString());
+ }
+
+
public abstract RDFTermFactory createFactory();
@Test
@@ -266,15 +279,11 @@ public abstract class AbstractRDFTermFactoryTest {
return;
}
- // NOTE: We do not require object equivalence after insertion,
- // but the ntriples should match
- assertEquals(subject.ntriplesString(), triple.getSubject()
- .ntriplesString());
- assertEquals(predicate.ntriplesString(), triple.getPredicate()
- .ntriplesString());
- assertEquals(object.ntriplesString(), triple.getObject()
- .ntriplesString());
-
+ // bnode equivalence should be OK as we used the same
+ // factory and have not yet inserted Triple into a Graph
+ assertEquals(subject, triple.getSubject());
+ assertEquals(predicate, triple.getPredicate());
+ assertEquals(object, triple.getObject());
}
@Test
@@ -293,14 +302,11 @@ public abstract class AbstractRDFTermFactoryTest {
return;
}
- // NOTE: We do not require object equivalence after insertion,
- // but the ntriples should match
- assertEquals(subject.ntriplesString(), triple.getSubject()
- .ntriplesString());
- assertEquals(predicate.ntriplesString(), triple.getPredicate()
- .ntriplesString());
- assertEquals(object.ntriplesString(), triple.getObject()
- .ntriplesString());
+ // bnode equivalence should be OK as we used the same
+ // factory and have not yet inserted Triple into a Graph
+ assertEquals(subject, triple.getSubject());
+ assertEquals(predicate, triple.getPredicate());
+ assertEquals(object, triple.getObject());
}
@Test
@@ -319,14 +325,11 @@ public abstract class AbstractRDFTermFactoryTest {
return;
}
- // NOTE: We do not require object equivalence after insertion,
- // but the ntriples should match
- assertEquals(subject.ntriplesString(), triple.getSubject()
- .ntriplesString());
- assertEquals(predicate.ntriplesString(), triple.getPredicate()
- .ntriplesString());
- assertEquals(object.ntriplesString(), triple.getObject()
- .ntriplesString());
+ // bnode equivalence should be OK as we used the same
+ // factory and have not yet inserted Triple into a Graph
+ assertEquals(subject, triple.getSubject());
+ assertEquals(predicate, triple.getPredicate());
+ assertEquals(object, triple.getObject());
}
@Before