Author: rvesse
Date: Tue Jan 29 12:46:44 2013
New Revision: 1439865
URL: http://svn.apache.org/viewvc?rev=1439865&view=rev
Log:
Couple of additional PipedRDFIterator tests
Modified:
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestPipedRDFIterators.java
Modified:
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestPipedRDFIterators.java
URL:
http://svn.apache.org/viewvc/jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestPipedRDFIterators.java?rev=1439865&r1=1439864&r2=1439865&view=diff
==============================================================================
---
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestPipedRDFIterators.java
(original)
+++
jena/trunk/jena-arq/src/test/java/org/apache/jena/riot/lang/TestPipedRDFIterators.java
Tue Jan 29 12:46:44 2013
@@ -667,4 +667,32 @@ public class TestPipedRDFIterators {
// Should throw a RiotException
it.hasNext();
}
+
+ /**
+ * Check we can safely call hasNext() multiple times after the stream is
exhausted
+ */
+ @Test
+ public void streamed_iterator_usage_01() {
+ PipedRDFIterator<Triple> iter = new PipedRDFIterator<Triple>();
+ PipedTriplesStream stream = new PipedTriplesStream(iter);
+ stream.start();
+ stream.finish();
+ Assert.assertFalse(iter.hasNext());
+ Assert.assertFalse(iter.hasNext());
+ }
+
+ /**
+ * Check that calling hasNext() after a close() is an error
+ */
+ @Test(expected=RiotException.class)
+ public void streamed_iterator_usage_02() {
+ PipedRDFIterator<Triple> iter = new PipedRDFIterator<Triple>();
+ PipedTriplesStream stream = new PipedTriplesStream(iter);
+ stream.start();
+ stream.finish();
+ Assert.assertFalse(iter.hasNext());
+ iter.close();
+ //Should throw an error after the iterator is closed
+ iter.hasNext();
+ }
}