You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by cl...@apache.org on 2013/09/22 21:20:05 UTC
svn commit: r1525417 - in
/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena: rdf/model/
rdf/model/temp/ shared/ testing_framework/
Author: claude
Date: Sun Sep 22 19:20:05 2013
New Revision: 1525417
URL: http://svn.apache.org/r1525417
Log:
Updated RDFNode and Resource tests
Added:
jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFNodeContractTests.java
- copied, changed from r1525342, jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFNodeTest.java
jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/temp/ResourceNodeTest.java (with props)
jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/NodeProducerInterface.java (with props)
Removed:
jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractConcurrencyTestParallel.java
jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFNodeTest.java
Modified:
jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractModelConContractTests.java
jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractModelContractSuite.java
jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractResourceTest.java
jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/temp/RDFNodeTest.java
jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/shared/AbstractPrefixMappingTest.java
jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/ModelHelper.java
jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/TestUtils.java
Modified: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractModelConContractTests.java
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractModelConContractTests.java?rev=1525417&r1=1525416&r2=1525417&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractModelConContractTests.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractModelConContractTests.java Sun Sep 22 19:20:05 2013
@@ -104,9 +104,18 @@ public abstract class AbstractModelConCo
assertTrue("add( S, P, O ) must return model for cascading",
model == model.add(S, P, "foo", true));
txnCommit(model);
- SL.assertHas(new Object[] { "add", s });
- assertTrue("Statement not found in model", model.contains(s));
- Assert.assertTrue(model.contains(s));
+ // this doesn't work because of BaseDatatype equality strangeness.
+ //SL.assertHas(new Object[] { "add", s });
+ SL.assertContains( "add" );
+ Statement s2 = (Statement) SL.from( "add" ).next();
+ assertEquals( "wrong subject", s.getSubject(), s2.getSubject() );
+ assertEquals( "wrong predicate", s.getPredicate(), s2.getPredicate() );
+ assertTrue( s2.getObject().isLiteral());
+ Literal lit = (Literal) s2.getObject().asLiteral();
+ assertEquals( O.getDatatypeURI(), lit.getDatatypeURI() );
+ assertEquals( O.getString(), lit.getString());
+
+ assertTrue("Statement not found in model", model.contains(s2));
}
@Test
@@ -747,7 +756,12 @@ public abstract class AbstractModelConCo
assertEquals("Wrong subject", resource("S"), s.getSubject());
assertEquals("Wrong predicate", property("P"), s.getPredicate());
- assertEquals("Wrong object", lit, s.getObject());
+ // this does not work because of basedatatype equality strangeness
+ // assertEquals("Wrong object", lit, s.getObject());
+ assertTrue( s.getObject().isLiteral());
+ Literal lit2 = s.getObject().asLiteral();
+ assertEquals( lit.getDatatypeURI(), lit2.getDatatypeURI() );
+ assertEquals( lit.getString(), lit2.getString());
}
@Test
@@ -921,8 +935,8 @@ public abstract class AbstractModelConCo
SL.assertEmpty();
assertEquals("must be associated with model", model, l.getModel());
assertFalse("Found literal in model", model.contains(null, null, l));
- assertEquals("wrong type of literal", dt, l.getDatatype());
- assertEquals("wrong value", tvObject, l.getValue());
+ assertEquals("wrong type of literal", dt.getURI(), l.getDatatypeURI());
+ assertEquals("wrong value", tvObject.toString(), l.getString());
}
@Test
@@ -972,8 +986,6 @@ public abstract class AbstractModelConCo
assertEquals("wrong type of literal", dt.getURI(), l.getDatatype()
.getURI());
assertEquals("wrong value", "foo", l.getString());
- assertEquals("wrong value", "foo^^http://example.com/strType",
- l.getValue());
}
@Test
@@ -1515,7 +1527,7 @@ public abstract class AbstractModelConCo
assertEquals(1, model.listStatements(s, p, v, "en").toList().size());
assertEquals(1, model.listStatements(s, p, v, "fr").toList().size());
- assertEquals(2, model.listStatements(s, p, v, null).toList().size());
+ assertEquals(3, model.listStatements(s, p, v, null).toList().size());
assertEquals(1, model.listStatements(s, p, null, "en").toList().size());
assertEquals(1, model.listStatements(s, p, null, "fr").toList().size());
assertEquals(2, model.listStatements(s, p, null, "").toList().size());
Modified: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractModelContractSuite.java
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractModelContractSuite.java?rev=1525417&r1=1525416&r2=1525417&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractModelContractSuite.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractModelContractSuite.java Sun Sep 22 19:20:05 2013
@@ -7,6 +7,7 @@ import org.junit.runners.Suite;
import com.hp.hpl.jena.shared.AbstractPrefixMappingTest;
import com.hp.hpl.jena.shared.PrefixMapping;
import com.hp.hpl.jena.testing_framework.ModelProducerInterface;
+import com.hp.hpl.jena.testing_framework.NodeProducerInterface;
@Suite.SuiteClasses({AbstractModelContractSuite.ModelContractTests.class,
AbstractModelContractSuite.LockContractTests.class,
@@ -15,7 +16,12 @@ import com.hp.hpl.jena.testing_framework
AbstractModelContractSuite.PrefixMappingContractTests.class,
AbstractModelContractSuite.RDFReaderFContractTests.class,
AbstractModelContractSuite.RDFWriterFContractTests.class,
-
+ AbstractModelContractSuite.AltMethodsTests.class,
+ AbstractModelContractSuite.BagMethodsTests.class,
+ AbstractModelContractSuite.SeqMethodsTests.class,
+ AbstractModelContractSuite.RDFNodeTests.class,
+ AbstractModelContractSuite.ResourceTests.class,
+ AbstractModelContractSuite.StatementTests.class,
})
public abstract class AbstractModelContractSuite {
static protected ModelProducerInterface modelProducer;
@@ -136,7 +142,78 @@ public abstract class AbstractModelContr
modelProducer.closeModels();
}
+
+ }
+
+ public static class AltMethodsTests extends AbstractAltMethodsTest {
+
+ @Override
+ public ModelProducerInterface getModelProducer() {
+ return modelProducer;
+ }
+
+ }
+
+ public static class BagMethodsTests extends AbstractBagMethodsTest {
+
+ @Override
+ public ModelProducerInterface getModelProducer() {
+ return modelProducer;
+ }
+
+ }
+
+ public static class SeqMethodsTests extends AbstractSeqMethodsTest {
+
+ @Override
+ public ModelProducerInterface getModelProducer() {
+ return modelProducer;
+ }
+
+ }
+
+ public static class RDFNodeTests extends AbstractRDFNodeContractTests {
+ NodeProducerInterface producer = new NodeProducerInterface()
+ {
+
+ @Override
+ public RDFNode newRDFNode() {
+ return modelProducer.newModel().createResource();
+ }
+ };
+
+ @Override
+ protected NodeProducerInterface getNodeProducer() {
+ return producer;
+ }
+
+ }
+
+ public static class ResourceTests extends AbstractResourceTest {
+
+ NodeProducerInterface producer = new NodeProducerInterface()
+ {
+
+ @Override
+ public RDFNode newRDFNode() {
+ return modelProducer.newModel().createResource();
+ }
+ };
+
+ @Override
+ protected NodeProducerInterface getNodeProducer() {
+ return producer;
+ }
+ }
+
+ public static class StatementTests extends AbstractStatementTest {
+
+ @Override
+ public ModelProducerInterface getModelProducer() {
+ return modelProducer;
+ }
}
}
+
Copied: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFNodeContractTests.java (from r1525342, jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFNodeTest.java)
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFNodeContractTests.java?p2=jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFNodeContractTests.java&p1=jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFNodeTest.java&r1=1525342&r2=1525417&rev=1525417&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFNodeTest.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFNodeContractTests.java Sun Sep 22 19:20:05 2013
@@ -22,118 +22,155 @@ import com.hp.hpl.jena.rdf.model.AnonId;
import com.hp.hpl.jena.rdf.model.Literal;
import com.hp.hpl.jena.rdf.model.LiteralRequiredException;
import com.hp.hpl.jena.rdf.model.Model;
-import com.hp.hpl.jena.rdf.model.ModelFactory;
import com.hp.hpl.jena.rdf.model.RDFNode;
import com.hp.hpl.jena.rdf.model.RDFVisitor;
import com.hp.hpl.jena.rdf.model.Resource;
import com.hp.hpl.jena.rdf.model.ResourceRequiredException;
-import com.hp.hpl.jena.test.JenaTestBase;
-import com.hp.hpl.jena.testing_framework.AbstractModelProducerUser;
+import com.hp.hpl.jena.testing_framework.NodeProducerInterface;
+
import static com.hp.hpl.jena.testing_framework.ModelHelper.*;
import java.util.ArrayList;
import java.util.List;
import static org.junit.Assert.*;
+
+import org.junit.Before;
import org.junit.Test;
/**
* This class tests various properties of RDFNodes.
*/
-public abstract class AbstractRDFNodeTest extends AbstractModelProducerUser {
+public abstract class AbstractRDFNodeContractTests {
+ protected abstract NodeProducerInterface getNodeProducer();
+
+ protected RDFNode node;
+ protected Model model;
+
+ @Before
+ public final void setupAbstractRDFNodeContractTests()
+ {
+ node = getNodeProducer().newRDFNode();
+ model = node.getModel();
+ }
+
+ @Test
+ public void testAsLiteral() {
+ RDFNode node = model.createLiteral( "foo");
+ assertSame( node, node.asLiteral());
+ node = model.createResource();
+ try {
+ node.asLiteral();
+ fail("should have thrown Exception");
+ } catch (LiteralRequiredException expected)
+ {
+ // expected
+ }
+ }
+
@Test
- public void testInModel() {
- final Model m1 = modelWithStatements(getModelProducer(), "");
- final Model m2 = modelWithStatements(getModelProducer(), "");
- final Resource r1 = m1.getResource( resource("r1").getURI() );
- final Resource r2 = m1.createResource( resource("_r2").getId() );
+ public void testAsResource() {
+ node = model.createResource();
+ Resource r = node.asResource();
+ assertSame( r, node );
+ node = model.createLiteral( "foo");
+ try {
+ node.asResource();
+ fail("should have thrown Exception");
+ } catch (ResourceRequiredException expected)
+ {
+ // expected
+ }
+ }
+
+ @Test
+ public void testGetModel() {
+ // all the other tests will be in model.crete(x) tests.
+ assertNotNull( model );
+ }
+
+ @Test
+ public void testInModel_Model() {
+
+ final Model m1 = model;
+ final Model m2 = getNodeProducer().newRDFNode().getModel();
+ final Resource r1 = m1.createResource( resource("r1").getURI() );
+ final Resource a1 = m1.createResource( resource("_r2").getId() );
+ Resource r2 = null;
+ Resource a2 = null;
+
/* verify initial conditions */
assertSame(r1.getModel(), m1);
- assertSame(r2.getModel(), m1);
+ assertSame(a1.getModel(), m1);
assertFalse(r1.isAnon());
- assertTrue(r2.isAnon());
+ assertTrue(a1.isAnon());
+
/* verify calling inModel with same model returns resource */
- assertSame( r1, r1.inModel(m1));
- assertSame( r2, r2.inModel(m1));
+ r2 = r1.inModel(m1);
+ a2 = a1.inModel(m1);
+ assertSame( r2, r1);
+ assertSame( a2, a1);
+
/* verify calling in model changes model*/
- assertSame(r1.inModel(m2).getModel(), m2);
- assertSame(r2.inModel(m2).getModel(), m2);
+ r2 = r1.inModel(m2);
+ a2 = a1.inModel(m2);
+
+ assertSame(r2.getModel(), m2);
+ assertSame(a2.getModel(), m2);
+
/* verify in model check returns equivalent resource*/
- assertEquals(r1, r1.inModel(m2));
- assertEquals(r2, r2.inModel(m2));
+ assertFalse(r2.isAnon());
+ assertTrue(a2.isAnon());
+ assertFalse( "Should not be the same", r1==r2 );
+ assertFalse( "Should not be the same", a1==a2 );
+
+ assertEquals(r1, r2);
+ assertEquals(a1, a2);
+
}
@Test
public void testIsAnon() {
- final Model m = modelWithStatements(getModelProducer(), "");
- assertEquals(false, m.createResource("eh:/foo").isAnon());
- assertEquals(true, m.createResource().isAnon());
- assertEquals(false, m.createTypedLiteral(17).isAnon());
- assertEquals(false, m.createTypedLiteral("hello").isAnon());
+ assertEquals(false, model.createResource("eh:/foo").isAnon());
+ assertEquals(true, model.createResource().isAnon());
+ assertEquals(false, model.createTypedLiteral(17).isAnon());
+ assertEquals(false, model.createTypedLiteral("hello").isAnon());
}
@Test
public void testIsLiteral() {
- final Model m = modelWithStatements(getModelProducer(), "");
- assertEquals(false, m.createResource("eh:/foo").isLiteral());
- assertEquals(false, m.createResource().isLiteral());
- assertEquals(true, m.createTypedLiteral(17).isLiteral());
- assertEquals(true, m.createTypedLiteral("hello").isLiteral());
+ assertEquals(false, model.createResource("eh:/foo").isLiteral());
+ assertEquals(false, model.createResource().isLiteral());
+ assertEquals(true, model.createTypedLiteral(17).isLiteral());
+ assertEquals(true, model.createTypedLiteral("hello").isLiteral());
}
@Test
public void testIsResource() {
- final Model m = modelWithStatements(getModelProducer(), "");
- assertEquals(true, m.createResource("eh:/foo").isResource());
- assertEquals(true, m.createResource().isResource());
- assertEquals(false, m.createTypedLiteral(17).isResource());
- assertEquals(false, m.createTypedLiteral("hello").isResource());
+ assertEquals(true, model.createResource("eh:/foo").isResource());
+ assertEquals(true, model.createResource().isResource());
+ assertEquals(false, model.createTypedLiteral(17).isResource());
+ assertEquals(false, model.createTypedLiteral("hello").isResource());
}
@Test
public void testIsURIResource() {
- final Model m = modelWithStatements(getModelProducer(), "");
- assertEquals(true, m.createResource("eh:/foo").isURIResource());
- assertEquals(false, m.createResource().isURIResource());
- assertEquals(false, m.createTypedLiteral(17).isURIResource());
- assertEquals(false, m.createTypedLiteral("hello")
+ assertEquals(true, model.createResource("eh:/foo").isURIResource());
+ assertEquals(false, model.createResource().isURIResource());
+ assertEquals(false, model.createTypedLiteral(17).isURIResource());
+ assertEquals(false, model.createTypedLiteral("hello")
.isURIResource());
}
- @Test
- public void testLiteralAsResourceThrows() {
- final Model m = modelWithStatements(getModelProducer(), "");
- final Resource r = m.createResource("eh:/spoo");
- try {
- r.asLiteral();
- fail("should not be able to do Resource.asLiteral()");
- } catch (final LiteralRequiredException e) {
- }
- }
-
- @Test
- public void testRDFNodeAsLiteral() {
- final Model m = modelWithStatements(getModelProducer(), "");
- final Literal l = m.createLiteral("hello, world");
- assertSame(l, ((RDFNode) l).asLiteral());
- }
-
- @Test
- public void testRDFNodeAsResource() {
- final Model m = modelWithStatements(getModelProducer(), "");
- final Resource r = m.createResource("eh:/spoo");
- assertSame(r, ((RDFNode) r).asResource());
- }
@Test
public void testRDFVisitor() {
final List<String> history = new ArrayList<String>();
- final Model m = ModelFactory.createDefaultModel();
- final RDFNode S = m.createResource();
- final RDFNode P = m.createProperty("eh:PP");
- final RDFNode O = m.createLiteral("LL");
+ final RDFNode S = model.createResource();
+ final RDFNode P = model.createProperty("eh:PP");
+ final RDFNode O = model.createLiteral("LL");
/* */
final RDFVisitor rv = new RDFVisitor() {
@Override
@@ -163,53 +200,7 @@ public abstract class AbstractRDFNodeTes
assertEquals("blank result", S.visitWith(rv));
assertEquals("uri result", P.visitWith(rv));
assertEquals("literal result", O.visitWith(rv));
- assertEquals(JenaTestBase.listOfStrings("blank uri literal"),
+ assertEquals(listOfStrings("blank uri literal"),
history);
- }
-
- @Test
- public void testRemoveAllBoring() {
- final Model m1 = modelWithStatements(getModelProducer(),
- "x P a; y Q b");
- final Model m2 = modelWithStatements(getModelProducer(),
- "x P a; y Q b");
- resource("x").removeAll(property("Z"));
- assertIsoModels("m2 should be unchanged", m1, m2);
- }
-
- @Test
- public void testRemoveAllRemoves() {
- final String ps = "x P a; x P b", rest = "x Q c; y P a; y Q b";
- final Model m = modelWithStatements(getModelProducer(), ps
- + "; " + rest);
- final Resource r = m.getResource( resource("x").getURI() );
- final Resource r2 = r.removeAll(property("P"));
- assertSame("removeAll should deliver its receiver", r, r2);
- assertIsoModels("x's P-values should go",
- modelWithStatements(getModelProducer(), rest), m);
- }
-
- @Test
- public void testResourceAsLiteralThrows() {
- final Model m = modelWithStatements(getModelProducer(), "");
- final Literal l = m.createLiteral("hello, world");
- try {
- l.asResource();
- fail("should not be able to do Literal.asResource()");
- } catch (final ResourceRequiredException e) {
- }
- }
-
- @Test
- public void testPortingBlankNodes()
- {
- final Model B = getModelProducer().newModel();
- final Model model = getModelProducer().newModel();
- final Resource anon = model.createResource();
- final Resource bAnon = anon.inModel(B);
- assertTrue("moved resource should still be blank",
- bAnon.isAnon());
- assertEquals("move resource should equal original", anon, bAnon);
- }
-
+ }
}
Modified: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractResourceTest.java
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractResourceTest.java?rev=1525417&r1=1525416&r2=1525417&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractResourceTest.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractResourceTest.java Sun Sep 22 19:20:05 2013
@@ -18,626 +18,726 @@
package com.hp.hpl.jena.rdf.model;
-import com.hp.hpl.jena.graph.test.GraphTestBase;
+import com.hp.hpl.jena.graph.GraphEvents;
+import com.hp.hpl.jena.graph.Node;
+import com.hp.hpl.jena.graph.Triple;
import com.hp.hpl.jena.rdf.model.AnonId;
import com.hp.hpl.jena.rdf.model.Literal;
-import com.hp.hpl.jena.rdf.model.LiteralRequiredException;
-import com.hp.hpl.jena.rdf.model.Model;
-import com.hp.hpl.jena.rdf.model.ModelFactory;
import com.hp.hpl.jena.rdf.model.RDFNode;
-import com.hp.hpl.jena.rdf.model.RDFVisitor;
import com.hp.hpl.jena.rdf.model.Resource;
-import com.hp.hpl.jena.rdf.model.ResourceRequiredException;
-import com.hp.hpl.jena.rdf.model.test.helpers.ModelHelper;
import com.hp.hpl.jena.shared.PropertyNotFoundException;
-import com.hp.hpl.jena.test.JenaTestBase;
-import com.hp.hpl.jena.testing_framework.AbstractModelProducerUser;
import com.hp.hpl.jena.vocabulary.RDF;
import static com.hp.hpl.jena.testing_framework.ModelHelper.*;
-import java.util.ArrayList;
+import java.util.Arrays;
import java.util.List;
-import org.junit.Assert;
+import static org.junit.Assert.*;
+
+import org.junit.Before;
import org.junit.Test;
/**
* This class tests various properties of RDFNodes.
*/
-public abstract class AbstractResourceTest extends AbstractRDFNodeTest {
-
- @Test
- public void testInModel() {
- final Model m1 = modelWithStatements(getModelProducer(), "");
- final Model m2 = modelWithStatements(getModelProducer(), "");
- final Resource r1 = resource("r1");
- final Resource r2 = resource("_r2");
- /* */
- Assert.assertEquals(r1.getModel(), m1);
- Assert.assertEquals(r2.getModel(), m1);
- Assert.assertFalse(r1.isAnon());
- Assert.assertTrue(r2.isAnon());
- /* */
- Assert.assertEquals(r1.inModel(m2).getModel(), m2);
- Assert.assertEquals(r2.inModel(m2).getModel(), m2);
- /* */
- Assert.assertEquals(r1, r1.inModel(m2));
- Assert.assertEquals(r2, r2.inModel(m2));
- }
-
- @Test
- public void testIsAnon() {
- final Model m = modelWithStatements(getModelProducer(), "");
- Assert.assertEquals(false, m.createResource("eh:/foo").isAnon());
- Assert.assertEquals(true, m.createResource().isAnon());
- Assert.assertEquals(false, m.createTypedLiteral(17).isAnon());
- Assert.assertEquals(false, m.createTypedLiteral("hello").isAnon());
- }
-
- @Test
- public void testIsLiteral() {
- final Model m = modelWithStatements(getModelProducer(), "");
- Assert.assertEquals(false, m.createResource("eh:/foo").isLiteral());
- Assert.assertEquals(false, m.createResource().isLiteral());
- Assert.assertEquals(true, m.createTypedLiteral(17).isLiteral());
- Assert.assertEquals(true, m.createTypedLiteral("hello").isLiteral());
- }
-
- @Test
- public void testIsResource() {
- final Model m = modelWithStatements(getModelProducer(), "");
- Assert.assertEquals(true, m.createResource("eh:/foo").isResource());
- Assert.assertEquals(true, m.createResource().isResource());
- Assert.assertEquals(false, m.createTypedLiteral(17).isResource());
- Assert.assertEquals(false, m.createTypedLiteral("hello").isResource());
- }
-
- @Test
- public void testIsURIResource() {
- final Model m = modelWithStatements(getModelProducer(), "");
- Assert.assertEquals(true, m.createResource("eh:/foo").isURIResource());
- Assert.assertEquals(false, m.createResource().isURIResource());
- Assert.assertEquals(false, m.createTypedLiteral(17).isURIResource());
- Assert.assertEquals(false, m.createTypedLiteral("hello")
- .isURIResource());
- }
-
- @Test
- public void testLiteralAsResourceThrows() {
- final Model m = modelWithStatements(getModelProducer(), "");
- final Resource r = m.createResource("eh:/spoo");
- try {
- r.asLiteral();
- Assert.fail("should not be able to do Resource.asLiteral()");
- } catch (final LiteralRequiredException e) {
- }
- }
-
- @Test
- public void testRDFNodeAsLiteral() {
- final Model m = modelWithStatements(getModelProducer(), "");
- final Literal l = m.createLiteral("hello, world");
- Assert.assertSame(l, ((RDFNode) l).asLiteral());
- }
-
- @Test
- public void testRDFNodeAsResource() {
- final Model m = modelWithStatements(getModelProducer(), "");
- final Resource r = m.createResource("eh:/spoo");
- Assert.assertSame(r, ((RDFNode) r).asResource());
- }
+public abstract class AbstractResourceTest extends AbstractRDFNodeContractTests {
- @Test
- public void testRemoveAllBoring() {
- final Model m1 = modelWithStatements(getModelProducer(),
- "x P a; y Q b");
- final Model m2 = modelWithStatements(getModelProducer(),
- "x P a; y Q b");
- resource("x").removeAll(property("Z"));
- assertIsoModels("m2 should be unchanged", m1, m2);
+ private Resource r;
+ private RecordingModelListener SL;
+
+ @Before
+ public final void setupAbstractResourceTest()
+ {
+ assertTrue( "Resource producer shoudl retrun a resource", node.isResource() );
+ r = (Resource) node;
+ SL = new RecordingModelListener();
}
-
+
@Test
- public void testRemoveAllRemoves() {
+ public void testRemoveAll_Property() {
final String ps = "x P a; x P b", rest = "x Q c; y P a; y Q b";
- final Model m = modelWithStatements(getModelProducer(), ps
- + "; " + rest);
- final Resource r = resource("x");
- final Resource r2 = r.removeAll(property("P"));
- Assert.assertSame("removeAll should deliver its receiver", r, r2);
+
+ txnBegin( model );
+ modelAdd( model , ps+ "; " + rest);
+ txnCommit( model );
+ r = model.getResource( resource("x").getURI() );
+
+ model.register( SL );
+
+ // delete nothing
+ txnBegin( model );
+ assertSame(r, r.removeAll( property("Z")));
+ txnCommit( model );
+ SL.assertHasStart( "someEvent", model, new GraphEvents( "remove", new Triple( r.asNode(), property("Z").asNode(), Node.ANY)) );
+
+ SL.clear();
+ // delete some
+ txnBegin( model );
+ assertSame(r, r.removeAll(property("P")));
+ txnCommit( model );
+ SL.assertContains( "remove", statement( "x P a"));
+ SL.assertContains( "remove", statement( "x P b"));
+ SL.assertContains( "someEvent", model, new GraphEvents( "remove", new Triple( r.asNode(), property("P").asNode(), Node.ANY)) );
+
assertIsoModels("x's P-values should go",
- modelWithStatements(getModelProducer(), rest), m);
+ memModel(rest), r.getModel());
}
@Test
- public void testResourceAsLiteralThrows() {
- final Model m = modelWithStatements(getModelProducer(), "");
- final Literal l = m.createLiteral("hello, world");
- try {
- l.asResource();
- Assert.fail("should not be able to do Literal.asResource()");
- } catch (final ResourceRequiredException e) {
- }
- }
-
- @Test
- public void testPortingBlankNodes()
- {
- final Model B = getModelProducer().newModel();
- final Model model = getModelProducer().newModel();
- final Resource anon = model.createResource();
- final Resource bAnon = anon.inModel(B);
- Assert.assertTrue("moved resource should still be blank",
- bAnon.isAnon());
- Assert.assertEquals("move resource should equal original", anon, bAnon);
- }
-
- @Test
public void testAddLiteralPassesLiteralUnmodified()
{
- Model model = getModelProducer().newModel();
- final Resource r = model.createResource();
+ model.register( SL );
+ txnBegin( model );
final Literal lit = model.createLiteral("spoo");
- r.addLiteral(RDF.value, lit);
- Assert.assertTrue("model should contain unmodified literal",
+ assertSame( r, r.addLiteral(RDF.value, lit));
+ txnCommit( model );
+ assertTrue("model should contain unmodified literal",
model.contains(null, RDF.value, lit));
+ SL.assertHasStart( "add", statement( r, RDF.value, lit));
}
@Test
- public void testAddTypedPropertyBoolean()
+ public void testAddLiteral_Property_boolean()
{
- Model model = getModelProducer().newModel();
- final Resource r = model.createResource();
- r.addLiteral(RDF.value, true);
- Assert.assertEquals(model.createTypedLiteral(true),
+ model.register( SL );
+ txnBegin( model );
+ assertSame( r, r.addLiteral(RDF.value, true));
+ txnCommit( model );
+ assertEquals(model.createTypedLiteral(true),
r.getProperty(RDF.value).getLiteral());
+ SL.assertHasStart( "add", statement( r, RDF.value, model.createTypedLiteral(true)));
}
@Test
- public void testAddTypedPropertyChar()
+ public void testAddLiteral_Property_char()
{
- Model model = getModelProducer().newModel();
- final Resource r = model.createResource();
- r.addLiteral(RDF.value, 'x');
- Assert.assertEquals(model.createTypedLiteral('x'),
+ model.register( SL );
+ txnBegin( model );
+ assertSame( r, r.addLiteral(RDF.value, 'x'));
+ txnCommit( model );
+ assertEquals(model.createTypedLiteral('x'),
r.getProperty(RDF.value).getLiteral());
+ SL.assertHasStart( "add", statement( r, RDF.value, model.createTypedLiteral('x')));
}
@Test
- public void testAddTypedPropertyDouble()
+ public void testAddLiteral_Property_double()
{
- Model model = getModelProducer().newModel();
- final Resource r = model.createResource();
- r.addLiteral(RDF.value, 1.0d);
- Assert.assertEquals(model.createTypedLiteral(1.0d),
+ model.register( SL );
+ txnBegin( model );
+ assertSame( r, r.addLiteral(RDF.value, 1.0d) );
+ txnCommit( model );
+ assertEquals(model.createTypedLiteral(1.0d),
r.getProperty(RDF.value).getLiteral());
+ SL.assertHasStart( "add", statement( r, RDF.value, model.createTypedLiteral(1.0d)));
}
@Test
- public void testAddTypedPropertyFloat()
+ public void testAddLiteral_Property_float()
{
- Model model = getModelProducer().newModel();
- final Resource r = model.createResource();
- r.addLiteral(RDF.value, 1.0f);
- Assert.assertEquals(model.createTypedLiteral(1.0f),
+ model.register( SL );
+ txnBegin( model );
+ assertSame(r, r.addLiteral(RDF.value, 1.0f) );
+ txnCommit( model );
+ assertEquals(model.createTypedLiteral(1.0f),
r.getProperty(RDF.value).getLiteral());
+ SL.assertHasStart( "add", statement( r, RDF.value, model.createTypedLiteral(1.0f)));
}
@Test
- public void testAddTypedPropertyInt()
+ public void testAddLiteral_Property_int()
{
- //Model model = getModelProducer().newModel();
- // Model model = ModelFactory.createDefaultModel();
- // Resource r = model.createResource();
- // r.addLiteral( RDF.value, 1 );
- // assertEquals( model.createTypedLiteral( 1 ), r.getProperty( RDF.value
- // ).getLiteral() );
+ model.register( SL );
+ txnBegin( model );
+ assertSame( r, r.addLiteral( RDF.value, 1 ));
+ txnCommit( model );
+ logAssertEquals( this.getClass(), "Literal types should be correct", model.createTypedLiteral( 1 ), r.getProperty( RDF.value
+ ).getLiteral() );
+ assertEquals( "Literal types should be correct", model.createTypedLiteral( 1L ), r.getProperty( RDF.value
+ ).getLiteral() );
+ SL.assertHasStart( "add", statement( r, RDF.value, model.createTypedLiteral( 1L )));
}
@Test
- public void testAddTypedPropertyLong()
+ public void testAddLiteral_Property_long()
{
- Model model = getModelProducer().newModel();
- final Resource r = model.createResource();
- r.addLiteral(RDF.value, 1L);
- Assert.assertEquals(model.createTypedLiteral(1L),
+ model.register( SL );
+ txnBegin( model );
+ assertSame(r, r.addLiteral(RDF.value, 1L));
+ txnCommit( model );
+ assertEquals(model.createTypedLiteral(1L),
r.getProperty(RDF.value).getLiteral());
+ SL.assertHasStart( "add", statement( r, RDF.value, model.createTypedLiteral(1L)));
}
@Test
- public void testAddTypedPropertyObject()
- {
- Model model = getModelProducer().newModel();
+ public void testAddLiteral_Property_Object()
+ {
final Object z = new Object();
- final Resource r = model.createResource();
+ model.register( SL );
+ txnBegin( model );
r.addLiteral(RDF.value, z);
- Assert.assertEquals(model.createTypedLiteral(z),
+ txnCommit( model );
+ assertEquals(model.createTypedLiteral(z),
r.getProperty(RDF.value).getLiteral());
+ SL.assertHasStart( "add", statement( r, RDF.value, model.createTypedLiteral(z)));
}
@Test
- public void testAddTypedPropertyString()
+ public void testAddLiteral_Property_String()
{
-
+ model.register( SL );
+ txnBegin( model );
+ r.addLiteral( RDF.value, "foo" );
+ txnCommit( model );
+ assertEquals(model.createTypedLiteral("foo"),
+ r.getProperty(RDF.value).getLiteral());
+ SL.assertHasStart( "add", statement( r, RDF.value, model.createTypedLiteral("foo")));
}
-
- /**
- * Test that a literal node cannot be as'ed into a resource.
- */
+
@Test
- public void testAsLiteral()
+ public void testBegin()
{
- Model model = getModelProducer().newModel();
- try
+ if (model.supportsTransactions())
{
- ModelHelper.literal(model, "17").as(Resource.class);
- Assert.fail("literals cannot be resources");
+ r.begin();
+ r.abort();
}
- catch (final ResourceRequiredException e)
+ else
{
- JenaTestBase.pass();
+ try {
+ r.begin();
+ fail( "Should have thrown exception");
+ } catch (UnsupportedOperationException expected)
+ {
+ // expected
+ }
}
}
-
- /**
- * Test that a non-literal node can be as'ed into a resource
- */
+
@Test
- public void testCannotAsNonLiteral()
+ public void testAbort()
{
- Model model = getModelProducer().newModel();
- ModelHelper.resource(model, "plumPie").as(Resource.class);
+ if (model.supportsTransactions())
+ {
+ assertEquals( "Model is empty", 0, model.listStatements().toList().size());
+ r.begin();
+ r.addLiteral( RDF.value, "foo" );
+ r.abort();
+ assertEquals( "Model is empty", 0, model.listStatements().toList().size());
+ }
+ else
+ {
+ try {
+ r.abort();
+ fail( "Should have thrown exception");
+ } catch (UnsupportedOperationException expected)
+ {
+ // expected
+ }
+ }
}
-
+
@Test
- public void testGetLocalNameReturnsLocalName()
+ public void testCommit()
{
- Model model = getModelProducer().newModel();
- Assert.assertEquals("xyz", model.createResource("eh:xyz")
- .getLocalName());
+ if (model.supportsTransactions())
+ {
+ assertEquals( "Model is empty", 0, model.listStatements().toList().size());
+ r.begin();
+ r.addLiteral( RDF.value, "foo" );
+ r.commit();
+ assertEquals( "Model is empty", 1, model.listStatements().toList().size());
+ }
+ else
+ {
+ try {
+ r.abort();
+ fail( "Should have thrown exception");
+ } catch (UnsupportedOperationException expected)
+ {
+ // expected
+ }
+ }
}
- @Test
- public void testGetModel()
- {
- Model model = getModelProducer().newModel();
- Assert.assertSame(model, model.createResource("eh:/wossname")
- .getModel());
- }
+ /*
+ * A resource can only be equal to another resource. If both resources are not anonymous,
+ * then they are equal if the URI's are equal. If both resources are anonymous, they are
+ * equal only if there Id's are the same. If one resource is anonymous and the other is not,
+ * then they are not equal.
+ *
+ */
@Test
- public void testGetPropertyResourceValueReturnsNull()
+ public void testEquals_Object()
{
- final Model model = modelWithStatements(getModelProducer(), "x p 17");
- final Resource r = model.createResource("eh:/x");
- Assert.assertNull(r.getPropertyResourceValue(ModelHelper.property("q")));
- Assert.assertNull(r.getPropertyResourceValue(ModelHelper.property("p")));
+ Resource r1 = model.createResource();
+ Resource r2 = model.createResource();
+ assertNotEquals( "Anonymous resources with different Ids", r1, r2);
+
+ r1 = model.createResource( AnonId.create("1"));
+ r2 = model.createResource( AnonId.create("1"));
+ assertEquals( "Anonymous resources with same Ids", r1, r2);
+
+ r1 = model.createResource( "http://example.com/one");
+ r2 = model.createResource( "http://example.com/two");
+ assertNotEquals( "resources with different URIs", r1, r2);
+
+ r1 = model.createResource( "http://example.com/same");
+ r2 = model.createResource( "http://example.com/same");
+ assertEquals( "resources with same URIs", r1, r2);
+
+ r1 = model.createResource( "http://example.com/one");
+ r2 = model.createResource( AnonId.create("1"));
+ assertNotEquals( "anon and uri resource", r1, r2);
}
-
+
@Test
- public void testGetPropertyResourceValueReturnsResource()
+ public void testGetId()
{
- final Model model = modelWithStatements(getModelProducer(),
- "x p 17; x p y");
- final Resource r = model.createResource("eh:/x");
- final Resource value = r.getPropertyResourceValue(ModelHelper
- .property("p"));
- Assert.assertEquals(ModelHelper.resource("y"), value);
+ AnonId id = AnonId.create("5");
+ r = model.createResource( id );
+ assertEquals( id, r.getId() );
+
+ id = AnonId.create("foo");
+ r = model.createResource( id );
+ assertEquals( id, r.getId() );
+
+ r = model.createResource( "http://example.com/foo" );
+ try {
+ assertNull( "An acceptable value, perhaps exception should be required", r.getId() );
+ } catch (UnsupportedOperationException exprected)
+ {
+ // expected
+ }
}
-
+
@Test
- public void testHasTypedPropertyBoolean()
+ public void testGetLocalName()
{
- Model model = getModelProducer().newModel();
- final Resource r = model.createResource();
- r.addLiteral(RDF.value, false);
- Assert.assertTrue(r.hasLiteral(RDF.value, false));
+ // simple case
+ assertEquals( "foo", model.createResource( "http://example.com/foo" ).getLocalName() );
+
+ assertEquals( "colon", model.createResource( "http://example.com/has:colon" ).getLocalName() );
+ assertEquals( "space", model.createResource( "http://example.com/with a space" ).getLocalName() );
+ assertEquals( "dashStart", model.createResource( "http://example.com/-dashStart" ).getLocalName() );
+ assertEquals( "octothorp", model.createResource( "http://example.com/has#octothorp" ).getLocalName() );
+ assertEquals( "slash", model.createResource( "http://example.com/has/slash" ).getLocalName() );
+ assertEquals( "numericStart", model.createResource( "http://example.com/1numericStart" ).getLocalName() );
+ assertEquals( "dotStart", model.createResource( "http://example.com/.dotStart" ).getLocalName() );
+ assertEquals( "all numeric returns empty string", "", model.createResource( "http://example.com/12345" ).getLocalName() );
+ assertEquals( "uri only returns empty string", "", model.createResource( "http://example.com#" ).getLocalName() );
+ assertEquals( "uri only returns empty string", "", model.createResource( "http://example.com/" ).getLocalName() );
+ assertEquals( "octothorp", model.createResource( "http://example.com/has#multiple#octothorp" ).getLocalName() );
}
@Test
- public void testHasTypedPropertyChar()
+ public void testGetNameSpace()
{
- Model model = getModelProducer().newModel();
- final Resource r = model.createResource();
- r.addLiteral(RDF.value, 'x');
- Assert.assertTrue(r.hasLiteral(RDF.value, 'x'));
+ // simple case
+ assertEquals( "http://example.com/", model.createResource( "http://example.com/foo" ).getNameSpace() );
+
+ assertEquals( "http://example.com/has:", model.createResource( "http://example.com/has:colon" ).getNameSpace() );
+ assertEquals( "http://example.com/with a ", model.createResource( "http://example.com/with a space" ).getNameSpace() );
+ assertEquals( "http://example.com/-", model.createResource( "http://example.com/-dashStart" ).getNameSpace() );
+ assertEquals( "http://example.com/has#", model.createResource( "http://example.com/has#octothorp" ).getNameSpace() );
+ assertEquals( "http://example.com/has/", model.createResource( "http://example.com/has/slash" ).getNameSpace() );
+ assertEquals( "http://example.com/1", model.createResource( "http://example.com/1numericStart" ).getNameSpace() );
+ assertEquals( "http://example.com/.", model.createResource( "http://example.com/.dotStart" ).getNameSpace() );
+ assertEquals( "all numeric returns empty string", "http://example.com/12345", model.createResource( "http://example.com/12345" ).getNameSpace() );
+ assertEquals( "uri only returns uri", "http://example.com#", model.createResource( "http://example.com#" ).getNameSpace() );
+ assertEquals( "uri only returns uri", "http://example.com/", model.createResource( "http://example.com/" ).getNameSpace() );
+ assertEquals( "http://example.com/has#multiple#", model.createResource( "http://example.com/has#multiple#octothorp" ).getNameSpace() );
+
+
}
@Test
- public void testHasTypedPropertyDouble()
+ public void testGetProperty_Property()
{
- Model model = getModelProducer().newModel();
- final Resource r = model.createResource();
- r.addLiteral(RDF.value, 1.0d);
- Assert.assertTrue(r.hasLiteral(RDF.value, 1.0d));
- }
+ txnBegin( model );
+ modelAdd( model, "x p 17; x P y");
+ txnCommit( model );
+ r = model.createResource("eh:/x");
+
+ Statement stmt = null;
+
+ stmt = r.getProperty(RDF.type);
+ assertNull( "Missing value should return null", stmt );
+ stmt = r.getRequiredProperty( property("P"));
+ assertEquals( r, stmt.getSubject());
+ assertEquals( property( "P"), stmt.getPredicate());
+ assertEquals( rdfNode( "y" ), stmt.getObject());
- @Test
- public void testHasTypedPropertyFloat()
- {
- Model model = getModelProducer().newModel();
- final Resource r = model.createResource();
- r.addLiteral(RDF.value, 1.0f);
- Assert.assertTrue(r.hasLiteral(RDF.value, 1.0f));
}
-
+
@Test
- public void testHasTypedPropertyInt()
+ public void testGetPropertyResourceValue_Property()
{
- Model model = getModelProducer().newModel();
- final Resource r = model.createResource();
- r.addLiteral(RDF.value, 1);
- Assert.assertTrue(r.hasLiteral(RDF.value, 1));
+ txnBegin( model );
+ modelAdd( model, "x p 17; x P y");
+ txnCommit( model );
+ r = model.createResource("eh:/x");
+
+ // check for missing value
+ assertNull("value is missing", r.getPropertyResourceValue(property("q")));
+
+ // check where value is literal
+ assertNull( "value is literal", r.getPropertyResourceValue(property("p")));
+
+ Resource r2 = r.getPropertyResourceValue(property("P"));
+ assertNotNull( r2 );
+ assertEquals( resource("y"), r2 );
}
-
+
@Test
- public void testHasTypedPropertyLong()
+ public void testGetRequiredProperty_Property()
{
- Model model = getModelProducer().newModel();
- final Resource r = model.createResource();
- r.addLiteral(RDF.value, 1L);
- Assert.assertTrue(r.hasLiteral(RDF.value, 1L));
- }
+ txnBegin( model );
+ modelAdd( model, "x p 17; x P y");
+ txnCommit( model );
+ r = model.createResource("eh:/x");
+
+ try
+ {
+ r.getRequiredProperty(RDF.type);
+ fail("missing property should throw PropertyNotFoundException");
+ }
+ catch (final PropertyNotFoundException expected)
+ {
+ // expected
+ }
+ Statement stmt = r.getRequiredProperty( property("P"));
+ assertEquals( r, stmt.getSubject());
+ assertEquals( property( "P"), stmt.getPredicate());
+ assertEquals( rdfNode( "y" ), stmt.getObject());
- @Test
- public void testHasTypedPropertyObject()
- {
- Model model = getModelProducer().newModel();
- final Object z = new Object();
- final Resource r = model.createResource();
- r.addLiteral(RDF.value, z);
- Assert.assertTrue(r.hasLiteral(RDF.value, z));
}
-
+
@Test
- public void testHasTypedPropertyString()
+ public void testGetURI()
{
-// FIXME implement this
+ assertNull( r.getURI());
+ assertEquals( "http://example.com/foo", model.createResource( "http://example.com/foo" ).getURI());
}
-
+
@Test
- public void testHasURI()
+ public void testHasLiteral_Property_boolean()
{
- Model model = getModelProducer().newModel();
- Resource r = model.createResource("eh:xyz" );
- Assert.assertTrue(r.hasURI("eh:xyz"));
- Assert.assertFalse(r.hasURI("eh:1yz"));
- r = model.createResource();
- Assert.assertFalse(r.hasURI("42"));
+ txnBegin( model );
+ r.addLiteral(RDF.value, false);
+ txnCommit( model );
+
+ assertTrue(r.hasLiteral(RDF.value, false));
+ assertFalse(r.hasLiteral(RDF.value, true));
}
-
+
+
+
@Test
- public void testNameSpace()
+ public void testHasLiteral_Property_byte()
{
- Model model = getModelProducer().newModel();
- Resource r = model.createResource("eh:xyz" );
- Assert.assertEquals("eh:", r.getNameSpace());
- r = model.createResource("http://d/stuff");
- Assert.assertEquals("http://d/", r.getNameSpace());
- r = model.createResource("ftp://dd.com/12345");
- Assert.assertEquals("ftp://dd.com/12345",
- r.getNameSpace());
- r = model.createResource("http://domain/spoo#anchor");
- Assert.assertEquals("http://domain/spoo#",
- r.getNameSpace());
- r = model.createResource("ftp://abd/def#ghi#e11-2");
- Assert.assertEquals("ftp://abd/def#ghi#",
- r.getNameSpace());
+ byte b = "B".getBytes()[0];
+ byte b2 = "C".getBytes()[0];
+
+ txnBegin( model );
+ r.addLiteral(RDF.value, b);
+ txnCommit( model );
+ assertTrue(r.hasLiteral(RDF.value, b));
+ assertFalse(r.hasLiteral(RDF.value, b2));
}
-
- // FIXME
- protected final String lang = "en";
- protected Literal tvLiteral;
-
- protected Resource tvResource;
-
- private Resource setUp(Model model) throws Exception
+ @Test
+ public void testHasLiteral_Property_short()
{
+ short s = 5;
+ short s2 = 6;
- tvLiteral = model.createLiteral("test 12 string 2");
- tvResource = model.createResource();
- Resource r = model.createResource()
- .addLiteral(RDF.value, tvBoolean)
- .addLiteral(RDF.value, tvByte)
- .addLiteral(RDF.value, tvShort)
- .addLiteral(RDF.value, tvInt)
- .addLiteral(RDF.value, tvLong)
- .addLiteral(RDF.value, tvChar)
- .addLiteral(RDF.value, tvFloat)
- .addLiteral(RDF.value, tvDouble)
- .addProperty(RDF.value, tvString)
- .addProperty(RDF.value, tvString, lang)
- .addLiteral(RDF.value, tvObject)
- .addProperty(RDF.value, tvLiteral)
- .addProperty(RDF.value, tvResource);
- return r;
+ txnBegin( model );
+ r.addLiteral(RDF.value, s);
+ txnCommit( model );
+ assertTrue(r.hasLiteral(RDF.value, s));
+ assertFalse(r.hasLiteral(RDF.value, s2));
}
@Test
- public void testAllSubjectsCorrect() throws Exception
+ public void testHasLiteral_Property_char()
{
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- testHasSubjectR(r, model.listStatements());
- testHasSubjectR(r, r.listProperties());
- }
+ txnBegin( model );
+ r.addLiteral(RDF.value, 'x');
+ txnCommit( model );
+ assertTrue(r.hasLiteral(RDF.value, 'x'));
+ assertFalse(r.hasLiteral(RDF.value, 'y'));
+ }
+
@Test
- public void testBoolean()throws Exception
+ public void testHasLiteral_Property_double()
{
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertTrue(r.hasLiteral(RDF.value,
- tvBoolean));
+ txnBegin( model );
+ r.addLiteral(RDF.value, 1.0d);
+ txnCommit( model );
+ assertTrue(r.hasLiteral(RDF.value, 1.0d));
+ assertFalse(r.hasLiteral(RDF.value, 2.0d));
+ assertFalse(r.hasLiteral(RDF.value, 1.0f));
}
@Test
- public void testByte()throws Exception
+ public void testHasLiteral_Property_float()
{
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertTrue(r.hasLiteral(RDF.value, tvByte));
+ txnBegin( model );
+ r.addLiteral(RDF.value, 1.0f);
+ txnCommit( model );
+ assertTrue(r.hasLiteral(RDF.value, 1.0f));
+ assertFalse(r.hasLiteral(RDF.value, 2.0f));
+ assertFalse(r.hasLiteral(RDF.value, 1.0d));
}
-
+
@Test
- public void testChar()throws Exception
+ public void testHasLiteral_Property_long()
{
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertTrue(r.hasLiteral(RDF.value, tvChar));
+ txnBegin( model );
+ r.addLiteral(RDF.value, 1L);
+ txnCommit( model );
+ assertTrue(r.hasLiteral(RDF.value, 1L));
+ assertFalse(r.hasLiteral(RDF.value, 2L));
+ logAssertFalse( this.getClass(), "literal should not be an int", r.hasLiteral(RDF.value, 1));
}
-
+
@Test
- public void testCorrectSubject()throws Exception
+ public void testHasLiteral_Property_int()
{
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertEquals(r, r.getRequiredProperty(RDF.value).getSubject());
+ txnBegin( model );
+ r.addLiteral(RDF.value, 1);
+ txnCommit( model );
+ assertTrue(r.hasLiteral(RDF.value, 1));
+ assertFalse(r.hasLiteral(RDF.value, 2));
+ logAssertFalse(this.getClass(), "literal should not be a long", r.hasLiteral(RDF.value, 1L));
}
-
+
@Test
- public void testCountsCorrect()throws Exception
+ public void testHasLiteral_Property_Object()
{
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertEquals(13,
- GraphTestBase.iteratorToList(model.listStatements()).size());
- Assert.assertEquals(13,
- GraphTestBase.iteratorToList(r.listProperties(RDF.value))
- .size());
- Assert.assertEquals(0,
- GraphTestBase.iteratorToList(r.listProperties(RDF.type)).size());
+ final Object z = new Object();
+ txnBegin( model );
+ r.addLiteral(RDF.value, z);
+ txnCommit( model );
+ assertTrue(r.hasLiteral(RDF.value, z));
+ assertFalse(r.hasLiteral(RDF.value, new Object()));
}
-
+
@Test
- public void testDouble()throws Exception
+ public void testHasProperty_Property()
{
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertTrue(r.hasLiteral(RDF.value,
- tvDouble));
+ final RDFNode rdf = rdfNode( "http://example.com/rdf");
+ txnBegin( model );
+ r.addProperty(RDF.value, rdf);
+ txnCommit( model );
+ assertTrue(r.hasProperty(RDF.value));
+ assertFalse(r.hasProperty(RDF.type));
+ assertTrue(r.hasProperty(null));
}
@Test
- public void testFloat()throws Exception
+ public void testHasProperty_Property_RDFNode()
{
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertTrue(r
- .hasLiteral(RDF.value, tvFloat));
+ final RDFNode rdf = rdfNode( "http://example.com/rdf");
+ txnBegin( model );
+ r.addProperty(RDF.value, rdf);
+ txnCommit( model );
+ assertTrue(r.hasProperty(RDF.value, rdf));
+ assertFalse(r.hasProperty(RDF.value, rdfNode( "http://example.com/rdf2")));
+ assertFalse(r.hasProperty(RDF.type, rdf));
+ assertTrue(r.hasProperty(null, rdf));
+ assertTrue(r.hasProperty(null, (RDFNode)null));
}
@Test
- protected void testHasSubjectR( Resource r, final StmtIterator it )
+ public void testHasProperty_Property_String()
{
- while (it.hasNext())
+ txnBegin( model );
+ r.addProperty(RDF.value, "foo");
+ txnCommit( model );
+ assertTrue( r.hasProperty( RDF.value, "foo"));
+ try {
+ r.hasProperty( RDF.value, (String)null);
+ fail( "Should throw null pointer exception");
+ }
+ catch (NullPointerException expected)
{
- Assert.assertEquals(r, it.nextStatement().getSubject());
+ // expected
}
+ assertFalse( r.hasProperty( RDF.type, "foo"));
+ assertTrue( r.hasProperty( null, "foo"));
}
-
- @Test
- public void testInt()throws Exception
- {
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertTrue(r.hasLiteral(RDF.value, tvInt));
- }
-
- @Test
- public void testLiteral()throws Exception
- {
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertTrue(r.hasProperty(RDF.value, tvLiteral));
- }
-
- @Test
- public void testLong()throws Exception
- {
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertTrue(r.hasLiteral(RDF.value, tvLong));
- }
-
+
@Test
- public void testNoSuchPropertyException()throws Exception
+ public void testHasProperty_Property_String_String()
{
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- try
- {
- r.getRequiredProperty(RDF.type);
- Assert.fail("missing property should throw exception");
+ txnBegin( model );
+ r.addProperty(RDF.value, "foo", "fr");
+ txnCommit( model );
+
+ assertTrue( r.hasProperty( RDF.value, "foo", "fr"));
+ assertFalse( r.hasProperty( RDF.value, "foo", "en"));
+ assertFalse( r.hasProperty( RDF.value, "foo", null ));
+ try {
+ r.hasProperty( RDF.value, null, "fr");
}
- catch (final PropertyNotFoundException e)
+ catch (NullPointerException expected)
{
- JenaTestBase.pass();
+ // expected
+ }
+ try {
+ r.hasProperty( RDF.value, null, null);
}
+ catch (NullPointerException expected)
+ {
+ // expected
+ }
}
@Test
- public void testNoSuchPropertyNull()throws Exception
+ public void testHasURI()
{
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertNull(r.getProperty(RDF.type));
+ r = model.createResource();
+ assertFalse( model.createResource().hasURI( "http://example.com/foo"));
+ assertFalse( model.createResource( AnonId.create("foo")).hasURI( AnonId.create("foo").getLabelString()));
+ assertFalse( model.createResource( "urn:foo:bar").hasURI( "http://example.com/foo"));
+ assertTrue( model.createResource("http://example.com/foo").hasURI( "http://example.com/foo"));
}
-
+
@Test
- public void testObject()throws Exception
+ public void testlistProperties()
{
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertTrue(r.hasLiteral(RDF.value,
- tvObject));
+ Property[] props = { property("P"), property("Q"), property("R"), property("S") };
+ txnBegin( model );
+ r.addLiteral( property( "P") , "foo");
+ r.addLiteral( property( "Q") , "foo");
+ r.addLiteral( property( "R") , "foo");
+ r.addLiteral( property( "S") , "foo");
+ r.addLiteral( property( "S") , "bar");
+ txnCommit( model );
+
+ List<Statement> lst = r.listProperties().toList();
+ List<Property> pLst = Arrays.asList( props );
+ assertEquals( 5, lst.size() );
+ for (Statement s : lst ) {
+ assertTrue( "missing "+s.getPredicate(), pLst.contains(s.getPredicate()) );
+ assertEquals(r, s.getSubject());
+ }
}
-
+
@Test
- public void testRemoveProperties()throws Exception
+ public void testlistProperties_Property()
{
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- r.removeProperties();
- Assert.assertEquals(false, model
- .listStatements(r, null, (RDFNode) null).hasNext());
- }
+ txnBegin( model );
+ r.addLiteral( property( "P") , "foo");
+ r.addLiteral( property( "Q") , "foo");
+ r.addLiteral( property( "R") , "foo");
+ r.addLiteral( property( "S") , "foo");
+ r.addLiteral( property( "S") , "bar");
+ txnCommit( model );
+
+ List<Statement> lst = r.listProperties( property("P")).toList();
+ assertEquals( 1, lst.size() );
+ assertEquals( property("P"), lst.get(0).getPredicate() );
+ assertEquals(r, lst.get(0).getSubject());
+
+ lst = r.listProperties( property("S")).toList();
+ assertEquals( 2, lst.size() );
+ assertEquals( property("S"), lst.get(0).getPredicate() );
+ assertEquals(r, lst.get(0).getSubject());
+ assertEquals( property("S"), lst.get(1).getPredicate() );
+ assertEquals(r, lst.get(1).getSubject());
+
+ List<String> pLst = Arrays.asList( "foo", "bar" );
+ for (Statement s : lst ) {
+ assertTrue( "missing "+s.getObject(), pLst.contains(s.getObject().asLiteral().getString()) );
+ }
+
- @Test
- public void testResource()throws Exception
- {
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertTrue(r.hasProperty(RDF.value, tvResource));
}
-
+
@Test
- public void testShort()throws Exception
+ public void testRemoveProperties()
{
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertTrue(r
- .hasLiteral(RDF.value, tvShort));
+ txnBegin( model );
+ r.addLiteral( property( "P") , "foo");
+ r.addLiteral( property( "Q") , "foo");
+ r.addLiteral( property( "R") , "foo");
+ r.addLiteral( property( "S") , "foo");
+ r.addLiteral( property( "S") , "bar");
+ modelAdd( model, "x P y; x S 'foo'");
+ txnCommit( model );
+
+ Literal vFoo = model.createTypedLiteral( "foo" );
+ Literal vBar = model.createTypedLiteral( "bar" );
+
+ model.register( SL );
+ txnBegin( model );
+ r.removeProperties();
+ txnCommit( model );
+
+ SL.assertContains( "remove", statement( r, property( "P"), vFoo ));
+ SL.assertContains( "remove", statement( r, property( "Q"), vFoo ));
+ SL.assertContains( "remove", statement( r, property( "R"), vFoo ));
+ SL.assertContains( "remove", statement( r, property( "S"), vFoo ));
+ SL.assertContains( "remove", statement( r, property( "S"), vBar ));
+ SL.assertContains( "remove", statement( r, property( "P"), vFoo ));
+ SL.assertContains( "someEvent", model, new GraphEvents( "remove", new Triple( r.asNode(), Node.ANY, Node.ANY )));
+
+ assertEquals( "Should have removed all 'r' statements", 0, model.listStatements( r, null, (RDFNode)null).toList().size());
+ assertEquals( "Should have remaining statements", 2, model.listStatements().toList().size());
}
- @Test
- public void testString()throws Exception
- {
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertTrue(r.hasProperty(RDF.value,
- tvString));
- }
- @Test
- public void testStringWithLanguage()throws Exception
- {
- Model model = getModelProducer().newModel();
- Resource r = setUp( model );
- Assert.assertTrue(r.hasProperty(RDF.value,
- tvString, lang));
- }
+
+//// FIXME implement this
+
+//
+//
+// @Test
+// public void testLiteral()throws Exception
+// {
+// Model model = getModelProducer().newModel();
+// Resource r = setUp( model );
+// assertTrue(r.hasProperty(RDF.value, tvLiteral));
+// }
+//
+
+//
+//
+//
+//
+//
+// @Test
+// public void testShort()throws Exception
+// {
+// Model model = getModelProducer().newModel();
+// Resource r = setUp( model );
+// assertTrue(r
+// .hasLiteral(RDF.value, tvShort));
+// }
+//
+// @Test
+// public void testString()throws Exception
+// {
+// Model model = getModelProducer().newModel();
+// Resource r = setUp( model );
+// assertTrue(r.hasProperty(RDF.value,
+// tvString));
+// }
+//
+// @Test
+// public void testStringWithLanguage()throws Exception
+// {
+// Model model = getModelProducer().newModel();
+// Resource r = setUp( model );
+// assertTrue(r.hasProperty(RDF.value,
+// tvString, lang));
+// }
}
Modified: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/temp/RDFNodeTest.java
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/temp/RDFNodeTest.java?rev=1525417&r1=1525416&r2=1525417&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/temp/RDFNodeTest.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/temp/RDFNodeTest.java Sun Sep 22 19:20:05 2013
@@ -1,26 +1,33 @@
package com.hp.hpl.jena.rdf.model.temp;
-import com.hp.hpl.jena.rdf.model.AbstractRDFNodeTest;
+import static com.hp.hpl.jena.testing_framework.ModelHelper.txnBegin;
+
+import com.hp.hpl.jena.rdf.model.AbstractRDFNodeContractTests;
import com.hp.hpl.jena.rdf.model.Model;
import com.hp.hpl.jena.rdf.model.ModelFactory;
+import com.hp.hpl.jena.rdf.model.RDFNode;
import com.hp.hpl.jena.testing_framework.AbstractModelProducer;
import com.hp.hpl.jena.testing_framework.ModelProducerInterface;
+import com.hp.hpl.jena.testing_framework.NodeProducerInterface;
-public class RDFNodeTest extends AbstractRDFNodeTest {
+public class RDFNodeTest extends AbstractRDFNodeContractTests {
- AbstractModelProducer producer = new AbstractModelProducer()
+
+ NodeProducerInterface producer = new NodeProducerInterface()
{
@Override
- protected Model createNewModel() {
- return ModelFactory.createDefaultModel();
+ public RDFNode newRDFNode() {
+ return ModelFactory.createDefaultModel().createResource();
}
+
+
};
-
+
@Override
- public ModelProducerInterface getModelProducer() {
+ protected NodeProducerInterface getNodeProducer() {
return producer;
}
-
+
}
Added: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/temp/ResourceNodeTest.java
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/temp/ResourceNodeTest.java?rev=1525417&view=auto
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/temp/ResourceNodeTest.java (added)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/temp/ResourceNodeTest.java Sun Sep 22 19:20:05 2013
@@ -0,0 +1,24 @@
+package com.hp.hpl.jena.rdf.model.temp;
+
+import com.hp.hpl.jena.rdf.model.AbstractResourceTest;
+import com.hp.hpl.jena.rdf.model.ModelFactory;
+import com.hp.hpl.jena.rdf.model.RDFNode;
+import com.hp.hpl.jena.testing_framework.NodeProducerInterface;
+
+public class ResourceNodeTest extends AbstractResourceTest {
+
+ NodeProducerInterface producer = new NodeProducerInterface()
+ {
+
+ @Override
+ public RDFNode newRDFNode() {
+ return ModelFactory.createDefaultModel().createResource();
+ }
+ };
+
+ @Override
+ protected NodeProducerInterface getNodeProducer() {
+ return producer;
+ }
+
+}
Propchange: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/temp/ResourceNodeTest.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/shared/AbstractPrefixMappingTest.java
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/shared/AbstractPrefixMappingTest.java?rev=1525417&r1=1525416&r2=1525417&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/shared/AbstractPrefixMappingTest.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/shared/AbstractPrefixMappingTest.java Sun Sep 22 19:20:05 2013
@@ -47,7 +47,7 @@ public abstract class AbstractPrefixMapp
*/
abstract protected PrefixMapping getMapping();
- static final String[] illegalPrefixes = { "<hello>", "has:colon", "with a space",
+ public static final String[] illegalPrefixes = { "<hello>", "has:colon", "with a space",
"-dashStart", "has#octothorp", "has/slash", "1numericStart", ".dotStart" };
public static final String httpURI = "http://example.com/";
@@ -59,7 +59,7 @@ public abstract class AbstractPrefixMapp
public static final String[] prefixes = { httpPrefix, urnPrefix };
public static final String[] uris = { httpURI, urnURI };
- private String createfqn( String prefix, String suffix )
+ private String createFQN( String prefix, String suffix )
{
return String.format( "%s:%s", prefix, suffix );
}
@@ -104,9 +104,9 @@ public abstract class AbstractPrefixMapp
* and element 1 is the string it should expand to.
*/
String[][] expansions = {
- { createfqn(httpPrefix, "pathPart"), httpURI + "pathPart" },
- { createfqn(urnPrefix, "partPath"), urnURI + "partPath" },
- { createfqn(httpPrefix, "path:part"), httpURI + "path:part" }, };
+ { createFQN(httpPrefix, "pathPart"), httpURI + "pathPart" },
+ { createFQN(urnPrefix, "partPath"), urnURI + "partPath" },
+ { createFQN(httpPrefix, "path:part"), httpURI + "path:part" }, };
/**
* these are strings that should not change when they are prefix-expanded
@@ -138,9 +138,9 @@ public abstract class AbstractPrefixMapp
{
logAssertEquals( this.getClass(), "matching uri should return uri", uris[i], ns.shortForm( uris[i] ));
- assertEquals( createfqn( prefixes[i], "tail"), ns.shortForm(uris[i] + "tail"));
- assertEquals( createfqn( prefixes[i], "two/segments"), ns.shortForm(uris[i] + "two/segments"));
- assertEquals( createfqn( prefixes[i], "colon:separated"), ns.shortForm(uris[i] + "colon:separated"));
+ assertEquals( createFQN( prefixes[i], "tail"), ns.shortForm(uris[i] + "tail"));
+ assertEquals( createFQN( prefixes[i], "two/segments"), ns.shortForm(uris[i] + "two/segments"));
+ assertEquals( createFQN( prefixes[i], "colon:separated"), ns.shortForm(uris[i] + "colon:separated"));
}
}
@@ -156,11 +156,11 @@ public abstract class AbstractPrefixMapp
assertNull("Should return null if it is URI only", ns.qnameFor( uris[i] ));
assertNull("Should return null if local name contains a slash", ns.qnameFor( uris[i]+"non/fiction" ));
- assertEquals("Should create qName for "+uris[i] + "rowboat", createfqn( prefixes[i], "rowboat"), ns.qnameFor(uris[i] + "rowboat"));
+ assertEquals("Should create qName for "+uris[i] + "rowboat", createFQN( prefixes[i], "rowboat"), ns.qnameFor(uris[i] + "rowboat"));
// add long version
ns.setNsPrefix( prefixes[i]+"Long", uris[i]+"long/");
- assertEquals("Should return long version if local name contains a slash", createfqn( prefixes[i]+"Long", "name" ), ns.qnameFor( uris[i]+"long/name" ));
+ assertEquals("Should return long version if local name contains a slash", createFQN( prefixes[i]+"Long", "name" ), ns.qnameFor( uris[i]+"long/name" ));
}
}
Modified: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/ModelHelper.java
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/ModelHelper.java?rev=1525417&r1=1525416&r2=1525417&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/ModelHelper.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/ModelHelper.java Sun Sep 22 19:20:05 2013
@@ -370,6 +370,11 @@ public class ModelHelper extends GraphHe
public String toString() {
return "[" + Long.toString(content) + "]";
}
+
+ public long getContent()
+ {
+ return content;
+ }
}
/**
Added: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/NodeProducerInterface.java
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/NodeProducerInterface.java?rev=1525417&view=auto
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/NodeProducerInterface.java (added)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/NodeProducerInterface.java Sun Sep 22 19:20:05 2013
@@ -0,0 +1,36 @@
+/*
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ */
+package com.hp.hpl.jena.testing_framework;
+
+import com.hp.hpl.jena.rdf.model.Model;
+import com.hp.hpl.jena.rdf.model.RDFNode;
+import com.hp.hpl.jena.rdf.model.Resource;
+
+/**
+ * Creates the graph for testing. Implementations must track the creation of
+ * graphs created with newGraph and close them when closeGraphs is called.
+ *
+ */
+public interface NodeProducerInterface {
+
+ /**
+ * Returns a new anonymous RDFNode in an model.
+ */
+ public abstract RDFNode newRDFNode();
+
+}
Propchange: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/NodeProducerInterface.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/TestUtils.java
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/TestUtils.java?rev=1525417&r1=1525416&r2=1525417&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/TestUtils.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/testing_framework/TestUtils.java Sun Sep 22 19:20:05 2013
@@ -275,6 +275,17 @@ public class TestUtils {
}
// FIXME this is to be removed when testing is complete
+ public static void logAssertFalse( Class<?> clazz, String msg, boolean value)
+ {
+ if (!value)
+ {
+ return;
+ }
+
+ LoggerFactory.getLogger(clazz).warn( String.format( "%s", msg));
+ System.out.println( String.format( "[%s WARNING] %s ", clazz, msg));
+ }
+ // FIXME this is to be removed when testing is complete
public static void logAssertSame( Class<?> clazz, String msg, Object obj1, Object obj2)
{
if (obj1 == null && obj2 == null)