Author: carlucci
Date: Thu Jun 28 00:56:47 2012
New Revision: 1354789
URL: http://svn.apache.org/viewvc?rev=1354789&view=rev
Log:
improved unit test coverage of o.a.r.util.CollectionUtils
Modified:
rave/trunk/rave-components/rave-commons/src/test/java/org/apache/rave/util/CollectionUtilsTest.java
Modified:
rave/trunk/rave-components/rave-commons/src/test/java/org/apache/rave/util/CollectionUtilsTest.java
URL:
http://svn.apache.org/viewvc/rave/trunk/rave-components/rave-commons/src/test/java/org/apache/rave/util/CollectionUtilsTest.java?rev=1354789&r1=1354788&r2=1354789&view=diff
==============================================================================
---
rave/trunk/rave-components/rave-commons/src/test/java/org/apache/rave/util/CollectionUtilsTest.java
(original)
+++
rave/trunk/rave-components/rave-commons/src/test/java/org/apache/rave/util/CollectionUtilsTest.java
Thu Jun 28 00:56:47 2012
@@ -23,7 +23,9 @@ import org.apache.commons.lang.StringUti
import org.junit.Before;
import org.junit.Test;
+import java.lang.reflect.Constructor;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.HashMap;
import java.util.List;
@@ -75,6 +77,13 @@ public class CollectionUtilsTest {
}
@Test
+ public void privateConstructor() throws Exception {
+ Constructor<?>[] cons =
CollectionUtils.class.getDeclaredConstructors();
+ cons[0].setAccessible(true);
+ cons[0].newInstance((Object[])null);
+ }
+
+ @Test
public void reconcileObjectCollections_addNewObject() {
TestObject newObject = new TestObject("newName1", "newValue1");
updatedObjectsMap.put(newObject, newObject);
@@ -199,6 +208,48 @@ public class CollectionUtilsTest {
}
@Test
+ public void toBaseTypedCollection() {
+ Collection<SubTestObject> collection = new ArrayList<SubTestObject>();
+ collection.add(new SubTestObject("a", "b"));
+ collection.add(new SubTestObject("a", "b"));
+ collection.add(new SubTestObject("a", "b"));
+
+ Collection<TestObject> down =
CollectionUtils.toBaseTypedCollection((Collection<? extends TestObject>)
collection);
+ assertThat(down.contains(collection.toArray()[0]), is(true));
+ assertThat(down.contains(collection.toArray()[1]), is(true));
+ assertThat(down.contains(collection.toArray()[2]), is(true));
+ }
+
+ @Test
+ public void toBaseTypedCollection_null() {
+ Collection<SubTestObject> collection = null;
+
+ Collection<TestObject> down =
CollectionUtils.toBaseTypedCollection((Collection<? extends TestObject>)
collection);
+ assertThat(down, is(nullValue()));
+ }
+
+ @Test
+ public void getSingleValue_empty() {
+ List<String> list = new ArrayList<String>();
+ assertThat(CollectionUtils.getSingleValue(list),
is(nullValue(String.class)));
+ }
+
+ @Test
+ public void getSingleValue_single() {
+ List<String> list = new ArrayList<String>();
+ list.add("hello");
+ assertThat(CollectionUtils.getSingleValue(list), is("hello"));
+ }
+
+ @Test(expected = IllegalArgumentException.class)
+ public void getSingleValue_multiple() {
+ List<String> list = new ArrayList<String>();
+ list.add("foo");
+ list.add("bar");
+ CollectionUtils.getSingleValue(list);
+ }
+
+ @Test
public void addUniqueValues() {
List<TestObject> source = new ArrayList<TestObject>();
TestObject testObject1 = new TestObject("a", "b");