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/10/09 19:16:18 UTC
svn commit: r1530718 [8/10] - in /jena/Experimental/new-test: ./
src/test/java/com/hp/hpl/jena/graph/
src/test/java/com/hp/hpl/jena/graph/compose/
src/test/java/com/hp/hpl/jena/graph/impl/
src/test/java/com/hp/hpl/jena/mem/ src/test/java/com/hp/hpl/jen...
Copied: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RDFReaderFContractTests.java (from r1525287, jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFReaderFContractTests.java)
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RDFReaderFContractTests.java?p2=jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RDFReaderFContractTests.java&p1=jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFReaderFContractTests.java&r1=1525287&r2=1530718&rev=1530718&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFReaderFContractTests.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RDFReaderFContractTests.java Wed Oct 9 17:16:15 2013
@@ -4,115 +4,115 @@ import java.io.InputStream;
import java.io.Reader;
import org.junit.Test;
+import org.xenei.junit.contract.Contract;
+
import com.hp.hpl.jena.shared.NoReaderForLangException;
+import org.xenei.junit.contract.IProducer;
import com.hp.hpl.jena.testing_framework.TestFileData;
import static org.junit.Assert.*;
import static com.hp.hpl.jena.testing_framework.ModelHelper.*;
-public abstract class AbstractRDFReaderFContractTests {
-
- protected abstract RDFReaderF getRDFReaderF();
-
+@Contract(RDFReaderF.class)
+public abstract class RDFReaderFContractTests {
+
+ @Contract.Inject( "org.xenei.junit.contract.IProducer<%s>" )
+ protected abstract IProducer<RDFReaderF> getRDFReaderFProducer();
+
@Test
- public void testGetReader() throws Exception
- {
- RDFReader reader = getRDFReaderF().getReader();
-
+ public void testGetReader() throws Exception {
+ RDFReader reader = getRDFReaderFProducer().newInstance().getReader();
+
Model model = ModelFactory.createDefaultModel();
// read the RDF file just to make sure we can
-
- txnBegin( model );
+
+ txnBegin(model);
reader.read(model, TestFileData.getRDFName());
- txnCommit( model );
+ txnCommit(model);
}
-
+
@Test
- public void testGetReader_String() throws Exception
- {
+ public void testGetReader_String() throws Exception {
/*
- RDF/XML - default
- RDF/XML-ABBREV
- N-TRIPLE
- N3
- */
+ * RDF/XML - default RDF/XML-ABBREV N-TRIPLE N3
+ */
Model model = ModelFactory.createDefaultModel();
- RDFReader reader = getRDFReaderF().getReader( "RDF/XML");
+ RDFReader reader = getRDFReaderFProducer().newInstance().getReader(
+ "RDF/XML");
// read the RDF file just to make sure we can
- txnBegin( model );
+ txnBegin(model);
reader.read(model, TestFileData.getRDFName());
- txnCommit( model );
-
-
+ txnCommit(model);
+
model = ModelFactory.createDefaultModel();
- reader = getRDFReaderF().getReader( "RDF/XML-ABBREV");
+ reader = getRDFReaderFProducer().newInstance().getReader(
+ "RDF/XML-ABBREV");
// read the RDF file just to make sure we can
- txnBegin( model );
+ txnBegin(model);
reader.read(model, TestFileData.getRDFName());
- txnCommit( model );
-
+ txnCommit(model);
+
model = ModelFactory.createDefaultModel();
- reader = getRDFReaderF().getReader( "N-TRIPLE");
+ reader = getRDFReaderFProducer().newInstance().getReader("N-TRIPLE");
// read the RDF file just to make sure we can
- txnBegin( model );
+ txnBegin(model);
reader.read(model, TestFileData.getTTLName());
- txnCommit( model );
-
+ txnCommit(model);
+
model = ModelFactory.createDefaultModel();
- reader = getRDFReaderF().getReader( "N3");
+ reader = getRDFReaderFProducer().newInstance().getReader("N3");
// read the RDF file just to make sure we can
- txnBegin( model );
+ txnBegin(model);
reader.read(model, TestFileData.getTTLName());
- txnCommit( model );
-
+ txnCommit(model);
+
// try invalid value
try {
- reader = getRDFReaderF().getReader( "foo");
- }
- catch (NoReaderForLangException expected)
- {
+ reader = getRDFReaderFProducer().newInstance().getReader("foo");
+ } catch (NoReaderForLangException expected) {
// expected
}
-
+
}
-
+
@Test
- public void testSetReaderClassName() throws Exception
- {
-
- String before = getRDFReaderF().setReaderClassName("foo", DummyReader.class.getName());
-
- assertNull( "Should not be an existing name", before );
-
- RDFReader reader = getRDFReaderF().getReader("foo");
- assertEquals( "Wrong reader type", DummyReader.class, reader.getClass());
-
+ public void testSetReaderClassName() throws Exception {
+
+ String before = getRDFReaderFProducer().newInstance()
+ .setReaderClassName("foo", DummyReader.class.getName());
+
+ assertNull("Should not be an existing name", before);
+
+ RDFReader reader = getRDFReaderFProducer().newInstance().getReader(
+ "foo");
+ assertEquals("Wrong reader type", DummyReader.class, reader.getClass());
+
// FIXME add test when remove reader is available
- //String s2 = getRDFReaderF().setReaderClassName("foo", null);
- //assertEquals( DummyReader.class.getCanonicalName(), s2 );
-
- //reader = getRDFReaderF().getReader("foo");
- //assertNull( "should not return a reder", reader );
+ // String s2 = getRDFReaderF().setReaderClassName("foo", null);
+ // assertEquals( DummyReader.class.getCanonicalName(), s2 );
+
+ // reader = getRDFReaderF().getReader("foo");
+ // assertNull( "should not return a reder", reader );
}
-
+
public static class DummyReader implements RDFReader {
@Override
public void read(Model model, Reader r, String base) {
// TODO Auto-generated method stub
-
+
}
@Override
public void read(Model model, InputStream r, String base) {
// TODO Auto-generated method stub
-
+
}
@Override
public void read(Model model, String url) {
// TODO Auto-generated method stub
-
+
}
@Override
@@ -126,7 +126,7 @@ public abstract class AbstractRDFReaderF
// TODO Auto-generated method stub
return null;
}
-
+
}
}
Copied: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RDFWriterFContractTests.java (from r1525287, jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFWriterFContractTests.java)
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RDFWriterFContractTests.java?p2=jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RDFWriterFContractTests.java&p1=jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFWriterFContractTests.java&r1=1525287&r2=1530718&rev=1530718&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractRDFWriterFContractTests.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RDFWriterFContractTests.java Wed Oct 9 17:16:15 2013
@@ -5,99 +5,106 @@ import java.io.OutputStream;
import java.io.Writer;
import org.junit.Test;
+import org.xenei.junit.contract.Contract;
+
import com.hp.hpl.jena.shared.NoWriterForLangException;
+import org.xenei.junit.contract.IProducer;
import com.hp.hpl.jena.testing_framework.TestFileData;
import static org.junit.Assert.*;
-public abstract class AbstractRDFWriterFContractTests {
-
- protected abstract RDFWriterF getRDFWriterF();
-
- private Model model = ModelFactory.createModelForGraph( TestFileData.getGraph() );
-
+@Contract(RDFWriterF.class)
+public abstract class RDFWriterFContractTests {
+
+ @Contract.Inject( "org.xenei.junit.contract.IProducer<%s>" )
+ protected abstract IProducer<RDFWriterF> getRDFWriterFProducer();
+
+ private Model model = ModelFactory.createModelForGraph(TestFileData
+ .getGraph());
+
@Test
- public void testGetWriter() throws Exception
- {
- RDFWriter writer = getRDFWriterF().getWriter();
-
+ public void testGetWriter() throws Exception {
+ RDFWriter writer = getRDFWriterFProducer().newInstance().getWriter();
+
// write the RDF file just to make sure we can
- writer.write(model, new ByteArrayOutputStream(), "http://example.com/base/");
+ writer.write(model, new ByteArrayOutputStream(),
+ "http://example.com/base/");
}
-
+
@Test
- public void testGetWriter_String() throws Exception
- {
+ public void testGetWriter_String() throws Exception {
/*
- RDF/XML - default
- RDF/XML-ABBREV
- N-TRIPLE
- N3
- */
+ * RDF/XML - default RDF/XML-ABBREV N-TRIPLE N3
+ */
Model model = ModelFactory.createDefaultModel();
- RDFWriter writer = getRDFWriterF().getWriter( "RDF/XML");
+ RDFWriter writer = getRDFWriterFProducer().newInstance().getWriter(
+ "RDF/XML");
// read the RDF file just to make sure we can
- writer.write(model, new ByteArrayOutputStream(), "http://example.com/base/");
-
-
-
+ writer.write(model, new ByteArrayOutputStream(),
+ "http://example.com/base/");
+
model = ModelFactory.createDefaultModel();
- writer = getRDFWriterF().getWriter( "RDF/XML-ABBREV");
+ writer = getRDFWriterFProducer().newInstance().getWriter(
+ "RDF/XML-ABBREV");
// read the RDF file just to make sure we can
- writer.write(model, new ByteArrayOutputStream(), "http://example.com/base/");
-
+ writer.write(model, new ByteArrayOutputStream(),
+ "http://example.com/base/");
+
model = ModelFactory.createDefaultModel();
- writer = getRDFWriterF().getWriter( "N-TRIPLE");
+ writer = getRDFWriterFProducer().newInstance().getWriter("N-TRIPLE");
// read the RDF file just to make sure we can
- writer.write(model, new ByteArrayOutputStream(), "http://example.com/base/");
-
+ writer.write(model, new ByteArrayOutputStream(),
+ "http://example.com/base/");
+
model = ModelFactory.createDefaultModel();
- writer = getRDFWriterF().getWriter( "N3");
+ writer = getRDFWriterFProducer().newInstance().getWriter("N3");
// read the RDF file just to make sure we can
- writer.write(model, new ByteArrayOutputStream(), "http://example.com/base/");
-
+ writer.write(model, new ByteArrayOutputStream(),
+ "http://example.com/base/");
+
// try invalid value
try {
- writer = getRDFWriterF().getWriter( "foo");
- }
- catch (NoWriterForLangException expected)
- {
+ writer = getRDFWriterFProducer().newInstance().getWriter("foo");
+ } catch (NoWriterForLangException expected) {
// expected
}
-
+
}
-
+
@Test
- public void testSetWriterClassName() throws Exception
- {
-
- String before = getRDFWriterF().setWriterClassName("foo", DummyWriter.class.getName());
-
- assertNull( "Should not be an existing name", before );
-
- RDFWriter writer = getRDFWriterF().getWriter("foo");
- assertEquals( "Wrong reader type", DummyWriter.class, writer.getClass());
-
+ public void testSetWriterClassName() throws Exception {
+
+ String before = getRDFWriterFProducer().newInstance()
+ .setWriterClassName("foo", DummyWriter.class.getName());
+
+ assertNull("Should not be an existing name", before);
+
+ RDFWriter writer = getRDFWriterFProducer().newInstance().getWriter(
+ "foo");
+ assertEquals("Wrong reader type", DummyWriter.class, writer.getClass());
+
// FIXME add test when remove reader is available
-// String s2 = getRDFWriterF().setWriterClassName("foo", null);
-// assertEquals( DummyWriter.class.getCanonicalName(), s2 );
-//
-// writer = getRDFWriterF().getWriter("foo");
-// assertNull( "should not return a reder", writer );
+ // String s2 =
+ // getRDFWriterFProducer().newInstance().setWriterClassName("foo",
+ // null);
+ // assertEquals( DummyWriter.class.getCanonicalName(), s2 );
+ //
+ // writer = getRDFWriterFProducer().newInstance().getWriter("foo");
+ // assertNull( "should not return a reder", writer );
}
-
+
public static class DummyWriter implements RDFWriter {
@Override
public void write(Model model, Writer out, String base) {
// TODO Auto-generated method stub
-
+
}
@Override
public void write(Model model, OutputStream out, String base) {
// TODO Auto-generated method stub
-
+
}
@Override
@@ -112,7 +119,6 @@ public abstract class AbstractRDFWriterF
return null;
}
-
}
}
Modified: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RDFWriterFTest.java
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RDFWriterFTest.java?rev=1530718&r1=1530717&r2=1530718&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RDFWriterFTest.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RDFWriterFTest.java Wed Oct 9 17:16:15 2013
@@ -38,46 +38,35 @@ import java.util.Map;
import org.junit.Assert;
import org.junit.Test;
-public class RDFWriterFTest
-{
- public static class RDFWriterMap implements RDFWriterF
- {
+public class RDFWriterFTest {
+ public static class RDFWriterMap implements RDFWriterF {
protected final Map<String, Class<RDFWriter>> map = new HashMap<String, Class<RDFWriter>>();
- public RDFWriterMap( final boolean preloadDefaults )
- {
- if (preloadDefaults)
- {
+ public RDFWriterMap(final boolean preloadDefaults) {
+ if (preloadDefaults) {
loadDefaults();
}
}
@Override
- public RDFWriter getWriter()
- {
+ public RDFWriter getWriter() {
return getWriter("RDF/XML");
}
@Override
- public RDFWriter getWriter( final String lang )
- {
+ public RDFWriter getWriter(final String lang) {
final Class<RDFWriter> result = map.get(lang);
- if (result == null)
- {
+ if (result == null) {
throw new NoWriterForLangException(lang);
}
- try
- {
+ try {
return result.newInstance();
- }
- catch (final Exception e)
- {
+ } catch (final Exception e) {
throw new JenaException(e);
}
}
- private void loadDefaults()
- {
+ private void loadDefaults() {
setWriterClassName(RDFWriterFTest.TURTLE_WRITER, Jena.PATH
+ ".n3.N3TurtleJenaWriter");
setWriterClassName(RDFWriterFTest.TURTLE_WRITER_ALT1, Jena.PATH
@@ -105,23 +94,18 @@ public class RDFWriterFTest
}
@Override
- public String setWriterClassName( final String lang,
- final String className )
- {
- try
- {
+ public String setWriterClassName(final String lang,
+ final String className) {
+ try {
final Class<RDFWriter> old = map.get(lang);
final Class<?> c = Class.forName(className);
- if (RDFWriter.class.isAssignableFrom(c))
- {
- @SuppressWarnings( "unchecked" )
+ if (RDFWriter.class.isAssignableFrom(c)) {
+ @SuppressWarnings("unchecked")
final Class<RDFWriter> x = (Class<RDFWriter>) c;
map.put(lang, x);
}
return old == null ? null : old.getName();
- }
- catch (final ClassNotFoundException e)
- {
+ } catch (final ClassNotFoundException e) {
throw new JenaException(e);
}
}
@@ -143,36 +127,27 @@ public class RDFWriterFTest
public static final String N3_TRIPLES = "N3-TRIPLES";
@Test
- public void testDefaultWriter()
- {
+ public void testDefaultWriter() {
final RDFWriterF x = new RDFWriterMap(true);
Assert.assertEquals(x.getWriter("RDF/XML").getClass(), x.getWriter()
.getClass());
}
/*
- * public void testMe()
- * {
- * Assert.fail("SPOO");
- * }
+ * public void testMe() { Assert.fail("SPOO"); }
*/
- private void testWriterAbsent( final String w )
- {
+ private void testWriterAbsent(final String w) {
final RDFWriterF x = new RDFWriterMap(false);
- try
- {
+ try {
x.getWriter(w);
- }
- catch (final NoWriterForLangException e)
- {
+ } catch (final NoWriterForLangException e) {
Assert.assertEquals(w, e.getMessage());
}
}
@Test
- public void testWritersAbsent()
- {
+ public void testWritersAbsent() {
testWriterAbsent(RDFWriterFTest.TURTLE_WRITER);
testWriterAbsent(RDFWriterFTest.TURTLE_WRITER_ALT1);
testWriterAbsent(RDFWriterFTest.TURTLE_WRITER_ALT2);
@@ -188,8 +163,7 @@ public class RDFWriterFTest
}
@Test
- public void testWritersPresent()
- {
+ public void testWritersPresent() {
final RDFWriterF x = new RDFWriterMap(true);
Assert.assertEquals(N3TurtleJenaWriter.class,
x.getWriter(RDFWriterFTest.TURTLE_WRITER).getClass());
@@ -205,8 +179,8 @@ public class RDFWriterFTest
x.getWriter(RDFWriterFTest.NTRIPLE).getClass());
Assert.assertEquals(NTripleWriter.class,
x.getWriter(RDFWriterFTest.NTRIPLES).getClass());
- Assert.assertEquals(N3JenaWriter.class, x
- .getWriter(RDFWriterFTest.N3).getClass());
+ Assert.assertEquals(N3JenaWriter.class, x.getWriter(RDFWriterFTest.N3)
+ .getClass());
Assert.assertEquals(N3JenaWriterPP.class,
x.getWriter(RDFWriterFTest.N3_PP).getClass());
Assert.assertEquals(N3JenaWriterPlain.class,
Modified: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RecordingModelListener.java
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RecordingModelListener.java?rev=1530718&r1=1530717&r2=1530718&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RecordingModelListener.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/RecordingModelListener.java Wed Oct 9 17:16:15 2013
@@ -20,207 +20,75 @@ package com.hp.hpl.jena.rdf.model;
import static com.hp.hpl.jena.testing_framework.ModelHelper.*;
-import java.util.ArrayList;
import java.util.Arrays;
-import java.util.Collection;
-import java.util.Iterator;
import java.util.List;
-import org.junit.Assert;
-
import com.hp.hpl.jena.rdf.model.Model;
import com.hp.hpl.jena.rdf.model.ModelChangedListener;
import com.hp.hpl.jena.rdf.model.Statement;
import com.hp.hpl.jena.rdf.model.StmtIterator;
+import com.hp.hpl.jena.testing_framework.AbstractRecordingListener;
/**
* This testing listener records the event names and data, and provides a method
* for comparing the actual with the expected history.
*/
-public class RecordingModelListener implements ModelChangedListener
- {
-
- @SuppressWarnings("unchecked")
- public static boolean checkEquality( final Object o1, final Object o2)
- {
- if (o1 == o2)
- {
- return true;
- }
- if (o1.getClass().isArray() && o2.getClass().isArray())
- {
- final Object[] o1a = (Object[])o1;
- final Object[] o2a = (Object[])o2;
-
- if (o1a.length == o2a.length)
- {
- for (int i=0;i<o1a.length;i++)
- {
- if (!checkEquality( o1a[i], o2a[i]))
- {
- return false;
- }
- }
- return true;
- }
- return false;
- }
- else if ( (o1 instanceof Collection<?>) && (o2 instanceof Collection<?>) )
- {
- return checkEquality( ((Collection<Object>)o1).toArray(), ((Collection<Object>)o2).toArray() );
-
- }
- else if ((o1 instanceof Model) && (o2 instanceof Model))
- {
- return checkEquality( ((Model)o1).listStatements().toList(), ((Model)o2).listStatements().toList());
-
- }
- else if ((o1 instanceof Statement) && (o2 instanceof Statement))
- {
- return checkEquality( ((Statement)o1).asTriple(), ((Statement)o2).asTriple());
-
- }
- else
- {
- return o1.equals(o2);
- }
- }
-
- private List<Object> history = new ArrayList<Object>();
-
- @Override
- public void addedStatement( Statement s )
- { record( "add", s ); }
-
- @Override
- public void addedStatements( Statement [] statements )
- { record( "add[]", Arrays.asList( statements ) ); }
-
- @Override
- public void addedStatements( List<Statement> statements )
- { record( "addList", statements ); }
-
- @Override
- public void addedStatements( StmtIterator statements )
- { record( "addIterator", iteratorToList( statements ) ); }
-
- @Override
- public void addedStatements( Model m )
- { record( "addModel", m ); }
-
- @Override
- public void removedStatements( Statement [] statements )
- { record( "remove[]", Arrays.asList( statements ) ); }
-
- @Override
-public void removedStatement( Statement s )
- { record( "remove", s ); }
-
- @Override
- public void removedStatements( List<Statement> statements )
- { record( "removeList", statements ); }
-
- @Override
- public void removedStatements( StmtIterator statements )
- { record( "removeIterator", iteratorToList( statements ) ); }
-
- @Override
- public void removedStatements( Model m )
- { record( "removeModel", m ); }
-
- @Override
- public void notifyEvent( Model m, Object event )
- { record( "someEvent", m, event ); }
-
- protected void record( String tag, Object x, Object y )
- { history.add( tag ); history.add( x ); history.add( y ); }
-
- protected void record( String tag, Object info )
- { history.add( tag ); history.add( info ); }
-
- public boolean has( Object ... things )
- { return history.equals( Arrays.asList( things ) ); }
-
- public void assertHas( Object ... things )
- {
- if (has( things ) == false)
- Assert.fail( "expected " + Arrays.asList( things ) + " but got " + history );
- }
-
- public void assertEmpty()
- {
- if (history.size() > 0)
- {
- Assert.fail( "Should be no history but got "+history );
- }
- }
-
- public boolean has( List<?> things )
- { return history.equals( things ); }
-
- public boolean hasStart( List<Object> L )
- { return L.size() <= history.size() && L.equals( history.subList( 0, L.size() ) ); }
-
- public boolean hasEnd( List<Object> L )
- { return L.size() <= history.size() && L.equals( history.subList( history.size() - L.size(), history.size() ) ); }
-
- public void assertHas( List<?> things )
- { if (has( things ) == false) Assert.fail( "expected " + things + " but got " + history ); }
-
- public void assertContains( Object... things )
- { if (contains( things ) == false) Assert.fail( "expected " + things + " but got " + history ); }
-
- public void assertHasStart( Object... start )
- {
- List<Object> L = Arrays.asList( start );
- if (hasStart( L ) == false) Assert.fail( "expected " + L + " at the beginning of " + history );
- }
-
- public void assertHasEnd( Object... end )
- {
- List<Object> L = Arrays.asList( end );
- if (hasEnd( L ) == false) Assert.fail( "expected " + L + " at the end of " + history );
- }
-
- public void clear()
- { history.clear(); }
-
- public boolean contains( Object ...objects )
- {
- for (int i=0;i<history.size();i++)
- {
- if (history.get(i).equals( objects[0]))
- {
- boolean found = true;
- for (int j=1;j<objects.length;j++)
- {
- if (i+j >= history.size())
- {
- found = false;
- break;
- }
- if (! history.get(i+j).equals(objects[j]))
- {
- found = false;
- break;
- }
- }
- if (found)
- {
- return true;
- }
- }
-
- }
- return false;
-
- }
-
- public Iterator<Object> from( Object start )
- {
- Iterator<Object> iter = history.iterator();
- while (iter.hasNext() && !iter.next().equals( start ))
- ; // loop
- return iter;
- }
- }
+public class RecordingModelListener extends AbstractRecordingListener implements
+ ModelChangedListener {
+
+ @Override
+ public void addedStatement(Statement s) {
+ record("add", s);
+ }
+
+ @Override
+ public void addedStatements(Statement[] statements) {
+ record("add[]", Arrays.asList(statements));
+ }
+
+ @Override
+ public void addedStatements(List<Statement> statements) {
+ record("addList", statements);
+ }
+
+ @Override
+ public void addedStatements(StmtIterator statements) {
+ record("addIterator", iteratorToList(statements));
+ }
+
+ @Override
+ public void addedStatements(Model m) {
+ record("addModel", m);
+ }
+
+ @Override
+ public void removedStatements(Statement[] statements) {
+ record("remove[]", Arrays.asList(statements));
+ }
+
+ @Override
+ public void removedStatement(Statement s) {
+ record("remove", s);
+ }
+
+ @Override
+ public void removedStatements(List<Statement> statements) {
+ record("removeList", statements);
+ }
+
+ @Override
+ public void removedStatements(StmtIterator statements) {
+ record("removeIterator", iteratorToList(statements));
+ }
+
+ @Override
+ public void removedStatements(Model m) {
+ record("removeModel", m);
+ }
+
+ @Override
+ public void notifyEvent(Model m, Object event) {
+ record("someEvent", m, event);
+ }
+
+}
Copied: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/ResourceContractTests.java (from r1525417, 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/ResourceContractTests.java?p2=jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/ResourceContractTests.java&p1=jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractResourceTest.java&r1=1525417&r2=1530718&rev=1530718&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/ResourceContractTests.java Wed Oct 9 17:16:15 2013
@@ -26,6 +26,7 @@ import com.hp.hpl.jena.rdf.model.Literal
import com.hp.hpl.jena.rdf.model.RDFNode;
import com.hp.hpl.jena.rdf.model.Resource;
import com.hp.hpl.jena.shared.PropertyNotFoundException;
+import com.hp.hpl.jena.testing_framework.INodeProducer;
import com.hp.hpl.jena.vocabulary.RDF;
@@ -36,708 +37,739 @@ import java.util.List;
import static org.junit.Assert.*;
+import org.junit.After;
import org.junit.Before;
import org.junit.Test;
+import org.xenei.junit.contract.Contract;
/**
* This class tests various properties of RDFNodes.
*/
-public abstract class AbstractResourceTest extends AbstractRDFNodeContractTests {
+@Contract(Resource.class)
+public abstract class ResourceContractTests {
private Resource r;
private RecordingModelListener SL;
-
+ private Model model;
+
+ @Contract.Inject("com.hp.hpl.jena.testing_framework.INodeProducer<%s>")
+ public abstract INodeProducer<Resource> getResourceProducer();
+
@Before
- public final void setupAbstractResourceTest()
- {
- assertTrue( "Resource producer shoudl retrun a resource", node.isResource() );
- r = (Resource) node;
+ public final void setupAbstractResourceTests() {
+ r = getResourceProducer().newInstance();
+ model = r.getModel();
SL = new RecordingModelListener();
}
-
+
+ @After
+ public final void afterResourceContractTests() {
+ getResourceProducer().cleanUp();
+ }
+
@Test
public void testRemoveAll_Property() {
final String ps = "x P a; x P b", rest = "x Q c; y P a; y Q b";
-
- txnBegin( model );
- modelAdd( model , ps+ "; " + rest);
- txnCommit( model );
- r = model.getResource( resource("x").getURI() );
-
- model.register( SL );
-
+
+ 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)) );
-
+ 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 );
+ 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",
- memModel(rest), r.getModel());
+ 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", memModel(rest), r.getModel());
}
@Test
- public void testAddLiteralPassesLiteralUnmodified()
- {
- model.register( SL );
- txnBegin( model );
+ public void testAddLiteralPassesLiteralUnmodified() {
+ model.register(SL);
+ txnBegin(model);
final Literal lit = model.createLiteral("spoo");
- assertSame( r, r.addLiteral(RDF.value, lit));
- txnCommit( model );
+ 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));
+ SL.assertHasStart("add", statement(r, RDF.value, lit));
}
@Test
- public void testAddLiteral_Property_boolean()
- {
- 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)));
+ public void testAddLiteral_Property_boolean() {
+ 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 testAddLiteral_Property_char()
- {
- 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')));
+ public void testAddLiteral_Property_char() {
+ 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 testAddLiteral_Property_double()
- {
- 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)));
+ public void testAddLiteral_Property_double() {
+ 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 testAddLiteral_Property_float()
- {
- 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)));
+ public void testAddLiteral_Property_float() {
+ 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 testAddLiteral_Property_int()
- {
- 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 )));
+ public void testAddLiteral_Property_int() {
+ 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 testAddLiteral_Property_long()
- {
- model.register( SL );
- txnBegin( model );
+ public void testAddLiteral_Property_long() {
+ 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)));
+ txnCommit(model);
+ assertEquals(model.createTypedLiteral(1L), r.getProperty(RDF.value)
+ .getLiteral());
+ SL.assertHasStart("add",
+ statement(r, RDF.value, model.createTypedLiteral(1L)));
}
@Test
- public void testAddLiteral_Property_Object()
- {
+ public void testAddLiteral_Property_Object() {
final Object z = new Object();
- model.register( SL );
- txnBegin( model );
+ model.register(SL);
+ txnBegin(model);
r.addLiteral(RDF.value, z);
- txnCommit( model );
- assertEquals(model.createTypedLiteral(z),
- r.getProperty(RDF.value).getLiteral());
- SL.assertHasStart( "add", statement( r, RDF.value, 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 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
- 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
- public void testBegin()
- {
- if (model.supportsTransactions())
- {
+ public void testBegin() {
+ if (model.supportsTransactions()) {
r.begin();
r.abort();
- }
- else
- {
+ } else {
try {
r.begin();
- fail( "Should have thrown exception");
- } catch (UnsupportedOperationException expected)
- {
+ fail("Should have thrown exception");
+ } catch (UnsupportedOperationException expected) {
// expected
}
}
}
-
+
@Test
- public void testAbort()
- {
- if (model.supportsTransactions())
- {
- assertEquals( "Model is empty", 0, model.listStatements().toList().size());
+ public void testAbort() {
+ if (model.supportsTransactions()) {
+ assertEquals("Model is empty", 0, model.listStatements().toList()
+ .size());
r.begin();
- r.addLiteral( RDF.value, "foo" );
+ r.addLiteral(RDF.value, "foo");
r.abort();
- assertEquals( "Model is empty", 0, model.listStatements().toList().size());
- }
- else
- {
+ assertEquals("Model is empty", 0, model.listStatements().toList()
+ .size());
+ } else {
try {
r.abort();
- fail( "Should have thrown exception");
- } catch (UnsupportedOperationException expected)
- {
+ fail("Should have thrown exception");
+ } catch (UnsupportedOperationException expected) {
// expected
}
}
}
-
+
@Test
- public void testCommit()
- {
- if (model.supportsTransactions())
- {
- assertEquals( "Model is empty", 0, model.listStatements().toList().size());
+ public void testCommit() {
+ if (model.supportsTransactions()) {
+ assertEquals("Model is empty", 0, model.listStatements().toList()
+ .size());
r.begin();
- r.addLiteral( RDF.value, "foo" );
+ r.addLiteral(RDF.value, "foo");
r.commit();
- assertEquals( "Model is empty", 1, model.listStatements().toList().size());
- }
- else
- {
+ assertEquals("Model is empty", 1, model.listStatements().toList()
+ .size());
+ } else {
try {
r.abort();
- fail( "Should have thrown exception");
- } catch (UnsupportedOperationException expected)
- {
+ fail("Should have thrown exception");
+ } catch (UnsupportedOperationException expected) {
// expected
}
}
}
-
/*
- * 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.
- *
+ * 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 testEquals_Object()
- {
+ public void testEquals_Object() {
Resource r1 = model.createResource();
Resource r2 = model.createResource();
- assertNotEquals( "Anonymous resources with different Ids", r1, r2);
+ 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( 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);
+ r1 = model.createResource("http://example.com/one");
+ r2 = model.createResource(AnonId.create("1"));
+ assertNotEquals("anon and uri resource", r1, r2);
}
-
+
@Test
- public void testGetId()
- {
+ public void testGetId() {
AnonId id = AnonId.create("5");
- r = model.createResource( id );
- assertEquals( id, r.getId() );
-
+ 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" );
+ 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)
- {
+ assertNull(
+ "An acceptable value, perhaps exception should be required",
+ r.getId());
+ } catch (UnsupportedOperationException exprected) {
// expected
}
}
-
+
@Test
- public void testGetLocalName()
- {
+ public void testGetLocalName() {
// 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() );
+ 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 testGetNameSpace()
- {
+ public void testGetNameSpace() {
// 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() );
-
-
+ 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 testGetProperty_Property()
- {
- txnBegin( model );
- modelAdd( model, "x p 17; x P y");
- txnCommit( model );
+ public void testGetProperty_Property() {
+ 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());
+ 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 testGetPropertyResourceValue_Property()
- {
- txnBegin( model );
- modelAdd( model, "x p 17; x P y");
- txnCommit( model );
+
+ @Test
+ public void testGetPropertyResourceValue_Property() {
+ 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")));
-
+ assertNull("value is missing",
+ r.getPropertyResourceValue(property("q")));
+
// check where value is literal
- assertNull( "value is literal", r.getPropertyResourceValue(property("p")));
-
+ assertNull("value is literal",
+ r.getPropertyResourceValue(property("p")));
+
Resource r2 = r.getPropertyResourceValue(property("P"));
- assertNotNull( r2 );
- assertEquals( resource("y"), r2 );
+ assertNotNull(r2);
+ assertEquals(resource("y"), r2);
}
-
+
@Test
- public void testGetRequiredProperty_Property()
- {
- txnBegin( model );
- modelAdd( model, "x p 17; x P y");
- txnCommit( model );
+ public void testGetRequiredProperty_Property() {
+ txnBegin(model);
+ modelAdd(model, "x p 17; x P y");
+ txnCommit(model);
r = model.createResource("eh:/x");
-
- try
- {
+
+ try {
r.getRequiredProperty(RDF.type);
fail("missing property should throw PropertyNotFoundException");
- }
- catch (final PropertyNotFoundException expected)
- {
+ } 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 testGetURI()
- {
- assertNull( r.getURI());
- assertEquals( "http://example.com/foo", model.createResource( "http://example.com/foo" ).getURI());
- }
-
- @Test
- public void testHasLiteral_Property_boolean()
- {
- txnBegin( model );
- r.addLiteral(RDF.value, false);
- txnCommit( model );
-
+ Statement stmt = r.getRequiredProperty(property("P"));
+ assertEquals(r, stmt.getSubject());
+ assertEquals(property("P"), stmt.getPredicate());
+ assertEquals(rdfNode("y"), stmt.getObject());
+
+ }
+
+ @Test
+ public void testGetURI() {
+ assertNull(r.getURI());
+ assertEquals("http://example.com/foo",
+ model.createResource("http://example.com/foo").getURI());
+ }
+
+ @Test
+ public void testHasLiteral_Property_boolean() {
+ txnBegin(model);
+ r.addLiteral(RDF.value, false);
+ txnCommit(model);
+
assertTrue(r.hasLiteral(RDF.value, false));
assertFalse(r.hasLiteral(RDF.value, true));
}
-
-
-
+
@Test
- public void testHasLiteral_Property_byte()
- {
+ public void testHasLiteral_Property_byte() {
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));
+
+ txnBegin(model);
+ r.addLiteral(RDF.value, b);
+ txnCommit(model);
+ assertTrue(r.hasLiteral(RDF.value, b));
+ assertFalse(r.hasLiteral(RDF.value, b2));
}
-
+
@Test
- public void testHasLiteral_Property_short()
- {
+ public void testHasLiteral_Property_short() {
short s = 5;
short s2 = 6;
-
- txnBegin( model );
- r.addLiteral(RDF.value, s);
- txnCommit( model );
- assertTrue(r.hasLiteral(RDF.value, s));
- assertFalse(r.hasLiteral(RDF.value, s2));
- }
-
- @Test
- public void testHasLiteral_Property_char()
- {
- txnBegin( model );
- r.addLiteral(RDF.value, 'x');
- txnCommit( model );
- assertTrue(r.hasLiteral(RDF.value, 'x'));
- assertFalse(r.hasLiteral(RDF.value, 'y'));
-
- }
-
- @Test
- public void testHasLiteral_Property_double()
- {
- txnBegin( model );
+
+ txnBegin(model);
+ r.addLiteral(RDF.value, s);
+ txnCommit(model);
+ assertTrue(r.hasLiteral(RDF.value, s));
+ assertFalse(r.hasLiteral(RDF.value, s2));
+ }
+
+ @Test
+ public void testHasLiteral_Property_char() {
+ txnBegin(model);
+ r.addLiteral(RDF.value, 'x');
+ txnCommit(model);
+ assertTrue(r.hasLiteral(RDF.value, 'x'));
+ assertFalse(r.hasLiteral(RDF.value, 'y'));
+
+ }
+
+ @Test
+ public void testHasLiteral_Property_double() {
+ txnBegin(model);
r.addLiteral(RDF.value, 1.0d);
- txnCommit( model );
+ txnCommit(model);
assertTrue(r.hasLiteral(RDF.value, 1.0d));
- assertFalse(r.hasLiteral(RDF.value, 2.0d));
- assertFalse(r.hasLiteral(RDF.value, 1.0f));
+ assertFalse(r.hasLiteral(RDF.value, 2.0d));
+ assertFalse(r.hasLiteral(RDF.value, 1.0f));
}
@Test
- public void testHasLiteral_Property_float()
- {
- txnBegin( model );
+ public void testHasLiteral_Property_float() {
+ txnBegin(model);
r.addLiteral(RDF.value, 1.0f);
- txnCommit( model );
+ 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 testHasLiteral_Property_long()
- {
- txnBegin( model );
+ public void testHasLiteral_Property_long() {
+ txnBegin(model);
r.addLiteral(RDF.value, 1L);
- txnCommit( model );
+ 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));
+ logAssertFalse(this.getClass(), "literal should not be an int",
+ r.hasLiteral(RDF.value, 1));
}
-
+
@Test
- public void testHasLiteral_Property_int()
- {
- txnBegin( model );
+ public void testHasLiteral_Property_int() {
+ txnBegin(model);
r.addLiteral(RDF.value, 1);
- txnCommit( model );
+ 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));
+ logAssertFalse(this.getClass(), "literal should not be a long",
+ r.hasLiteral(RDF.value, 1L));
}
-
+
@Test
- public void testHasLiteral_Property_Object()
- {
+ public void testHasLiteral_Property_Object() {
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 testHasProperty_Property()
- {
- 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));
+ 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 testHasProperty_Property() {
+ 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 testHasProperty_Property_RDFNode()
- {
- 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));
+ public void testHasProperty_Property_RDFNode() {
+ 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
- public void testHasProperty_Property_String()
- {
- txnBegin( model );
+ public void testHasProperty_Property_String() {
+ txnBegin(model);
r.addProperty(RDF.value, "foo");
- txnCommit( model );
- assertTrue( r.hasProperty( 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)
- {
+ r.hasProperty(RDF.value, (String) null);
+ fail("Should throw null pointer exception");
+ } catch (NullPointerException expected) {
// expected
}
- assertFalse( r.hasProperty( RDF.type, "foo"));
- assertTrue( r.hasProperty( null, "foo"));
+ assertFalse(r.hasProperty(RDF.type, "foo"));
+ assertTrue(r.hasProperty(null, "foo"));
}
-
+
@Test
- public void testHasProperty_Property_String_String()
- {
- txnBegin( model );
+ public void testHasProperty_Property_String_String() {
+ 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 ));
+ 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 (NullPointerException expected)
- {
+ r.hasProperty(RDF.value, null, "fr");
+ } catch (NullPointerException expected) {
// expected
- }
- try {
- r.hasProperty( RDF.value, null, null);
}
- catch (NullPointerException expected)
- {
+ try {
+ r.hasProperty(RDF.value, null, null);
+ } catch (NullPointerException expected) {
// expected
- }
+ }
}
@Test
- public void testHasURI()
- {
+ public void testHasURI() {
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 testlistProperties()
- {
- 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 );
-
+ 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 testlistProperties() {
+ 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()) );
+ 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 testlistProperties_Property()
- {
- 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() );
+ public void testlistProperties_Property() {
+ 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() );
+
+ 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(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()) );
+
+ List<String> pLst = Arrays.asList("foo", "bar");
+ for (Statement s : lst) {
+ assertTrue("missing " + s.getObject(),
+ pLst.contains(s.getObject().asLiteral().getString()));
}
-
}
-
+
@Test
- public void testRemoveProperties()
- {
- 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());
- }
+ public void testRemoveProperties() {
+ 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);
-//// 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));
-// }
+ 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 testInModel() {
+ Model m = memModel("");
+ assertEquals(model, r.getModel());
+ Resource r2 = r.inModel(m);
+ assertEquals("Resource not moved to new model", m, r2.getModel());
+ assertEquals("resource should equal original", r, r2);
+ }
+
+ // // 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/ResourceFactoryTest.java
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/ResourceFactoryTest.java?rev=1530718&r1=1530717&r2=1530718&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/ResourceFactoryTest.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/ResourceFactoryTest.java Wed Oct 9 17:16:15 2013
@@ -35,73 +35,61 @@ import org.junit.Assert;
import junit.framework.TestCase;
import junit.framework.TestSuite;
-public class ResourceFactoryTest extends TestCase
-{
+public class ResourceFactoryTest extends TestCase {
- class TestFactory implements ResourceFactory.Interface
- {
+ class TestFactory implements ResourceFactory.Interface {
Resource resource;
- TestFactory( final Resource r )
- {
+ TestFactory(final Resource r) {
resource = r;
}
@Override
- public Literal createLangLiteral( final String string, final String lang )
- {
+ public Literal createLangLiteral(final String string, final String lang) {
return null;
}
@Override
- public Literal createPlainLiteral( final String string )
- {
+ public Literal createPlainLiteral(final String string) {
return null;
}
@Override
- public Property createProperty( final String uriref )
- {
+ public Property createProperty(final String uriref) {
return null;
}
@Override
- public Property createProperty( final String namespace,
- final String localName )
- {
+ public Property createProperty(final String namespace,
+ final String localName) {
return null;
}
@Override
- public Resource createResource()
- {
+ public Resource createResource() {
return resource;
}
@Override
- public Resource createResource( final String uriref )
- {
+ public Resource createResource(final String uriref) {
return null;
}
@Override
- public Statement createStatement( final Resource subject,
- final Property predicate, final RDFNode object )
- {
+ public Statement createStatement(final Resource subject,
+ final Property predicate, final RDFNode object) {
return null;
}
@Override
- public Literal createTypedLiteral( final Object value )
- {
+ public Literal createTypedLiteral(final Object value) {
return null;
}
@Override
- public Literal createTypedLiteral( final String string,
- final RDFDatatype datatype )
- {
+ public Literal createTypedLiteral(final String string,
+ final RDFDatatype datatype) {
return null;
}
@@ -111,18 +99,15 @@ public class ResourceFactoryTest extends
static final String uri2 = "http://example.org/example#a2";
- public static TestSuite suite()
- {
+ public static TestSuite suite() {
return new TestSuite(ResourceFactoryTest.class);
}
- public ResourceFactoryTest( final String name )
- {
+ public ResourceFactoryTest(final String name) {
super(name);
}
- public void testCreateLiteral()
- {
+ public void testCreateLiteral() {
final Literal l = ResourceFactory.createPlainLiteral("lex");
Assert.assertTrue(l.getLexicalForm().equals("lex"));
Assert.assertTrue(l.getLanguage().equals(""));
@@ -130,8 +115,7 @@ public class ResourceFactoryTest extends
Assert.assertNull(l.getDatatypeURI());
}
- public void testCreateProperty()
- {
+ public void testCreateProperty() {
final Property p1 = ResourceFactory
.createProperty(ResourceFactoryTest.uri1);
Assert.assertTrue(p1.getURI().equals(ResourceFactoryTest.uri1));
@@ -140,8 +124,7 @@ public class ResourceFactoryTest extends
Assert.assertTrue(p2.getURI().equals(ResourceFactoryTest.uri1 + "2"));
}
- public void testCreateResource()
- {
+ public void testCreateResource() {
Resource r1 = ResourceFactory.createResource();
Assert.assertTrue(r1.isAnon());
final Resource r2 = ResourceFactory.createResource();
@@ -152,8 +135,7 @@ public class ResourceFactoryTest extends
Assert.assertTrue(r1.getURI().equals(ResourceFactoryTest.uri1));
}
- public void testCreateStatement()
- {
+ public void testCreateStatement() {
final Resource s = ResourceFactory.createResource();
final Property p = ResourceFactory
.createProperty(ResourceFactoryTest.uri2);
@@ -164,8 +146,7 @@ public class ResourceFactoryTest extends
Assert.assertTrue(stmt.getObject().equals(o));
}
- public void testCreateTypedLiteral()
- {
+ public void testCreateTypedLiteral() {
final Literal l = ResourceFactory.createTypedLiteral("22",
XSDDatatype.XSDinteger);
Assert.assertTrue(l.getLexicalForm().equals("22"));
@@ -176,16 +157,14 @@ public class ResourceFactoryTest extends
}
- public void testCreateTypedLiteralObject()
- {
+ public void testCreateTypedLiteralObject() {
final Literal l = ResourceFactory.createTypedLiteral(new Integer(22));
Assert.assertEquals("22", l.getLexicalForm());
Assert.assertEquals("", l.getLanguage());
Assert.assertEquals(XSDDatatype.XSDint, l.getDatatype());
}
- public void testCreateTypedLiteralOverload()
- {
+ public void testCreateTypedLiteralOverload() {
final Calendar testCal = new GregorianCalendar(
TimeZone.getTimeZone("GMT"));
testCal.set(1999, 4, 30, 15, 9, 32);
@@ -198,8 +177,7 @@ public class ResourceFactoryTest extends
}
- public void testGetInstance()
- {
+ public void testGetInstance() {
ResourceFactory.getInstance();
final Resource r1 = ResourceFactory.createResource();
Assert.assertTrue(r1.isAnon());
@@ -208,20 +186,16 @@ public class ResourceFactoryTest extends
Assert.assertTrue(!r1.equals(r2));
}
- public void testSetInstance()
- {
+ public void testSetInstance() {
final Resource r = ResourceFactory.createResource();
final ResourceFactory.Interface oldFactory = ResourceFactory
.getInstance();
final ResourceFactory.Interface factory = new TestFactory(r);
- try
- {
+ try {
ResourceFactory.setInstance(factory);
Assert.assertTrue(factory.equals(ResourceFactory.getInstance()));
Assert.assertTrue(ResourceFactory.createResource() == r);
- }
- finally
- {
+ } finally {
ResourceFactory.setInstance(oldFactory);
}
}
Copied: jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/SeqContractTests.java (from r1525287, jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractSeqMethodsTest.java)
URL: http://svn.apache.org/viewvc/jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/SeqContractTests.java?p2=jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/SeqContractTests.java&p1=jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractSeqMethodsTest.java&r1=1525287&r2=1530718&rev=1530718&view=diff
==============================================================================
--- jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/AbstractSeqMethodsTest.java (original)
+++ jena/Experimental/new-test/src/test/java/com/hp/hpl/jena/rdf/model/SeqContractTests.java Wed Oct 9 17:16:15 2013
@@ -20,7 +20,6 @@ package com.hp.hpl.jena.rdf.model;
import com.hp.hpl.jena.rdf.model.Alt;
import com.hp.hpl.jena.rdf.model.Bag;
-import com.hp.hpl.jena.rdf.model.Container;
import com.hp.hpl.jena.rdf.model.Literal;
import com.hp.hpl.jena.rdf.model.NodeIterator;
import com.hp.hpl.jena.rdf.model.RDFNode;
@@ -28,6 +27,8 @@ import com.hp.hpl.jena.rdf.model.Resourc
import com.hp.hpl.jena.rdf.model.Seq;
import com.hp.hpl.jena.rdf.model.SeqIndexBoundsException;
import com.hp.hpl.jena.test.JenaTestBase;
+import com.hp.hpl.jena.testing_framework.IContainerProducer;
+
import static com.hp.hpl.jena.testing_framework.ModelHelper.*;
import com.hp.hpl.jena.vocabulary.RDF;
@@ -35,11 +36,17 @@ import java.util.ArrayList;
import java.util.List;
import static org.junit.Assert.*;
+
+import org.junit.After;
import org.junit.Before;
import org.junit.Test;
+import org.xenei.junit.contract.Contract;
+
+@Contract(Seq.class)
+public abstract class SeqContractTests {
-public abstract class AbstractSeqMethodsTest extends
- AbstractContainerMethodsTest {
+ @Contract.Inject("com.hp.hpl.jena.testing_framework.IContainerProducer<%s>")
+ public abstract IContainerProducer<Seq> getSeqProducer();
protected LitTestObj aLitTestObj;
@@ -47,7 +54,6 @@ public abstract class AbstractSeqMethods
protected Resource tvResource;
- // protected Resource tvResObj;
protected Object anObject;
protected Bag tvBag;
@@ -64,41 +70,47 @@ public abstract class AbstractSeqMethods
return result;
}
- @Override
- protected Class<? extends Container> getContainerClass() {
- return Seq.class;
+ @After
+ public final void afterSeqContractTests() {
+ getSeqProducer().cleanUp();
}
- @Override
- protected Container createContainer(String uri) {
- return uri == null ? model.createSeq() : model.createSeq(uri);
- }
+ // @Override
+ // protected Class<? extends Container> getContainerClass() {
+ // return Seq.class;
+ // }
+ //
+ // @Override
+ // protected Container createContainer(String uri) {
+ // return uri == null ? getSeqProducer().newInstance() :
+ // getSeqProducer().newInstance(uri);
+ // }
private void error(final String test, final int n) {
fail(test + " -- " + n);
}
- @Override
- protected Resource getContainerType() {
- return RDF.Seq;
- }
+ // @Override
+ // protected Resource getContainerType() {
+ // return RDF.Seq;
+ // }
@Before
- final public void setUpSeqMethodsTest() throws Exception {
+ final public void beforeSeqContractTests() throws Exception {
aLitTestObj = new LitTestObj(12345);
- tvLiteral = model.createLiteral("test 12 string 2");
- tvResource = model.createResource();
+ tvLiteral = literal("'test 12 string 2'");
+ tvResource = resource();
// tvResObj = model.createResource( new ResTestObjF() );
anObject = new LitTestObj(1234);
- tvBag = model.createBag();
- tvAlt = model.createAlt();
- tvSeq = model.createSeq();
+ tvBag = getSeqProducer().getModel().createBag();
+ tvAlt = getSeqProducer().getModel().createAlt();
+ tvSeq = getSeqProducer().newInstance();
}
@Test
public void testMoreIndexing() {
final int num = 10;
- final Seq seq = model.createSeq();
+ final Seq seq = getSeqProducer().newInstance();
for (int i = 0; i < num; i += 1) {
seq.add(i);
}
@@ -133,7 +145,7 @@ public abstract class AbstractSeqMethods
protected void testRemove(final boolean[] retain) {
final int num = retain.length;
- final Seq seq = model.createSeq();
+ final Seq seq = getSeqProducer().newInstance();
for (int i = 0; i < num; i += 1) {
seq.add(i);
}
@@ -173,7 +185,7 @@ public abstract class AbstractSeqMethods
public void testSeq4() {
final String test = "temp";
int n = 58305;
- final Seq seq4 = model.createSeq();
+ final Seq seq4 = getSeqProducer().newInstance();
n = ((n / 100) * 100) + 100;
n++;
seq4.add(tvBoolean);
@@ -234,13 +246,13 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- seq4.add(tvString, AbstractSeqMethodsTest.lang);
+ seq4.add(tvString, SeqContractTests.lang);
n++;
if (!(seq4.getString(10).equals(tvString))) {
error(test, n);
}
n++;
- if (!(seq4.getLanguage(10).equals(AbstractSeqMethodsTest.lang))) {
+ if (!(seq4.getLanguage(10).equals(SeqContractTests.lang))) {
error(test, n);
}
n++;
@@ -303,10 +315,10 @@ public abstract class AbstractSeqMethods
@Test
public void testSeq5() {
- final Seq seq5 = model.createSeq();
+ final Seq seq5 = getSeqProducer().newInstance();
final String test = "seq5";
int n = 0;
- for (int i = 0; i < AbstractSeqMethodsTest.num; i++) {
+ for (int i = 0; i < SeqContractTests.num; i++) {
seq5.add(i);
}
@@ -317,14 +329,14 @@ public abstract class AbstractSeqMethods
} catch (final SeqIndexBoundsException e) {
// as required
}
- seq5.add(AbstractSeqMethodsTest.num + 1, false);
- if (seq5.size() != (AbstractSeqMethodsTest.num + 1)) {
+ seq5.add(SeqContractTests.num + 1, false);
+ if (seq5.size() != (SeqContractTests.num + 1)) {
error(test, n);
}
- seq5.remove(AbstractSeqMethodsTest.num + 1);
+ seq5.remove(SeqContractTests.num + 1);
try {
n++;
- seq5.add(AbstractSeqMethodsTest.num + 2, false);
+ seq5.add(SeqContractTests.num + 2, false);
error(test, n);
} catch (final SeqIndexBoundsException e) {
// as required
@@ -332,7 +344,7 @@ public abstract class AbstractSeqMethods
n = ((n / 100) * 100) + 100;
final int size = seq5.size();
- for (int i = 1; i <= (AbstractSeqMethodsTest.num - 1); i++) {
+ for (int i = 1; i <= (SeqContractTests.num - 1); i++) {
n++;
seq5.add(i, 1000 + i);
n++;
@@ -348,7 +360,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq5.getInt(size) == (AbstractSeqMethodsTest.num - i - 1))) {
+ if (!(seq5.getInt(size) == (SeqContractTests.num - i - 1))) {
error(test, n);
}
}
@@ -358,8 +370,8 @@ public abstract class AbstractSeqMethods
public void testSeq6() {
final String test = "seq6";
int n = 0;
- final Seq seq6 = model.createSeq();
- seq6.add(model.createResource());
+ final Seq seq6 = getSeqProducer().newInstance();
+ seq6.add(resource());
seq6.add(1, tvBoolean);
n++;
if (!(seq6.getBoolean(1) == tvBoolean)) {
@@ -405,7 +417,7 @@ public abstract class AbstractSeqMethods
if (!(seq6.getString(1).equals(tvString))) {
error(test, n);
}
- seq6.add(1, tvString, AbstractSeqMethodsTest.lang);
+ seq6.add(1, tvString, SeqContractTests.lang);
n++;
if (!(seq6.getString(1).equals(tvString))) {
error(test, n);
@@ -440,7 +452,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq6.indexOf(tvString, AbstractSeqMethodsTest.lang) == 4)) {
+ if (!(seq6.indexOf(tvString, SeqContractTests.lang) == 4)) {
error(test, n);
}
n++;
@@ -487,11 +499,11 @@ public abstract class AbstractSeqMethods
@Test
public void testSeq7() {
- final Seq seq7 = model.createSeq();
+ final Seq seq7 = getSeqProducer().newInstance();
final String test = "seq7";
int n = 0;
n = ((n / 100) * 100) + 100;
- for (int i = 0; i < AbstractSeqMethodsTest.num; i++) {
+ for (int i = 0; i < SeqContractTests.num; i++) {
seq7.add(i);
}
n = ((n / 100) * 100) + 100;
@@ -509,7 +521,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
n = ((n / 100) * 100) + 100;
@@ -527,7 +539,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
n = ((n / 100) * 100) + 100;
@@ -545,7 +557,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
n = ((n / 100) * 100) + 100;
@@ -563,7 +575,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
n = ((n / 100) * 100) + 100;
@@ -581,7 +593,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
n = ((n / 100) * 100) + 100;
@@ -599,7 +611,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
n = ((n / 100) * 100) + 100;
@@ -617,7 +629,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
n = ((n / 100) * 100) + 100;
@@ -635,7 +647,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
n = ((n / 100) * 100) + 100;
@@ -657,16 +669,16 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
- seq7.set(5, tvString, AbstractSeqMethodsTest.lang);
+ seq7.set(5, tvString, SeqContractTests.lang);
n++;
if (!(seq7.getString(5).equals(tvString))) {
error(test, n);
}
n++;
- if (!(seq7.getLanguage(5).equals(AbstractSeqMethodsTest.lang))) {
+ if (!(seq7.getLanguage(5).equals(SeqContractTests.lang))) {
error(test, n);
}
n++;
@@ -678,7 +690,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
n = ((n / 100) * 100) + 100;
@@ -696,7 +708,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
n = ((n / 100) * 100) + 100;
@@ -714,7 +726,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
n = ((n / 100) * 100) + 100;
@@ -732,7 +744,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
n = ((n / 100) * 100) + 100;
@@ -750,7 +762,7 @@ public abstract class AbstractSeqMethods
error(test, n);
}
n++;
- if (!(seq7.size() == AbstractSeqMethodsTest.num)) {
+ if (!(seq7.size() == SeqContractTests.num)) {
error(test, n);
}
}
@@ -758,15 +770,15 @@ public abstract class AbstractSeqMethods
@Test
public void testSeqAccessByIndexing() {
// LitTestObj tvObject = new LitTestObj(12345);
- final Literal tvLiteral = model.createLiteral("test 12 string 2");
- final Resource tvResource = model.createResource();
+ final Literal tvLiteral = literal("'test 12 string 2'");
+ final Resource tvResource = resource();
// Resource tvResObj = model.createResource(new ResTestObjF());
final Object tvLitObj = new LitTestObj(1234);
- final Bag tvBag = model.createBag();
- final Alt tvAlt = model.createAlt();
- final Seq tvSeq = model.createSeq();
+ final Bag tvBag = getSeqProducer().getModel().createBag();
+ final Alt tvAlt = getSeqProducer().getModel().createAlt();
+ final Seq tvSeq = getSeqProducer().newInstance();
//
- final Seq seq = model.createSeq();
+ final Seq seq = getSeqProducer().newInstance();
seq.add(true);
assertEquals(true, seq.getBoolean(1));
seq.add((byte) 1);
@@ -816,9 +828,9 @@ public abstract class AbstractSeqMethods
@Test
public void testSeqAdd() {
- final Seq seq = model.createSeq();
+ final Seq seq = getSeqProducer().newInstance();
assertEquals(0, seq.size());
- assertTrue(model.contains(seq, RDF.type, RDF.Seq));
+ assertTrue(getSeqProducer().getModel().contains(seq, RDF.type, RDF.Seq));
//
seq.add(tvBoolean);
assertTrue(seq.contains(tvBoolean));
@@ -856,7 +868,7 @@ public abstract class AbstractSeqMethods
assertTrue(seq.contains("a string"));
assertFalse(seq.contains("a necklace"));
//
- seq.add(model.createLiteral("another string"));
+ seq.add(literal("'another string'"));
assertTrue(seq.contains("another string"));
assertFalse(seq.contains("another necklace"));
//
@@ -876,7 +888,7 @@ public abstract class AbstractSeqMethods
@Test
public void testSeqAddInts() {
final int num = 10;
- final Seq seq = model.createSeq();
+ final Seq seq = getSeqProducer().newInstance();
for (int i = 0; i < num; i += 1) {
seq.add(i);
}
@@ -891,16 +903,16 @@ public abstract class AbstractSeqMethods
@Test
public void testSeqInsertByIndexing() {
// LitTestObj tvObject = new LitTestObj(12345);
- final Literal tvLiteral = model.createLiteral("test 12 string 2");
- final Resource tvResource = model.createResource();
+ final Literal tvLiteral = literal("'test 12 string 2'");
+ final Resource tvResource = resource();
// Resource tvResObj = model.createResource(new ResTestObjF());
final Object tvLitObj = new LitTestObj(1234);
- final Bag tvBag = model.createBag();
- final Alt tvAlt = model.createAlt();
- final Seq tvSeq = model.createSeq();
+ final Bag tvBag = getSeqProducer().getModel().createBag();
+ final Alt tvAlt = getSeqProducer().getModel().createAlt();
+ final Seq tvSeq = getSeqProducer().newInstance();
- final Seq seq = model.createSeq();
- seq.add(model.createResource());
+ final Seq seq = getSeqProducer().newInstance();
+ seq.add(resource());
seq.add(1, true);
assertEquals(true, seq.getBoolean(1));
seq.add(1, (byte) 1);
@@ -956,14 +968,14 @@ public abstract class AbstractSeqMethods
public void testSet() {
// NodeIterator nIter;
// StmtIterator sIter;
- final Literal tvLiteral = model.createLiteral("test 12 string 2");
- final Resource tvResource = model.createResource();
+ final Literal tvLiteral = literal("'test 12 string 2'");
+ final Resource tvResource = resource();
// Resource tvResObj = model.createResource(new ResTestObjF());
// Bag tvBag = model.createBag();
// Alt tvAlt = model.createAlt();
- // Seq tvSeq = model.createSeq();
+ // Seq tvSeq = getSeqProducer().newInstance();
final int num = 10;
- final Seq seq = model.createSeq();
+ final Seq seq = getSeqProducer().newInstance();
for (int i = 0; i < num; i++) {
seq.add(i);