Get one from a collection
Project: http://git-wip-us.apache.org/repos/asf/jena/repo Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/c3c50fd8 Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/c3c50fd8 Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/c3c50fd8 Branch: refs/heads/master Commit: c3c50fd8948b87d15607774d62c943f31308923b Parents: 2966021 Author: Andy Seaborne <[email protected]> Authored: Wed Dec 20 23:22:55 2017 +0000 Committer: Andy Seaborne <[email protected]> Committed: Wed Dec 20 23:22:55 2017 +0000 ---------------------------------------------------------------------- .../apache/jena/atlas/lib/CollectionUtils.java | 7 +++++ .../jena/atlas/lib/TestCollectionUtils.java | 29 ++++++++++++++------ 2 files changed, 27 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jena/blob/c3c50fd8/jena-base/src/main/java/org/apache/jena/atlas/lib/CollectionUtils.java ---------------------------------------------------------------------- diff --git a/jena-base/src/main/java/org/apache/jena/atlas/lib/CollectionUtils.java b/jena-base/src/main/java/org/apache/jena/atlas/lib/CollectionUtils.java index 104badc..9cbf807 100644 --- a/jena-base/src/main/java/org/apache/jena/atlas/lib/CollectionUtils.java +++ b/jena-base/src/main/java/org/apache/jena/atlas/lib/CollectionUtils.java @@ -20,10 +20,17 @@ package org.apache.jena.atlas.lib; import java.util.Collection ; +import org.apache.jena.atlas.iterator.Iter; + public class CollectionUtils { /** Test for same elements, regardless of cardinality */ public static <T> boolean sameElts(Collection<T> left, Collection<T> right) { return right.containsAll(left) && left.containsAll(right) ; } + + /** Return an element from a collection. */ + public static <T> T oneElt(Collection<T> collection) { + return Iter.first(collection.iterator()); + } } http://git-wip-us.apache.org/repos/asf/jena/blob/c3c50fd8/jena-base/src/test/java/org/apache/jena/atlas/lib/TestCollectionUtils.java ---------------------------------------------------------------------- diff --git a/jena-base/src/test/java/org/apache/jena/atlas/lib/TestCollectionUtils.java b/jena-base/src/test/java/org/apache/jena/atlas/lib/TestCollectionUtils.java index 543eb62..dbea869 100644 --- a/jena-base/src/test/java/org/apache/jena/atlas/lib/TestCollectionUtils.java +++ b/jena-base/src/test/java/org/apache/jena/atlas/lib/TestCollectionUtils.java @@ -18,9 +18,8 @@ package org.apache.jena.atlas.lib; -import static org.apache.jena.atlas.lib.CollectionUtils.sameElts ; -import static org.junit.Assert.assertFalse ; -import static org.junit.Assert.assertTrue ; +import static org.apache.jena.atlas.lib.CollectionUtils.* ; +import static org.junit.Assert.* ; import java.util.Arrays ; import java.util.HashSet ; @@ -31,21 +30,21 @@ import org.junit.Test ; public class TestCollectionUtils { @Test - public void sameElst_01() { + public void sameElts_01() { List<String> x1 = Arrays.asList("a", "b", "c") ; List<String> x2 = Arrays.asList("a", "c", "b") ; assertTrue(sameElts(x1, x2)) ; } @Test - public void sameElst_02() { + public void sameElts_02() { List<String> x1 = Arrays.asList("a", "b", "c", "a") ; List<String> x2 = Arrays.asList("a", "c", "b") ; assertTrue(sameElts(x1, x2)) ; } @Test - public void sameElst_03() { + public void sameElts_03() { List<String> x1 = Arrays.asList("a", "b", "c") ; List<String> x2 = Arrays.asList("a", "c", "b") ; Set<String> z1 = new HashSet<>(x2) ; @@ -53,24 +52,36 @@ public class TestCollectionUtils { } @Test - public void sameElst_04() { + public void sameElts_04() { List<String> x1 = Arrays.asList("a", "b", "X") ; List<String> x2 = Arrays.asList("a", "c", "b") ; assertFalse(sameElts(x1, x2)) ; } @Test - public void sameElst_05() { + public void sameElts_05() { List<String> x1 = Arrays.asList("a", "b", "c") ; List<String> x2 = Arrays.asList("a", "b") ; assertFalse(sameElts(x1, x2)) ; } @Test - public void sameElst_06() { + public void sameElts_06() { List<String> x1 = Arrays.asList("a", "b", "X") ; List<String> x2 = Arrays.asList("a", "c", "b") ; Set<String> z1 = new HashSet<>(x2) ; assertFalse(sameElts(x1, z1)) ; } + + @Test + public void oneElt_01() { + List<String> x = Arrays.asList("a", "b", "c") ; + assertEquals("a", oneElt(x)); + } + + @Test + public void oneElt_02() { + List<String> x = Arrays.asList() ; + assertNull(oneElt(x)); + } }
