@Override public Stream<? extends Quad> stream() { streamCalled = true; return Arrays.asList(new DummyQuad()).stream(); }
@Override public Stream<? extends Quad> stream(final Optional<BlankNodeOrIRI> graphName, final BlankNodeOrIRI subject, final IRI predicate, final RDFTerm object) { filteredStreamCalled = true; if (contains(graphName, subject, predicate, object)) { return Stream.of(new DummyQuad()); } return Stream.empty(); }
@Override public boolean contains(final Quad Quad) { return Quad.equals(new DummyQuad()); }
@Test(expected = IllegalStateException.class) public void remove() throws Exception { dataset.remove(new DummyQuad()); }
@Test public void equals() throws Exception { assertEquals(quad, new DummyQuad()); }
@Test public void add() throws Exception { dataset.add(new DummyQuad()); }
@Test public void stream() throws Exception { assertEquals(new DummyQuad(), dataset.stream().findAny().get()); }
@Test public void contains() throws Exception { assertTrue(dataset.contains(new DummyQuad())); }
@Test public void streamFiltered() throws Exception { assertEquals(new DummyQuad(), dataset.stream(null, null, null, null).findAny().get()); assertEquals(new DummyQuad(), dataset.stream(null, new DummyIRI(1), new DummyIRI(2), new DummyIRI(3)).findAny().get()); assertFalse(dataset.stream(null, new DummyIRI(0), new DummyIRI(0), new DummyIRI(0)).findAny().isPresent()); }
@Test public void defaultIterate() throws Exception { assertFalse(dataset.streamCalled); assertFalse(dataset.filteredStreamCalled); for (final Quad t : dataset.iterate()) { assertEquals(t, new DummyQuad()); } assertTrue(dataset.streamCalled); assertFalse(dataset.filteredStreamCalled); }
@Test public void defaultFilteredIterate() throws Exception { assertFalse(dataset.streamCalled); assertFalse(dataset.filteredStreamCalled); for (final Quad t : dataset.iterate(null, null, new DummyIRI(2), null)) { assertEquals(t, new DummyQuad()); } assertTrue(dataset.filteredStreamCalled); assertFalse(dataset.streamCalled); }
@Test public void asQuad() throws Exception { final Quad q = new DummyQuad(); final Triple t = q.asTriple(); assertEquals(t, t); assertNotEquals(t, q); assertEquals(t, new DummyTriple()); assertEquals(t, new DummyQuad().asTriple()); // FIXME: This would not catch if asTriple() accidentally mixed up s/p/o // as they are here all the same assertEquals(new DummyIRI(1), t.getSubject()); assertEquals(new DummyIRI(2), t.getPredicate()); assertEquals(new DummyIRI(3), t.getObject()); assertEquals(Objects.hash(q.getSubject(), q.getPredicate(), q.getObject()), t.hashCode()); }