001/* 002 * The contents of this file are subject to the license and copyright 003 * detailed in the LICENSE and NOTICE files at the root of the source 004 * tree. 005 */ 006package org.fcrepo.kernel.api; 007 008import static java.util.Arrays.asList; 009import static org.apache.jena.graph.NodeFactory.createURI; 010import static org.junit.Assert.assertEquals; 011 012import java.util.List; 013 014import org.apache.jena.graph.Node; 015import org.apache.jena.graph.Triple; 016import org.apache.jena.rdf.model.Model; 017 018import org.junit.Test; 019 020/** 021 * @author acoburn 022 */ 023public class RdfCollectorsTest { 024 025 @Test 026 public void streamToModel() { 027 final Node subject = createURI("subject"); 028 final Node prop1 = createURI("prop1"); 029 final Node prop2 = createURI("prop2"); 030 final List<Triple> triples = asList( 031 new Triple(subject, prop1, createURI("obj1")), 032 new Triple(subject, prop1, createURI("obj2")), 033 new Triple(subject, prop1, createURI("obj3")), 034 new Triple(subject, prop2, createURI("obj1")), 035 new Triple(subject, prop2, createURI("obj2")), 036 new Triple(subject, prop2, createURI("obj3"))); 037 038 final Model filtered = triples.stream().filter(x -> x.getPredicate().equals(prop1)) 039 .collect(RdfCollectors.toModel()); 040 041 assertEquals(3, filtered.size()); 042 } 043} 044