You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by ba...@apache.org on 2009/09/15 07:30:02 UTC
svn commit: r814997 [11/18] - in /commons/proper/collections/trunk/src:
java/org/apache/commons/collections/ java/org/apache/commons/collections/bag/
java/org/apache/commons/collections/bidimap/
java/org/apache/commons/collections/buffer/ java/org/apac...
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/BulkTest.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/BulkTest.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/BulkTest.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/BulkTest.java Tue Sep 15 05:29:56 2009
@@ -246,7 +246,7 @@
* @return a {@link TestSuite} containing all the simple and bulk tests
* defined by that class
*/
- public static TestSuite makeSuite(Class c) {
+ public static TestSuite makeSuite(Class<? extends BulkTest> c) {
if (Modifier.isAbstract(c.getModifiers())) {
throw new IllegalArgumentException("Class must not be abstract.");
}
@@ -265,10 +265,10 @@
class BulkTestSuiteMaker {
/** The class that defines simple and bulk tests methods. */
- private Class startingClass;
+ private Class<? extends BulkTest> startingClass;
/** List of ignored simple test names. */
- private List ignored;
+ private List<String> ignored;
/** The TestSuite we're currently populating. Can change over time. */
private TestSuite result;
@@ -284,7 +284,7 @@
*
* @param startingClass the starting class
*/
- public BulkTestSuiteMaker(Class startingClass) {
+ public BulkTestSuiteMaker(Class<? extends BulkTest> startingClass) {
this.startingClass = startingClass;
}
@@ -299,7 +299,7 @@
result.setName(prefix);
BulkTest bulk = makeFirstTestCase(startingClass);
- ignored = new ArrayList();
+ ignored = new ArrayList<String>();
String[] s = bulk.ignoredTests();
if (s != null) {
ignored.addAll(Arrays.asList(s));
@@ -316,7 +316,7 @@
* tests for us to append
*/
void make(BulkTest bulk) {
- Class c = bulk.getClass();
+ Class<? extends BulkTest> c = bulk.getClass();
Method[] all = c.getMethods();
for (int i = 0; i < all.length; i++) {
if (isTest(all[i])) addTest(bulk, all[i]);
@@ -388,7 +388,7 @@
* @param c the class
* @return the name of that class, minus any package names
*/
- private static String getBaseName(Class c) {
+ private static String getBaseName(Class<?> c) {
String name = c.getName();
int p = name.lastIndexOf('.');
if (p > 0) {
@@ -401,7 +401,7 @@
// These three methods are used to create a valid BulkTest instance
// from a class.
- private static Constructor getTestCaseConstructor(Class c) {
+ private static <T> Constructor<T> getTestCaseConstructor(Class<T> c) {
try {
return c.getConstructor(new Class[] { String.class });
} catch (NoSuchMethodException e) {
@@ -410,10 +410,10 @@
}
}
- private static BulkTest makeTestCase(Class c, Method m) {
- Constructor con = getTestCaseConstructor(c);
+ private static <T extends BulkTest> BulkTest makeTestCase(Class<T> c, Method m) {
+ Constructor<T> con = getTestCaseConstructor(c);
try {
- return (BulkTest)con.newInstance(new Object[] {m.getName()});
+ return (BulkTest) con.newInstance(new Object[] { m.getName() });
} catch (InvocationTargetException e) {
e.printStackTrace();
throw new RuntimeException(); // FIXME;
@@ -424,7 +424,7 @@
}
}
- private static BulkTest makeFirstTestCase(Class c) {
+ private static <T extends BulkTest> BulkTest makeFirstTestCase(Class<T> c) {
Method[] all = c.getMethods();
for (int i = 0; i < all.length; i++) {
if (isTest(all[i])) return makeTestCase(c, all[i]);
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/LocalTestNode.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/LocalTestNode.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/LocalTestNode.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/LocalTestNode.java Tue Sep 15 05:29:56 2009
@@ -23,46 +23,50 @@
*
* @author Marc Johnson (marcj at users dot sourceforge dot net)
*/
-class LocalTestNode implements Comparable {
+class LocalTestNode<K extends Comparable<K>, V extends Comparable<V>> implements Comparable<LocalTestNode<K, V>> {
- private Comparable key;
- private Comparable value;
+ private K key;
+ private V value;
+
+ static LocalTestNode<Integer, String> createLocalTestNode(final int key) {
+ return new LocalTestNode<Integer, String>(key, String.valueOf(key));
+ }
/**
* construct a LocalTestNode
*
* @param key value used to create the key and value
*/
- LocalTestNode(final int key) {
- this.key = new Integer(key);
- this.value = String.valueOf(key);
+ private LocalTestNode(K key, V value) {
+ this.key = key;
+ this.value = value;
}
/**
* @param key the unique key associated with the current node.
*/
- void setKey(Comparable key) {
+ void setKey(K key) {
this.key = key;
}
/**
* @return the unique key associated with the current node
*/
- Comparable getKey() {
+ K getKey() {
return key;
}
/**
* @param value the unique value associated with the current node.
*/
- void setValue(Comparable value) {
+ void setValue(V value) {
this.value = value;
}
/**
* @return the unique value associated with the current node
*/
- Comparable getValue() {
+ V getValue() {
return value;
}
@@ -74,10 +78,9 @@
* @return a negative integer, zero, or a positive integer
* as this object is less than, equal to, or greater than the specified object.
*/
- public int compareTo(Object o) {
+ public int compareTo(LocalTestNode<K, V> other) {
- LocalTestNode other = (LocalTestNode) o;
- int rval = getKey().compareTo(other.getKey());
+ int rval = getKey().compareTo(other.getKey());
if (rval == 0) {
rval = getValue().compareTo(other.getValue());
@@ -93,6 +96,7 @@
*
* @return true if equal
*/
+ @SuppressWarnings("unchecked")
public boolean equals(Object o) {
if (o == null) {
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestArrayList.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestArrayList.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestArrayList.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestArrayList.java Tue Sep 15 05:29:56 2009
@@ -30,10 +30,8 @@
*
* @author Jason van Zyl
*/
-public abstract class TestArrayList extends AbstractTestList {
-
- protected ArrayList list = null;
-
+public abstract class TestArrayList<E> extends AbstractTestList<E> {
+
public TestArrayList(String testName) {
super(testName);
}
@@ -47,12 +45,15 @@
junit.textui.TestRunner.main(testCaseName);
}
- public void setUp() {
- list = (ArrayList) makeEmptyList();
- }
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public abstract ArrayList<E> makeObject();
//-----------------------------------------------------------------------
public void testNewArrayList() {
+ ArrayList<E> list = makeObject();
assertTrue("New list is empty", list.isEmpty());
assertEquals("New list has size zero", 0, list.size());
@@ -64,9 +65,11 @@
}
}
+ @SuppressWarnings("unchecked")
public void testSearch() {
- list.add("First Item");
- list.add("Last Item");
+ ArrayList<E> list = makeObject();
+ list.add((E) "First Item");
+ list.add((E) "Last Item");
assertEquals("First item is 'First Item'", "First Item", list.get(0));
assertEquals("Last Item is 'Last Item'", "Last Item", list.get(1));
}
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestArrayStack.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestArrayStack.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestArrayStack.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestArrayStack.java Tue Sep 15 05:29:56 2009
@@ -17,7 +17,6 @@
package org.apache.commons.collections;
import java.util.EmptyStackException;
-import java.util.List;
import junit.framework.Test;
@@ -28,10 +27,8 @@
*
* @author Craig McClanahan
*/
-public class TestArrayStack extends TestArrayList {
+public class TestArrayStack<E> extends TestArrayList<E> {
- protected ArrayStack stack = null;
-
public TestArrayStack(String testName) {
super(testName);
}
@@ -45,18 +42,13 @@
junit.textui.TestRunner.main(testCaseName);
}
- public List makeEmptyList() {
- return new ArrayStack();
- }
-
- public void setUp() {
- stack = (ArrayStack) makeEmptyList();
- list = stack;
+ public ArrayStack<E> makeObject() {
+ return new ArrayStack<E>();
}
//-----------------------------------------------------------------------
public void testNewStack() {
-
+ ArrayStack<E> stack = makeObject();
assertTrue("New stack is empty", stack.empty());
assertEquals("New stack has size zero", 0, stack.size());
@@ -76,16 +68,18 @@
}
+ @SuppressWarnings("unchecked")
public void testPushPeekPop() {
+ ArrayStack<E> stack = makeObject();
- stack.push("First Item");
+ stack.push((E) "First Item");
assertTrue("Stack is not empty", !stack.empty());
assertEquals("Stack size is one", 1, stack.size());
assertEquals("Top item is 'First Item'",
"First Item", (String) stack.peek());
assertEquals("Stack size is one", 1, stack.size());
- stack.push("Second Item");
+ stack.push((E) "Second Item");
assertEquals("Stack size is two", 2, stack.size());
assertEquals("Top item is 'Second Item'",
"Second Item", (String) stack.peek());
@@ -103,10 +97,12 @@
}
+ @SuppressWarnings("unchecked")
public void testSearch() {
+ ArrayStack<E> stack = makeObject();
- stack.push("First Item");
- stack.push("Second Item");
+ stack.push((E) "First Item");
+ stack.push((E) "Second Item");
assertEquals("Top item is 'Second Item'",
1, stack.search("Second Item"));
assertEquals("Next Item is 'First Item'",
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestBufferUtils.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestBufferUtils.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestBufferUtils.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestBufferUtils.java Tue Sep 15 05:29:56 2009
@@ -42,16 +42,16 @@
}
public void testpredicatedBuffer() {
- Predicate predicate = new Predicate() {
+ Predicate<Object> predicate = new Predicate<Object>() {
public boolean evaluate(Object o) {
return o instanceof String;
}
};
- Buffer buffer = BufferUtils.predicatedBuffer(new ArrayStack(), predicate);
+ Buffer<Object> buffer = BufferUtils.predicatedBuffer(new ArrayStack<Object>(), predicate);
assertTrue("returned object should be a PredicatedBuffer",
buffer instanceof PredicatedBuffer);
try {
- buffer = BufferUtils.predicatedBuffer(new ArrayStack(), null);
+ buffer = BufferUtils.predicatedBuffer(new ArrayStack<Object>(), null);
fail("Expecting IllegalArgumentException for null predicate.");
} catch (IllegalArgumentException ex) {
// expected
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestEnumerationUtils.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestEnumerationUtils.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestEnumerationUtils.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestEnumerationUtils.java Tue Sep 15 05:29:56 2009
@@ -39,46 +39,46 @@
public static final String TO_LIST_FIXTURE = "this is a test";
public void testToListWithStringTokenizer() {
- List expectedList1 = new ArrayList();
+ List<String> expectedList1 = new ArrayList<String>();
StringTokenizer st = new StringTokenizer(TO_LIST_FIXTURE);
while (st.hasMoreTokens()) {
expectedList1.add(st.nextToken());
- }
- List expectedList2 = new ArrayList();
+ }
+ List<String> expectedList2 = new ArrayList<String>();
expectedList2.add("this");
expectedList2.add("is");
expectedList2.add("a");
expectedList2.add("test");
- List actualList = EnumerationUtils.toList(new StringTokenizer(TO_LIST_FIXTURE));
+ List<String> actualList = EnumerationUtils.toList(new StringTokenizer(TO_LIST_FIXTURE));
Assert.assertEquals(expectedList1, expectedList2);
Assert.assertEquals(expectedList1, actualList);
Assert.assertEquals(expectedList2, actualList);
}
public void testToListWithHashtable() {
- Hashtable expected = new Hashtable();
+ Hashtable<String, Integer> expected = new Hashtable<String, Integer>();
expected.put("one", new Integer(1));
expected.put("two", new Integer(2));
expected.put("three", new Integer(3));
// validate elements.
- List actualEltList = EnumerationUtils.toList(expected.elements());
+ List<Integer> actualEltList = EnumerationUtils.toList(expected.elements());
Assert.assertEquals(expected.size(), actualEltList.size());
Assert.assertTrue(actualEltList.contains(new Integer(1)));
Assert.assertTrue(actualEltList.contains(new Integer(2)));
Assert.assertTrue(actualEltList.contains(new Integer(3)));
- List expectedEltList = new ArrayList();
+ List<Integer> expectedEltList = new ArrayList<Integer>();
expectedEltList.add(new Integer(1));
expectedEltList.add(new Integer(2));
expectedEltList.add(new Integer(3));
Assert.assertTrue(actualEltList.containsAll(expectedEltList));
// validate keys.
- List actualKeyList = EnumerationUtils.toList(expected.keys());
+ List<String> actualKeyList = EnumerationUtils.toList(expected.keys());
Assert.assertEquals(expected.size(), actualEltList.size());
Assert.assertTrue(actualKeyList.contains("one"));
Assert.assertTrue(actualKeyList.contains("two"));
Assert.assertTrue(actualKeyList.contains("three"));
- List expectedKeyList = new ArrayList();
+ List<String> expectedKeyList = new ArrayList<String>();
expectedKeyList.add("one");
expectedKeyList.add("two");
expectedKeyList.add("three");
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestLinkedList.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestLinkedList.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestLinkedList.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestLinkedList.java Tue Sep 15 05:29:56 2009
@@ -38,46 +38,21 @@
*
* @author Rich Dougherty
*/
-public abstract class TestLinkedList extends AbstractTestList {
+public abstract class TestLinkedList<T> extends AbstractTestList<T> {
public TestLinkedList(String testName) {
super(testName);
}
- public List makeEmptyList() {
- return makeEmptyLinkedList();
- }
-
- public List makeFullList() {
- return makeFullLinkedList();
- }
-
- /**
- * Return a new, empty {@link LinkedList} to be used for testing.
- *
- * @return an empty list for testing.
- */
- protected abstract LinkedList makeEmptyLinkedList();
-
- /**
- * Return a new, full {@link List} to be used for testing.
- *
- * @return a full list for testing
- */
- protected LinkedList makeFullLinkedList() {
- // only works if list supports optional "addAll(Collection)"
- LinkedList list = makeEmptyLinkedList();
- list.addAll(Arrays.asList(getFullElements()));
- return list;
- }
+ public abstract LinkedList<T> makeObject();
/**
* Returns the {@link #collection} field cast to a {@link LinkedList}.
*
* @return the collection field as a List
*/
- protected LinkedList getLinkedList() {
- return (LinkedList)collection;
+ public LinkedList<T> getCollection() {
+ return (LinkedList<T>) super.getCollection();
}
/**
@@ -85,24 +60,25 @@
*
* @return the confirmed field as a List
*/
- protected LinkedList getConfirmedLinkedList() {
- return (LinkedList)confirmed;
+ protected LinkedList<T> getConfirmedLinkedList() {
+ return (LinkedList<T>) getConfirmed();
}
/**
* Tests {@link LinkedList#addFirst(Object)}.
*/
+ @SuppressWarnings("unchecked")
public void testLinkedListAddFirst() {
if (!isAddSupported()) return;
- Object o = "hello";
+ T o = (T) "hello";
resetEmpty();
- getLinkedList().addFirst(o);
+ getCollection().addFirst(o);
getConfirmedLinkedList().addFirst(o);
verify();
resetFull();
- getLinkedList().addFirst(o);
+ getCollection().addFirst(o);
getConfirmedLinkedList().addFirst(o);
verify();
}
@@ -110,17 +86,18 @@
/**
* Tests {@link LinkedList#addLast(Object)}.
*/
+ @SuppressWarnings("unchecked")
public void testLinkedListAddLast() {
if (!isAddSupported()) return;
- Object o = "hello";
+ T o = (T) "hello";
resetEmpty();
- getLinkedList().addLast(o);
+ getCollection().addLast(o);
getConfirmedLinkedList().addLast(o);
verify();
resetFull();
- getLinkedList().addLast(o);
+ getCollection().addLast(o);
getConfirmedLinkedList().addLast(o);
verify();
}
@@ -131,7 +108,7 @@
public void testLinkedListGetFirst() {
resetEmpty();
try {
- getLinkedList().getFirst();
+ getCollection().getFirst();
fail("getFirst() should throw a NoSuchElementException for an " +
"empty list.");
} catch (NoSuchElementException e) {
@@ -140,7 +117,7 @@
verify();
resetFull();
- Object first = getLinkedList().getFirst();
+ Object first = getCollection().getFirst();
Object confirmedFirst = getConfirmedLinkedList().getFirst();
assertEquals("Result returned by getFirst() was wrong.",
confirmedFirst, first);
@@ -153,7 +130,7 @@
public void testLinkedListGetLast() {
resetEmpty();
try {
- getLinkedList().getLast();
+ getCollection().getLast();
fail("getLast() should throw a NoSuchElementException for an " +
"empty list.");
} catch (NoSuchElementException e) {
@@ -162,7 +139,7 @@
verify();
resetFull();
- Object last = getLinkedList().getLast();
+ Object last = getCollection().getLast();
Object confirmedLast = getConfirmedLinkedList().getLast();
assertEquals("Result returned by getLast() was wrong.",
confirmedLast, last);
@@ -177,7 +154,7 @@
resetEmpty();
try {
- getLinkedList().removeFirst();
+ getCollection().removeFirst();
fail("removeFirst() should throw a NoSuchElementException for " +
"an empty list.");
} catch (NoSuchElementException e) {
@@ -186,7 +163,7 @@
verify();
resetFull();
- Object first = getLinkedList().removeFirst();
+ Object first = getCollection().removeFirst();
Object confirmedFirst = getConfirmedLinkedList().removeFirst();
assertEquals("Result returned by removeFirst() was wrong.",
confirmedFirst, first);
@@ -201,7 +178,7 @@
resetEmpty();
try {
- getLinkedList().removeLast();
+ getCollection().removeLast();
fail("removeLast() should throw a NoSuchElementException for " +
"an empty list.");
} catch (NoSuchElementException e) {
@@ -210,7 +187,7 @@
verify();
resetFull();
- Object last = getLinkedList().removeLast();
+ Object last = getCollection().removeLast();
Object confirmedLast = getConfirmedLinkedList().removeLast();
assertEquals("Result returned by removeLast() was wrong.",
confirmedLast, last);
@@ -220,15 +197,15 @@
/**
* Returns an empty {@link LinkedList}.
*/
- public Collection makeConfirmedCollection() {
- return new LinkedList();
+ public Collection<T> makeConfirmedCollection() {
+ return new LinkedList<T>();
}
/**
* Returns a full {@link LinkedList}.
*/
- public Collection makeConfirmedFullCollection() {
- List list = new LinkedList();
+ public Collection<T> makeConfirmedFullCollection() {
+ List<T> list = new LinkedList<T>();
list.addAll(Arrays.asList(getFullElements()));
return list;
}
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestSetUtils.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestSetUtils.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestSetUtils.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestSetUtils.java Tue Sep 15 05:29:56 2009
@@ -46,18 +46,17 @@
public void testNothing() {
}
-
+
public void testpredicatedSet() {
- Predicate predicate = new Predicate() {
+ Predicate<Object> predicate = new Predicate<Object>() {
public boolean evaluate(Object o) {
return o instanceof String;
}
};
- Set set = SetUtils.predicatedSet(new HashSet(), predicate);
- assertTrue("returned object should be a PredicatedSet",
- set instanceof PredicatedSet);
+ Set<Object> set = SetUtils.predicatedSet(new HashSet<Object>(), predicate);
+ assertTrue("returned object should be a PredicatedSet", set instanceof PredicatedSet);
try {
- set = SetUtils.predicatedSet(new HashSet(), null);
+ set = SetUtils.predicatedSet(new HashSet<Object>(), null);
fail("Expecting IllegalArgumentException for null predicate.");
} catch (IllegalArgumentException ex) {
// expected
@@ -71,11 +70,11 @@
}
public void testEquals() {
- Collection data = Arrays.asList( new String[] { "a", "b", "c" });
-
- Set a = new HashSet( data );
- Set b = new HashSet( data );
-
+ Collection<String> data = Arrays.asList( new String[] { "a", "b", "c" });
+
+ Set<String> a = new HashSet<String>(data);
+ Set<String> b = new HashSet<String>(data);
+
assertEquals(true, a.equals(b));
assertEquals(true, SetUtils.isEqualSet(a, b));
a.clear();
@@ -84,13 +83,13 @@
assertEquals(false, SetUtils.isEqualSet(null, b));
assertEquals(true, SetUtils.isEqualSet(null, null));
}
-
+
public void testHashCode() {
- Collection data = Arrays.asList( new String[] { "a", "b", "c" });
-
- Set a = new HashSet( data );
- Set b = new HashSet( data );
-
+ Collection<String> data = Arrays.asList( new String[] { "a", "b", "c" });
+
+ Set<String> a = new HashSet<String>(data);
+ Set<String> b = new HashSet<String>(data);
+
assertEquals(true, a.hashCode() == b.hashCode());
assertEquals(true, a.hashCode() == SetUtils.hashCodeForSet(a));
assertEquals(true, b.hashCode() == SetUtils.hashCodeForSet(b));
@@ -98,6 +97,6 @@
a.clear();
assertEquals(false, SetUtils.hashCodeForSet(a) == SetUtils.hashCodeForSet(b));
assertEquals(0, SetUtils.hashCodeForSet(null));
- }
+ }
}
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestTreeMap.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestTreeMap.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestTreeMap.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestTreeMap.java Tue Sep 15 05:29:56 2009
@@ -27,8 +27,8 @@
*
* @author Jason van Zyl
*/
-public abstract class TestTreeMap extends AbstractTestMap {
-
+public abstract class TestTreeMap<K, V> extends AbstractTestMap<K, V> {
+
public TestTreeMap(String testName) {
super(testName);
}
@@ -42,23 +42,27 @@
return false;
}
- protected TreeMap map = null;
-
- public void setUp() {
- map = (TreeMap) makeEmptyMap();
- }
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public abstract TreeMap<K, V> makeObject();
public void testNewMap() {
+ TreeMap<K, V> map = makeObject();
assertTrue("New map is empty", map.isEmpty());
assertEquals("New map has size zero", 0, map.size());
}
+ @SuppressWarnings("unchecked")
public void testSearch() {
- map.put("first", "First Item");
- map.put("second", "Second Item");
+ TreeMap<K, V> map = makeObject();
+ map.put((K) "first", (V) "First Item");
+ map.put((K) "second", (V) "Second Item");
assertEquals("Top item is 'Second Item'",
"First Item", map.get("first"));
assertEquals("Next Item is 'First Item'",
"Second Item", map.get("second"));
}
+
}
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestTypedCollection.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestTypedCollection.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestTypedCollection.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/TestTypedCollection.java Tue Sep 15 05:29:56 2009
@@ -27,25 +27,25 @@
*
* @author Stephen Colebourne
*/
-public abstract class TestTypedCollection extends BulkTest {
+public abstract class TestTypedCollection<T> extends BulkTest {
public TestTypedCollection(String name) {
super(name);
}
+ protected abstract Collection<T> typedCollection();
- protected abstract Collection typedCollection();
-
- protected Class getType() {
- return String.class;
+ @SuppressWarnings("unchecked")
+ protected Class<T> getType() {
+ return (Class<T>) String.class;
}
-
+ @SuppressWarnings("unchecked")
public void testIllegalAdd() {
- Collection c = typedCollection();
+ Collection<T> c = typedCollection();
Integer i = new Integer(3);
try {
- c.add(i);
+ c.add((T) i);
fail("Integer should fail string predicate.");
} catch (IllegalArgumentException e) {
// expected
@@ -55,15 +55,16 @@
}
+ @SuppressWarnings("unchecked")
public void testIllegalAddAll() {
- Collection c = typedCollection();
- List elements = new ArrayList();
+ Collection<T> c = typedCollection();
+ List<Object> elements = new ArrayList<Object>();
elements.add("one");
elements.add("two");
elements.add(new Integer(3));
elements.add("four");
try {
- c.addAll(elements);
+ c.addAll((Collection<? extends T>) elements);
fail("Integer should fail string predicate.");
} catch (IllegalArgumentException e) {
// expected
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/AbstractTestSortedBag.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/AbstractTestSortedBag.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/AbstractTestSortedBag.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/AbstractTestSortedBag.java Tue Sep 15 05:29:56 2009
@@ -16,6 +16,8 @@
*/
package org.apache.commons.collections.bag;
+import org.apache.commons.collections.SortedBag;
+
/**
* Abstract test class for
* {@link org.apache.commons.collections.SortedBag SortedBag}
@@ -26,11 +28,17 @@
*
* @author Stephen Colebourne
*/
-public abstract class AbstractTestSortedBag extends AbstractTestBag {
+public abstract class AbstractTestSortedBag<T> extends AbstractTestBag<T> {
public AbstractTestSortedBag(String testName) {
super(testName);
}
-
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public abstract SortedBag<T> makeObject();
+
// TODO: Add the SortedBag tests!
}
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestHashBag.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestHashBag.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestHashBag.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestHashBag.java Tue Sep 15 05:29:56 2009
@@ -29,7 +29,7 @@
*
* @author Chuck Burdick
*/
-public class TestHashBag extends AbstractTestBag {
+public class TestHashBag<T> extends AbstractTestBag<T> {
public TestHashBag(String testName) {
super(testName);
@@ -44,8 +44,8 @@
junit.textui.TestRunner.main(testCaseName);
}
- public Bag makeBag() {
- return new HashBag();
+ public Bag<T> makeObject() {
+ return new HashBag<T>();
}
public String getCompatibilityVersion() {
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestPredicatedBag.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestPredicatedBag.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestPredicatedBag.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestPredicatedBag.java Tue Sep 15 05:29:56 2009
@@ -23,7 +23,7 @@
import org.apache.commons.collections.Bag;
import org.apache.commons.collections.Predicate;
-import org.apache.commons.collections.PredicateUtils;
+import org.apache.commons.collections.functors.TruePredicate;
/**
* Extension of {@link AbstractTestBag} for exercising the {@link PredicatedBag}
@@ -34,8 +34,8 @@
*
* @author Phil Steitz
*/
-public class TestPredicatedBag extends AbstractTestBag {
-
+public class TestPredicatedBag<T> extends AbstractTestBag<T> {
+
public TestPredicatedBag(String testName) {
super(testName);
}
@@ -48,81 +48,84 @@
String[] testCaseName = { TestPredicatedBag.class.getName()};
junit.textui.TestRunner.main(testCaseName);
}
-
+
//--------------------------------------------------------------------------
- protected Predicate stringPredicate() {
- return new Predicate() {
- public boolean evaluate(Object o) {
+ protected Predicate<T> stringPredicate() {
+ return new Predicate<T>() {
+ public boolean evaluate(T o) {
return o instanceof String;
}
};
- }
-
- protected Predicate truePredicate = PredicateUtils.truePredicate();
-
- protected Bag decorateBag(HashBag bag, Predicate predicate) {
+ }
+
+ protected Predicate<T> truePredicate = TruePredicate.<T>truePredicate();
+
+ protected Bag<T> decorateBag(HashBag<T> bag, Predicate<T> predicate) {
return PredicatedBag.decorate(bag, predicate);
}
- public Bag makeBag() {
- return decorateBag(new HashBag(), truePredicate);
+ public Bag<T> makeObject() {
+ return decorateBag(new HashBag<T>(), truePredicate);
}
-
- protected Bag makeTestBag() {
- return decorateBag(new HashBag(), stringPredicate());
+
+ protected Bag<T> makeTestBag() {
+ return decorateBag(new HashBag<T>(), stringPredicate());
}
-
+
//--------------------------------------------------------------------------
+ @SuppressWarnings("unchecked")
public void testlegalAddRemove() {
- Bag bag = makeTestBag();
+ Bag<T> bag = makeTestBag();
assertEquals(0, bag.size());
- Object[] els = new Object[] {"1", "3", "5", "7", "2", "4", "1"};
+ T[] els = (T[]) new Object[] { "1", "3", "5", "7", "2", "4", "1" };
for (int i = 0; i < els.length; i++) {
bag.add(els[i]);
assertEquals(i + 1, bag.size());
assertEquals(true, bag.contains(els[i]));
}
- Set set = ((PredicatedBag) bag).uniqueSet();
+ Set<T> set = ((PredicatedBag<T>) bag).uniqueSet();
assertTrue("Unique set contains the first element",set.contains(els[0]));
- assertEquals(true, bag.remove(els[0]));
- set = ((PredicatedBag) bag).uniqueSet();
+ assertEquals(true, bag.remove(els[0]));
+ set = ((PredicatedBag<T>) bag).uniqueSet();
assertTrue("Unique set now does not contain the first element",
- !set.contains(els[0]));
+ !set.contains(els[0]));
}
-
+
+ @SuppressWarnings("unchecked")
public void testIllegalAdd() {
- Bag bag = makeTestBag();
+ Bag<T> bag = makeTestBag();
Integer i = new Integer(3);
try {
- bag.add(i);
+ bag.add((T) i);
fail("Integer should fail string predicate.");
} catch (IllegalArgumentException e) {
// expected
}
- assertTrue("Collection shouldn't contain illegal element",
- !bag.contains(i));
+ assertTrue("Collection shouldn't contain illegal element",
+ !bag.contains(i));
}
+ @SuppressWarnings("unchecked")
public void testIllegalDecorate() {
- HashBag elements = new HashBag();
+ HashBag<Object> elements = new HashBag<Object>();
elements.add("one");
elements.add("two");
elements.add(new Integer(3));
elements.add("four");
try {
- Bag bag = decorateBag(elements, stringPredicate());
+ decorateBag((HashBag<T>) elements, stringPredicate());
fail("Bag contains an element that should fail the predicate.");
} catch (IllegalArgumentException e) {
// expected
}
try {
- Bag bag = decorateBag(new HashBag(), null);
+ decorateBag(new HashBag<T>(), null);
fail("Expectiing IllegalArgumentException for null predicate.");
} catch (IllegalArgumentException e) {
// expected
- }
+ }
}
public String getCompatibilityVersion() {
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestTransformedBag.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestTransformedBag.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestTransformedBag.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestTransformedBag.java Tue Sep 15 05:29:56 2009
@@ -20,6 +20,7 @@
import junit.framework.TestSuite;
import org.apache.commons.collections.Bag;
+import org.apache.commons.collections.Transformer;
import org.apache.commons.collections.collection.TestTransformedCollection;
/**
@@ -31,8 +32,8 @@
*
* @author Stephen Colebourne
*/
-public class TestTransformedBag extends AbstractTestBag {
-
+public class TestTransformedBag<T> extends AbstractTestBag<T> {
+
public TestTransformedBag(String testName) {
super(testName);
}
@@ -46,25 +47,29 @@
junit.textui.TestRunner.main(testCaseName);
}
- public Bag makeBag() {
- return TransformedBag.decorate(new HashBag(), TestTransformedCollection.NOOP_TRANSFORMER);
+ @SuppressWarnings("unchecked")
+ public Bag<T> makeObject() {
+ return TransformedBag.decorate(new HashBag<T>(), (Transformer<T, T>) TestTransformedCollection.NOOP_TRANSFORMER);
}
+ @SuppressWarnings("unchecked")
public void testTransformedBag() {
- Bag bag = TransformedBag.decorate(new HashBag(), TestTransformedCollection.STRING_TO_INTEGER_TRANSFORMER);
+ //T had better be Object!
+ Bag<T> bag = TransformedBag.decorate(new HashBag<T>(), (Transformer<T, T>) TestTransformedCollection.STRING_TO_INTEGER_TRANSFORMER);
assertEquals(0, bag.size());
Object[] els = new Object[] {"1", "3", "5", "7", "2", "4", "6"};
for (int i = 0; i < els.length; i++) {
- bag.add(els[i]);
+ bag.add((T) els[i]);
assertEquals(i + 1, bag.size());
assertEquals(true, bag.contains(new Integer((String) els[i])));
assertEquals(false, bag.contains(els[i]));
}
-
+
assertEquals(false, bag.remove(els[0]));
assertEquals(true, bag.remove(new Integer((String) els[0])));
}
+ // TODO: Generics
public void testTransformedBag_decorateTransform() {
Bag originalBag = new HashBag();
Object[] els = new Object[] {"1", "3", "5", "7", "2", "4", "6"};
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestTransformedSortedBag.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestTransformedSortedBag.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestTransformedSortedBag.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestTransformedSortedBag.java Tue Sep 15 05:29:56 2009
@@ -20,6 +20,8 @@
import junit.framework.TestSuite;
import org.apache.commons.collections.Bag;
+import org.apache.commons.collections.SortedBag;
+import org.apache.commons.collections.Transformer;
import org.apache.commons.collections.collection.TestTransformedCollection;
/**
@@ -31,8 +33,8 @@
*
* @author Stephen Colebourne
*/
-public class TestTransformedSortedBag extends AbstractTestSortedBag {
-
+public class TestTransformedSortedBag<T> extends AbstractTestSortedBag<T> {
+
public TestTransformedSortedBag(String testName) {
super(testName);
}
@@ -46,22 +48,24 @@
junit.textui.TestRunner.main(testCaseName);
}
- public Bag makeBag() {
- return TransformedSortedBag.decorate(new TreeBag(), TestTransformedCollection.NOOP_TRANSFORMER);
+ @SuppressWarnings("unchecked")
+ public SortedBag<T> makeObject() {
+ return TransformedSortedBag.decorate(new TreeBag<T>(), (Transformer<T, T>) TestTransformedCollection.NOOP_TRANSFORMER);
}
+ @SuppressWarnings("unchecked")
public void testTransformedBag() {
- Bag bag = TransformedSortedBag.decorate(new TreeBag(), TestTransformedCollection.STRING_TO_INTEGER_TRANSFORMER);
+ SortedBag<T> bag = TransformedSortedBag.decorate(new TreeBag<T>(), (Transformer<T, T>) TestTransformedCollection.STRING_TO_INTEGER_TRANSFORMER);
assertEquals(0, bag.size());
Object[] els = new Object[] {"1", "3", "5", "7", "2", "4", "6"};
for (int i = 0; i < els.length; i++) {
- bag.add(els[i]);
+ bag.add((T) els[i]);
assertEquals(i + 1, bag.size());
assertEquals(true, bag.contains(new Integer((String) els[i])));
}
-
+
assertEquals(true, bag.remove(new Integer((String) els[0])));
-
+
}
public void testTransformedBag_decorateTransform() {
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestTreeBag.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestTreeBag.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestTreeBag.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/bag/TestTreeBag.java Tue Sep 15 05:29:56 2009
@@ -30,48 +30,26 @@
*
* @author Chuck Burdick
*/
-public class TestTreeBag extends AbstractTestBag {
-
- public TestTreeBag(String testName) {
- super(testName);
- }
-
- public static Test suite() {
- return new TestSuite(TestTreeBag.class);
- }
+public class TestTreeBag<T> extends AbstractTestSortedBag<T> {
- public static void main(String args[]) {
- String[] testCaseName = { TestTreeBag.class.getName() };
- junit.textui.TestRunner.main(testCaseName);
- }
-
- public Bag makeBag() {
- return new TreeBag();
- }
-
- public SortedBag setupBag() {
- SortedBag bag = (SortedBag)makeBag();
- bag.add("C");
- bag.add("A");
- bag.add("B");
- bag.add("D");
- return bag;
- }
-
- public void testOrdering() {
- Bag bag = setupBag();
- assertEquals("Should get elements in correct order",
- "A", bag.toArray()[0]);
- assertEquals("Should get elements in correct order",
- "B", bag.toArray()[1]);
- assertEquals("Should get elements in correct order",
- "C", bag.toArray()[2]);
- assertEquals("Should get first key",
- "A", ((SortedBag)bag).first());
- assertEquals("Should get last key",
- "D", ((SortedBag)bag).last());
- }
+ public TestTreeBag(String testName) {
+ super(testName);
+ }
+
+ public static Test suite() {
+ return new TestSuite(TestTreeBag.class);
+ }
+
+ public static void main(String args[]) {
+ String[] testCaseName = { TestTreeBag.class.getName() };
+ junit.textui.TestRunner.main(testCaseName);
+ }
+
+ public SortedBag<T> makeObject() {
+ return new TreeBag<T>();
+ }
+ // TODO: Generics (for example... is this even needed?)
public void testCollections265() {
Bag bag = new TreeBag();
try {
@@ -82,19 +60,38 @@
}
}
- public String getCompatibilityVersion() {
- return "3";
- }
-
-// public void testCreate() throws Exception {
-// Bag bag = makeBag();
-// writeExternalFormToDisk((Serializable) bag, "D:/dev/collections/data/test/TreeBag.emptyCollection.version3.obj");
-// bag = makeBag();
-// bag.add("A");
-// bag.add("A");
-// bag.add("B");
-// bag.add("B");
-// bag.add("C");
-// writeExternalFormToDisk((Serializable) bag, "D:/dev/collections/data/test/TreeBag.fullCollection.version3.obj");
-// }
+ @SuppressWarnings("unchecked")
+ public SortedBag<T> setupBag() {
+ SortedBag<T> bag = makeObject();
+ bag.add((T) "C");
+ bag.add((T) "A");
+ bag.add((T) "B");
+ bag.add((T) "D");
+ return bag;
+ }
+
+ public void testOrdering() {
+ Bag<T> bag = setupBag();
+ assertEquals("Should get elements in correct order", "A", bag.toArray()[0]);
+ assertEquals("Should get elements in correct order", "B", bag.toArray()[1]);
+ assertEquals("Should get elements in correct order", "C", bag.toArray()[2]);
+ assertEquals("Should get first key", "A", ((SortedBag<T>) bag).first());
+ assertEquals("Should get last key", "D", ((SortedBag<T>) bag).last());
+ }
+
+ public String getCompatibilityVersion() {
+ return "3";
+ }
+
+ // public void testCreate() throws Exception {
+ // Bag bag = makeBag();
+ // writeExternalFormToDisk((Serializable) bag, "D:/dev/collections/data/test/TreeBag.emptyCollection.version3.obj");
+ // bag = makeBag();
+ // bag.add("A");
+ // bag.add("A");
+ // bag.add("B");
+ // bag.add("B");
+ // bag.add("C");
+ // writeExternalFormToDisk((Serializable) bag, "D:/dev/collections/data/test/TreeBag.fullCollection.version3.obj");
+ // }
}
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/AbstractTestOrderedBidiMap.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/AbstractTestOrderedBidiMap.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/AbstractTestOrderedBidiMap.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/AbstractTestOrderedBidiMap.java Tue Sep 15 05:29:56 2009
@@ -36,7 +36,7 @@
* @author Matthew Hawthorne
* @author Stephen Colebourne
*/
-public abstract class AbstractTestOrderedBidiMap extends AbstractTestBidiMap {
+public abstract class AbstractTestOrderedBidiMap<K, V> extends AbstractTestBidiMap<K, V> {
public AbstractTestOrderedBidiMap(String testName) {
super(testName);
@@ -49,39 +49,39 @@
//-----------------------------------------------------------------------
public void testFirstKey() {
resetEmpty();
- OrderedBidiMap bidi = (OrderedBidiMap) map;
+ OrderedBidiMap<K, V> bidi = getMap();
try {
bidi.firstKey();
fail();
} catch (NoSuchElementException ex) {}
-
+
resetFull();
- bidi = (OrderedBidiMap) map;
- Object confirmedFirst = confirmed.keySet().iterator().next();
+ bidi = getMap();
+ K confirmedFirst = confirmed.keySet().iterator().next();
assertEquals(confirmedFirst, bidi.firstKey());
}
-
+
public void testLastKey() {
resetEmpty();
- OrderedBidiMap bidi = (OrderedBidiMap) map;
+ OrderedBidiMap<K, V> bidi = getMap();
try {
bidi.lastKey();
fail();
} catch (NoSuchElementException ex) {}
-
+
resetFull();
- bidi = (OrderedBidiMap) map;
- Object confirmedLast = null;
- for (Iterator it = confirmed.keySet().iterator(); it.hasNext();) {
+ bidi = getMap();
+ K confirmedLast = null;
+ for (Iterator<K> it = confirmed.keySet().iterator(); it.hasNext();) {
confirmedLast = it.next();
}
assertEquals(confirmedLast, bidi.lastKey());
}
- //-----------------------------------------------------------------------
+ //-----------------------------------------------------------------------
public void testNextKey() {
resetEmpty();
- OrderedBidiMap bidi = (OrderedBidiMap) map;
+ OrderedBidiMap<K, V> bidi = (OrderedBidiMap<K, V>) map;
assertEquals(null, bidi.nextKey(getOtherKeys()[0]));
if (isAllowNullKey() == false) {
try {
@@ -90,18 +90,18 @@
} else {
assertEquals(null, bidi.nextKey(null));
}
-
+
resetFull();
- bidi = (OrderedBidiMap) map;
- Iterator it = confirmed.keySet().iterator();
- Object confirmedLast = it.next();
+ bidi = (OrderedBidiMap<K, V>) map;
+ Iterator<K> it = confirmed.keySet().iterator();
+ K confirmedLast = it.next();
while (it.hasNext()) {
- Object confirmedObject = it.next();
+ K confirmedObject = it.next();
assertEquals(confirmedObject, bidi.nextKey(confirmedLast));
confirmedLast = confirmedObject;
}
assertEquals(null, bidi.nextKey(confirmedLast));
-
+
if (isAllowNullKey() == false) {
try {
bidi.nextKey(null);
@@ -111,10 +111,10 @@
assertEquals(null, bidi.nextKey(null));
}
}
-
+
public void testPreviousKey() {
resetEmpty();
- OrderedBidiMap bidi = (OrderedBidiMap) map;
+ OrderedBidiMap<K, V> bidi = getMap();
assertEquals(null, bidi.previousKey(getOtherKeys()[0]));
if (isAllowNullKey() == false) {
try {
@@ -123,20 +123,20 @@
} else {
assertEquals(null, bidi.previousKey(null));
}
-
+
resetFull();
- bidi = (OrderedBidiMap) map;
- List list = new ArrayList(confirmed.keySet());
+ bidi = getMap();
+ List<K> list = new ArrayList<K>(confirmed.keySet());
Collections.reverse(list);
- Iterator it = list.iterator();
- Object confirmedLast = it.next();
+ Iterator<K> it = list.iterator();
+ K confirmedLast = it.next();
while (it.hasNext()) {
- Object confirmedObject = it.next();
+ K confirmedObject = it.next();
assertEquals(confirmedObject, bidi.previousKey(confirmedLast));
confirmedLast = confirmedObject;
}
assertEquals(null, bidi.previousKey(confirmedLast));
-
+
if (isAllowNullKey() == false) {
try {
bidi.previousKey(null);
@@ -146,21 +146,29 @@
assertEquals(null, bidi.previousKey(null));
}
}
-
+
//-----------------------------------------------------------------------
public BulkTest bulkTestOrderedMapIterator() {
return new TestBidiOrderedMapIterator();
}
-
- public class TestBidiOrderedMapIterator extends AbstractTestMapIterator {
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public OrderedBidiMap<K, V> getMap() {
+ return (OrderedBidiMap<K, V>) super.getMap();
+ }
+
+ public class TestBidiOrderedMapIterator extends AbstractTestMapIterator<K, V> {
public TestBidiOrderedMapIterator() {
super("TestBidiOrderedMapIterator");
}
-
- public Object[] addSetValues() {
+
+ public V[] addSetValues() {
return AbstractTestOrderedBidiMap.this.getNewSampleValues();
}
-
+
public boolean supportsRemove() {
return AbstractTestOrderedBidiMap.this.isRemoveSupported();
}
@@ -169,30 +177,30 @@
return AbstractTestOrderedBidiMap.this.isSetValueSupported();
}
- public MapIterator makeEmptyMapIterator() {
+ public MapIterator<K, V> makeEmptyIterator() {
resetEmpty();
- return ((OrderedBidiMap) AbstractTestOrderedBidiMap.this.map).orderedMapIterator();
+ return AbstractTestOrderedBidiMap.this.getMap().mapIterator();
}
- public MapIterator makeFullMapIterator() {
+ public MapIterator<K, V> makeObject() {
resetFull();
- return ((OrderedBidiMap) AbstractTestOrderedBidiMap.this.map).orderedMapIterator();
+ return AbstractTestOrderedBidiMap.this.getMap().mapIterator();
}
-
- public Map getMap() {
+
+ public Map<K, V> getMap() {
// assumes makeFullMapIterator() called first
return AbstractTestOrderedBidiMap.this.map;
}
-
- public Map getConfirmedMap() {
+
+ public Map<K, V> getConfirmedMap() {
// assumes makeFullMapIterator() called first
return AbstractTestOrderedBidiMap.this.confirmed;
}
-
+
public void verify() {
super.verify();
AbstractTestOrderedBidiMap.this.verify();
}
}
-
+
}
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/AbstractTestSortedBidiMap.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/AbstractTestSortedBidiMap.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/AbstractTestSortedBidiMap.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/AbstractTestSortedBidiMap.java Tue Sep 15 05:29:56 2009
@@ -40,68 +40,83 @@
* @author Matthew Hawthorne
* @author Stephen Colebourne
*/
-public abstract class AbstractTestSortedBidiMap extends AbstractTestOrderedBidiMap {
+public abstract class AbstractTestSortedBidiMap<K extends Comparable<K>, V extends Comparable<V>> extends AbstractTestOrderedBidiMap<K, V> {
- protected List sortedKeys = new ArrayList();
- protected List sortedValues = new ArrayList();
- protected SortedSet sortedNewValues = new TreeSet();
+ protected List<K> sortedKeys = new ArrayList<K>();
+ protected List<V> sortedValues = new ArrayList<V>();
+ protected SortedSet<V> sortedNewValues = new TreeSet<V>();
public AbstractTestSortedBidiMap(String testName) {
super(testName);
sortedKeys.addAll(Arrays.asList(getSampleKeys()));
Collections.sort(sortedKeys);
sortedKeys = Collections.unmodifiableList(sortedKeys);
-
- Map map = new TreeMap();
- for (int i = 0; i < getSampleKeys().length; i++) {
- map.put(getSampleKeys()[i], getSampleValues()[i]);
- }
- sortedValues.addAll(map.values());
- sortedValues = Collections.unmodifiableList(sortedValues);
-
- sortedNewValues.addAll(Arrays.asList(getNewSampleValues()));
- }
- public AbstractTestSortedBidiMap() {
- super();
- sortedKeys.addAll(Arrays.asList(getSampleValues()));
- Collections.sort(sortedKeys);
- sortedKeys = Collections.unmodifiableList(sortedKeys);
-
- Map map = new TreeMap();
- for (int i = 0; i < getSampleKeys().length; i++) {
- map.put(getSampleValues()[i], getSampleKeys()[i]);
- }
+ Map<K, V> map = new TreeMap<K, V>();
+ addSampleMappings(map);
+
sortedValues.addAll(map.values());
sortedValues = Collections.unmodifiableList(sortedValues);
-
+
sortedNewValues.addAll(Arrays.asList(getNewSampleValues()));
}
+// public AbstractTestSortedBidiMap() {
+// super();
+// sortedKeys.addAll(Arrays.asList(getSampleValues()));
+// Collections.sort(sortedKeys);
+// sortedKeys = Collections.unmodifiableList(sortedKeys);
+//
+// Map map = new TreeMap();
+// for (int i = 0; i < getSampleKeys().length; i++) {
+// map.put(getSampleValues()[i], getSampleKeys()[i]);
+// }
+// sortedValues.addAll(map.values());
+// sortedValues = Collections.unmodifiableList(sortedValues);
+//
+// sortedNewValues.addAll(Arrays.asList(getNewSampleValues()));
+// }
+
//-----------------------------------------------------------------------
public boolean isAllowNullKey() {
return false;
}
+
public boolean isAllowNullValue() {
return false;
}
- public Map makeConfirmedMap() {
- return new TreeMap();
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public abstract SortedBidiMap<K, V> makeObject();
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public SortedBidiMap<K, V> makeFullMap() {
+ return (SortedBidiMap<K, V>) super.makeFullMap();
+ }
+
+ public SortedMap<K, V> makeConfirmedMap() {
+ return new TreeMap<K, V>();
}
//-----------------------------------------------------------------------
//-----------------------------------------------------------------------
public void testBidiHeadMapContains() {
// extra test as other tests get complex
- SortedBidiMap sm = (SortedBidiMap) makeFullMap();
- Iterator it = sm.keySet().iterator();
- Object first = it.next();
- Object toKey = it.next();
- Object second = it.next();
- Object firstValue = sm.get(first);
- Object secondValue = sm.get(second);
-
- SortedMap head = sm.headMap(toKey);
+ SortedBidiMap<K, V> sm = makeFullMap();
+ Iterator<K> it = sm.keySet().iterator();
+ K first = it.next();
+ K toKey = it.next();
+ K second = it.next();
+ V firstValue = sm.get(first);
+ V secondValue = sm.get(second);
+
+ SortedMap<K, V> head = sm.headMap(toKey);
assertEquals(1, head.size());
assertEquals(true, sm.containsKey(first));
assertEquals(true, head.containsKey(first));
@@ -112,44 +127,44 @@
assertEquals(true, sm.containsValue(secondValue));
assertEquals(false, head.containsValue(secondValue));
}
-
+
//-----------------------------------------------------------------------
public void testBidiClearByHeadMap() {
if (isRemoveSupported() == false) return;
-
+
// extra test as other tests get complex
- SortedBidiMap sm = (SortedBidiMap) makeFullMap();
- Iterator it = sm.keySet().iterator();
- Object first = it.next();
- Object second = it.next();
- Object toKey = it.next();
-
- Object firstValue = sm.get(first);
- Object secondValue = sm.get(second);
- Object toKeyValue = sm.get(toKey);
-
- SortedMap sub = sm.headMap(toKey);
+ SortedBidiMap<K, V> sm = makeFullMap();
+ Iterator<K> it = sm.keySet().iterator();
+ K first = it.next();
+ K second = it.next();
+ K toKey = it.next();
+
+ V firstValue = sm.get(first);
+ V secondValue = sm.get(second);
+ V toKeyValue = sm.get(toKey);
+
+ SortedMap<K, V> sub = sm.headMap(toKey);
int size = sm.size();
assertEquals(2, sub.size());
sub.clear();
assertEquals(0, sub.size());
assertEquals(size - 2, sm.size());
assertEquals(size - 2, sm.inverseBidiMap().size());
-
+
assertEquals(false, sm.containsKey(first));
assertEquals(false, sm.containsValue(firstValue));
assertEquals(false, sm.inverseBidiMap().containsKey(firstValue));
assertEquals(false, sm.inverseBidiMap().containsValue(first));
assertEquals(false, sub.containsKey(first));
assertEquals(false, sub.containsValue(firstValue));
-
+
assertEquals(false, sm.containsKey(second));
assertEquals(false, sm.containsValue(secondValue));
assertEquals(false, sm.inverseBidiMap().containsKey(secondValue));
assertEquals(false, sm.inverseBidiMap().containsValue(second));
assertEquals(false, sub.containsKey(second));
assertEquals(false, sub.containsValue(secondValue));
-
+
assertEquals(true, sm.containsKey(toKey));
assertEquals(true, sm.containsValue(toKeyValue));
assertEquals(true, sm.inverseBidiMap().containsKey(toKeyValue));
@@ -161,23 +176,23 @@
//-----------------------------------------------------------------------
public void testBidiRemoveByHeadMap() {
if (isRemoveSupported() == false) return;
-
+
// extra test as other tests get complex
- SortedBidiMap sm = (SortedBidiMap) makeFullMap();
- Iterator it = sm.keySet().iterator();
- Object first = it.next();
- Object second = it.next();
- Object toKey = it.next();
-
+ SortedBidiMap<K, V> sm = makeFullMap();
+ Iterator<K> it = sm.keySet().iterator();
+ K first = it.next();
+ K second = it.next();
+ K toKey = it.next();
+
int size = sm.size();
- SortedMap sub = sm.headMap(toKey);
+ SortedMap<K, V> sub = sm.headMap(toKey);
assertEquals(2, sub.size());
assertEquals(true, sm.containsKey(first));
assertEquals(true, sub.containsKey(first));
assertEquals(true, sm.containsKey(second));
assertEquals(true, sub.containsKey(second));
-
- Object firstValue = sub.remove(first);
+
+ V firstValue = sub.remove(first);
assertEquals(1, sub.size());
assertEquals(size - 1, sm.size());
assertEquals(size - 1, sm.inverseBidiMap().size());
@@ -187,8 +202,8 @@
assertEquals(false, sm.inverseBidiMap().containsValue(first));
assertEquals(false, sub.containsKey(first));
assertEquals(false, sub.containsValue(firstValue));
-
- Object secondValue = sub.remove(second);
+
+ V secondValue = sub.remove(second);
assertEquals(0, sub.size());
assertEquals(size - 2, sm.size());
assertEquals(size - 2, sm.inverseBidiMap().size());
@@ -203,30 +218,30 @@
//-----------------------------------------------------------------------
public void testBidiRemoveByHeadMapEntrySet() {
if (isRemoveSupported() == false) return;
-
+
// extra test as other tests get complex
- SortedBidiMap sm = (SortedBidiMap) makeFullMap();
- Iterator it = sm.keySet().iterator();
- Object first = it.next();
- Object second = it.next();
- Object toKey = it.next();
-
+ SortedBidiMap<K, V> sm = makeFullMap();
+ Iterator<K> it = sm.keySet().iterator();
+ K first = it.next();
+ K second = it.next();
+ K toKey = it.next();
+
int size = sm.size();
- SortedMap sub = sm.headMap(toKey);
- Set set = sub.entrySet();
+ SortedMap<K, V> sub = sm.headMap(toKey);
+ Set<Map.Entry<K, V>> set = sub.entrySet();
assertEquals(2, sub.size());
assertEquals(2, set.size());
-
- Iterator it2 = set.iterator();
- Map.Entry firstEntry = cloneMapEntry((Map.Entry) it2.next());
- Map.Entry secondEntry = cloneMapEntry((Map.Entry) it2.next());
+
+ Iterator<Map.Entry<K, V>> it2 = set.iterator();
+ Map.Entry<K, V> firstEntry = cloneMapEntry(it2.next());
+ Map.Entry<K, V> secondEntry = cloneMapEntry(it2.next());
assertEquals(true, sm.containsKey(first));
assertEquals(true, sub.containsKey(first));
assertEquals(true, set.contains(firstEntry));
assertEquals(true, sm.containsKey(second));
assertEquals(true, sub.containsKey(second));
assertEquals(true, set.contains(secondEntry));
-
+
set.remove(firstEntry);
assertEquals(1, sub.size());
assertEquals(size - 1, sm.size());
@@ -238,7 +253,7 @@
assertEquals(false, sub.containsKey(firstEntry.getKey()));
assertEquals(false, sub.containsValue(firstEntry.getValue()));
assertEquals(false, set.contains(firstEntry));
-
+
set.remove(secondEntry);
assertEquals(0, sub.size());
assertEquals(size - 2, sm.size());
@@ -256,16 +271,16 @@
//-----------------------------------------------------------------------
public void testBidiTailMapContains() {
// extra test as other tests get complex
- SortedBidiMap sm = (SortedBidiMap) makeFullMap();
- Iterator it = sm.keySet().iterator();
- Object first = it.next();
- Object fromKey = it.next();
- Object second = it.next();
- Object firstValue = sm.get(first);
- Object fromKeyValue = sm.get(fromKey);
- Object secondValue = sm.get(second);
-
- SortedMap sub = sm.tailMap(fromKey);
+ SortedBidiMap<K, V> sm = makeFullMap();
+ Iterator<K> it = sm.keySet().iterator();
+ K first = it.next();
+ K fromKey = it.next();
+ K second = it.next();
+ V firstValue = sm.get(first);
+ V fromKeyValue = sm.get(fromKey);
+ V secondValue = sm.get(second);
+
+ SortedMap<K, V> sub = sm.tailMap(fromKey);
assertEquals(sm.size() - 1, sub.size());
assertEquals(true, sm.containsKey(first));
assertEquals(false, sub.containsKey(first));
@@ -284,42 +299,42 @@
//-----------------------------------------------------------------------
public void testBidiClearByTailMap() {
if (isRemoveSupported() == false) return;
-
+
// extra test as other tests get complex
- SortedBidiMap sm = (SortedBidiMap) makeFullMap();
- Iterator it = sm.keySet().iterator();
+ SortedBidiMap<K, V> sm = makeFullMap();
+ Iterator<K> it = sm.keySet().iterator();
it.next();
it.next();
- Object first = it.next();
- Object fromKey = it.next();
- Object second = it.next();
-
- Object firstValue = sm.get(first);
- Object fromKeyValue = sm.get(fromKey);
- Object secondValue = sm.get(second);
-
- SortedMap sub = sm.tailMap(fromKey);
+ K first = it.next();
+ K fromKey = it.next();
+ K second = it.next();
+
+ V firstValue = sm.get(first);
+ V fromKeyValue = sm.get(fromKey);
+ V secondValue = sm.get(second);
+
+ SortedMap<K, V> sub = sm.tailMap(fromKey);
int size = sm.size();
assertEquals(size - 3, sub.size());
sub.clear();
assertEquals(0, sub.size());
assertEquals(3, sm.size());
assertEquals(3, sm.inverseBidiMap().size());
-
+
assertEquals(true, sm.containsKey(first));
assertEquals(true, sm.containsValue(firstValue));
assertEquals(true, sm.inverseBidiMap().containsKey(firstValue));
assertEquals(true, sm.inverseBidiMap().containsValue(first));
assertEquals(false, sub.containsKey(first));
assertEquals(false, sub.containsValue(firstValue));
-
+
assertEquals(false, sm.containsKey(fromKey));
assertEquals(false, sm.containsValue(fromKeyValue));
assertEquals(false, sm.inverseBidiMap().containsKey(fromKeyValue));
assertEquals(false, sm.inverseBidiMap().containsValue(fromKey));
assertEquals(false, sub.containsKey(fromKey));
assertEquals(false, sub.containsValue(fromKeyValue));
-
+
assertEquals(false, sm.containsKey(second));
assertEquals(false, sm.containsValue(secondValue));
assertEquals(false, sm.inverseBidiMap().containsKey(secondValue));
@@ -328,26 +343,26 @@
assertEquals(false, sub.containsValue(secondValue));
}
- //-----------------------------------------------------------------------
+ //-----------------------------------------------------------------------
public void testBidiRemoveByTailMap() {
if (isRemoveSupported() == false) return;
-
+
// extra test as other tests get complex
- SortedBidiMap sm = (SortedBidiMap) makeFullMap();
- Iterator it = sm.keySet().iterator();
+ SortedBidiMap<K, V> sm = makeFullMap();
+ Iterator<K> it = sm.keySet().iterator();
it.next();
it.next();
- Object fromKey = it.next();
- Object first = it.next();
- Object second = it.next();
-
+ K fromKey = it.next();
+ K first = it.next();
+ K second = it.next();
+
int size = sm.size();
- SortedMap sub = sm.tailMap(fromKey);
+ SortedMap<K, V> sub = sm.tailMap(fromKey);
assertEquals(true, sm.containsKey(first));
assertEquals(true, sub.containsKey(first));
assertEquals(true, sm.containsKey(second));
assertEquals(true, sub.containsKey(second));
-
+
Object firstValue = sub.remove(first);
assertEquals(size - 3, sub.size());
assertEquals(size - 1, sm.size());
@@ -358,7 +373,7 @@
assertEquals(false, sm.inverseBidiMap().containsValue(first));
assertEquals(false, sub.containsKey(first));
assertEquals(false, sub.containsValue(firstValue));
-
+
Object secondValue = sub.remove(second);
assertEquals(size - 4, sub.size());
assertEquals(size - 2, sm.size());
@@ -374,30 +389,30 @@
//-----------------------------------------------------------------------
public void testBidiRemoveByTailMapEntrySet() {
if (isRemoveSupported() == false) return;
-
+
// extra test as other tests get complex
- SortedBidiMap sm = (SortedBidiMap) makeFullMap();
- Iterator it = sm.keySet().iterator();
+ SortedBidiMap<K, V> sm = makeFullMap();
+ Iterator<K> it = sm.keySet().iterator();
it.next();
it.next();
- Object fromKey = it.next();
- Object first = it.next();
- Object second = it.next();
-
+ K fromKey = it.next();
+ K first = it.next();
+ K second = it.next();
+
int size = sm.size();
- SortedMap sub = sm.tailMap(fromKey);
- Set set = sub.entrySet();
- Iterator it2 = set.iterator();
- Object fromEntry = it2.next();
- Map.Entry firstEntry = cloneMapEntry((Map.Entry) it2.next());
- Map.Entry secondEntry = cloneMapEntry((Map.Entry) it2.next());
+ SortedMap<K, V> sub = sm.tailMap(fromKey);
+ Set<Map.Entry<K, V>> set = sub.entrySet();
+ Iterator<Map.Entry<K, V>> it2 = set.iterator();
+ it2.next();
+ Map.Entry<K, V> firstEntry = cloneMapEntry(it2.next());
+ Map.Entry<K, V> secondEntry = cloneMapEntry(it2.next());
assertEquals(true, sm.containsKey(first));
assertEquals(true, sub.containsKey(first));
assertEquals(true, set.contains(firstEntry));
assertEquals(true, sm.containsKey(second));
assertEquals(true, sub.containsKey(second));
assertEquals(true, set.contains(secondEntry));
-
+
set.remove(firstEntry);
assertEquals(size - 3, sub.size());
assertEquals(size - 1, sm.size());
@@ -409,7 +424,7 @@
assertEquals(false, sub.containsKey(firstEntry.getKey()));
assertEquals(false, sub.containsValue(firstEntry.getValue()));
assertEquals(false, set.contains(firstEntry));
-
+
set.remove(secondEntry);
assertEquals(size - 4, sub.size());
assertEquals(size - 2, sm.size());
@@ -427,19 +442,19 @@
//-----------------------------------------------------------------------
public void testBidiSubMapContains() {
// extra test as other tests get complex
- SortedBidiMap sm = (SortedBidiMap) makeFullMap();
- Iterator it = sm.keySet().iterator();
- Object first = it.next();
- Object fromKey = it.next();
- Object second = it.next();
- Object toKey = it.next();
- Object third = it.next();
- Object firstValue = sm.get(first);
- Object fromKeyValue = sm.get(fromKey);
- Object secondValue = sm.get(second);
- Object thirdValue = sm.get(third);
-
- SortedMap sub = sm.subMap(fromKey, toKey);
+ SortedBidiMap<K, V> sm = makeFullMap();
+ Iterator<K> it = sm.keySet().iterator();
+ K first = it.next();
+ K fromKey = it.next();
+ K second = it.next();
+ K toKey = it.next();
+ K third = it.next();
+ V firstValue = sm.get(first);
+ V fromKeyValue = sm.get(fromKey);
+ V secondValue = sm.get(second);
+ V thirdValue = sm.get(third);
+
+ SortedMap<K, V> sub = sm.subMap(fromKey, toKey);
assertEquals(2, sub.size());
assertEquals(true, sm.containsKey(first));
assertEquals(false, sub.containsKey(first));
@@ -462,50 +477,50 @@
//-----------------------------------------------------------------------
public void testBidiClearBySubMap() {
if (isRemoveSupported() == false) return;
-
+
// extra test as other tests get complex
- SortedBidiMap sm = (SortedBidiMap) makeFullMap();
- Iterator it = sm.keySet().iterator();
+ SortedBidiMap<K, V> sm = makeFullMap();
+ Iterator<K> it = sm.keySet().iterator();
it.next();
- Object fromKey = it.next();
- Object first = it.next();
- Object second = it.next();
- Object toKey = it.next();
-
- Object fromKeyValue = sm.get(fromKey);
- Object firstValue = sm.get(first);
- Object secondValue = sm.get(second);
- Object toKeyValue = sm.get(toKey);
-
- SortedMap sub = sm.subMap(fromKey, toKey);
+ K fromKey = it.next();
+ K first = it.next();
+ K second = it.next();
+ K toKey = it.next();
+
+ V fromKeyValue = sm.get(fromKey);
+ V firstValue = sm.get(first);
+ V secondValue = sm.get(second);
+ V toKeyValue = sm.get(toKey);
+
+ SortedMap<K, V> sub = sm.subMap(fromKey, toKey);
int size = sm.size();
assertEquals(3, sub.size());
sub.clear();
assertEquals(0, sub.size());
assertEquals(size - 3, sm.size());
assertEquals(size - 3, sm.inverseBidiMap().size());
-
+
assertEquals(false, sm.containsKey(fromKey));
assertEquals(false, sm.containsValue(fromKeyValue));
assertEquals(false, sm.inverseBidiMap().containsKey(fromKeyValue));
assertEquals(false, sm.inverseBidiMap().containsValue(fromKey));
assertEquals(false, sub.containsKey(fromKey));
assertEquals(false, sub.containsValue(fromKeyValue));
-
+
assertEquals(false, sm.containsKey(first));
assertEquals(false, sm.containsValue(firstValue));
assertEquals(false, sm.inverseBidiMap().containsKey(firstValue));
assertEquals(false, sm.inverseBidiMap().containsValue(first));
assertEquals(false, sub.containsKey(first));
assertEquals(false, sub.containsValue(firstValue));
-
+
assertEquals(false, sm.containsKey(second));
assertEquals(false, sm.containsValue(secondValue));
assertEquals(false, sm.inverseBidiMap().containsKey(secondValue));
assertEquals(false, sm.inverseBidiMap().containsValue(second));
assertEquals(false, sub.containsKey(second));
assertEquals(false, sub.containsValue(secondValue));
-
+
assertEquals(true, sm.containsKey(toKey));
assertEquals(true, sm.containsValue(toKeyValue));
assertEquals(true, sm.inverseBidiMap().containsKey(toKeyValue));
@@ -517,25 +532,25 @@
//-----------------------------------------------------------------------
public void testBidiRemoveBySubMap() {
if (isRemoveSupported() == false) return;
-
+
// extra test as other tests get complex
- SortedBidiMap sm = (SortedBidiMap) makeFullMap();
- Iterator it = sm.keySet().iterator();
+ SortedBidiMap<K, V> sm = makeFullMap();
+ Iterator<K> it = sm.keySet().iterator();
it.next();
it.next();
- Object fromKey = it.next();
- Object first = it.next();
- Object second = it.next();
- Object toKey = it.next();
-
+ K fromKey = it.next();
+ K first = it.next();
+ K second = it.next();
+ K toKey = it.next();
+
int size = sm.size();
- SortedMap sub = sm.subMap(fromKey, toKey);
+ SortedMap<K, V> sub = sm.subMap(fromKey, toKey);
assertEquals(true, sm.containsKey(first));
assertEquals(true, sub.containsKey(first));
assertEquals(true, sm.containsKey(second));
assertEquals(true, sub.containsKey(second));
-
- Object firstValue = sub.remove(first);
+
+ V firstValue = sub.remove(first);
assertEquals(2, sub.size());
assertEquals(size - 1, sm.size());
assertEquals(size - 1, sm.inverseBidiMap().size());
@@ -545,8 +560,8 @@
assertEquals(false, sm.inverseBidiMap().containsValue(first));
assertEquals(false, sub.containsKey(first));
assertEquals(false, sub.containsValue(firstValue));
-
- Object secondValue = sub.remove(second);
+
+ V secondValue = sub.remove(second);
assertEquals(1, sub.size());
assertEquals(size - 2, sm.size());
assertEquals(size - 2, sm.inverseBidiMap().size());
@@ -561,32 +576,32 @@
//-----------------------------------------------------------------------
public void testBidiRemoveBySubMapEntrySet() {
if (isRemoveSupported() == false) return;
-
+
// extra test as other tests get complex
- SortedBidiMap sm = (SortedBidiMap) makeFullMap();
- Iterator it = sm.keySet().iterator();
+ SortedBidiMap<K, V> sm = makeFullMap();
+ Iterator<K> it = sm.keySet().iterator();
it.next();
it.next();
- Object fromKey = it.next();
- Object first = it.next();
- Object second = it.next();
- Object toKey = it.next();
-
+ K fromKey = it.next();
+ K first = it.next();
+ K second = it.next();
+ K toKey = it.next();
+
int size = sm.size();
- SortedMap sub = sm.subMap(fromKey, toKey);
- Set set = sub.entrySet();
+ SortedMap<K, V> sub = sm.subMap(fromKey, toKey);
+ Set<Map.Entry<K, V>> set = sub.entrySet();
assertEquals(3, set.size());
- Iterator it2 = set.iterator();
- Object fromEntry = it2.next();
- Map.Entry firstEntry = cloneMapEntry((Map.Entry) it2.next());
- Map.Entry secondEntry = cloneMapEntry((Map.Entry) it2.next());
+ Iterator<Map.Entry<K, V>> it2 = set.iterator();
+ it2.next();
+ Map.Entry<K, V> firstEntry = cloneMapEntry(it2.next());
+ Map.Entry<K, V> secondEntry = cloneMapEntry(it2.next());
assertEquals(true, sm.containsKey(first));
assertEquals(true, sub.containsKey(first));
assertEquals(true, set.contains(firstEntry));
assertEquals(true, sm.containsKey(second));
assertEquals(true, sub.containsKey(second));
assertEquals(true, set.contains(secondEntry));
-
+
set.remove(firstEntry);
assertEquals(2, sub.size());
assertEquals(size - 1, sm.size());
@@ -598,7 +613,7 @@
assertEquals(false, sub.containsKey(firstEntry.getKey()));
assertEquals(false, sub.containsValue(firstEntry.getValue()));
assertEquals(false, set.contains(firstEntry));
-
+
set.remove(secondEntry);
assertEquals(1, sub.size());
assertEquals(size - 2, sm.size());
@@ -612,17 +627,17 @@
assertEquals(false, set.contains(secondEntry));
}
- //-----------------------------------------------------------------------
+ //-----------------------------------------------------------------------
public BulkTest bulkTestHeadMap() {
- return new AbstractTestSortedMap.TestHeadMap(this);
+ return new AbstractTestSortedMap.TestHeadMap<K, V>(this);
}
public BulkTest bulkTestTailMap() {
- return new AbstractTestSortedMap.TestTailMap(this);
+ return new AbstractTestSortedMap.TestTailMap<K, V>(this);
}
public BulkTest bulkTestSubMap() {
- return new AbstractTestSortedMap.TestSubMap(this);
+ return new AbstractTestSortedMap.TestSubMap<K, V>(this);
}
}
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/TestAbstractOrderedBidiMapDecorator.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/TestAbstractOrderedBidiMapDecorator.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/TestAbstractOrderedBidiMapDecorator.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/TestAbstractOrderedBidiMapDecorator.java Tue Sep 15 05:29:56 2009
@@ -16,13 +16,12 @@
*/
package org.apache.commons.collections.bidimap;
-import java.util.Map;
+import java.util.SortedMap;
import java.util.TreeMap;
import junit.framework.Test;
import junit.framework.TestSuite;
-import org.apache.commons.collections.BidiMap;
import org.apache.commons.collections.OrderedBidiMap;
/**
@@ -30,8 +29,8 @@
*
* @version $Revision$ $Date$
*/
-public class TestAbstractOrderedBidiMapDecorator
- extends AbstractTestOrderedBidiMap {
+public class TestAbstractOrderedBidiMapDecorator<K, V>
+ extends AbstractTestOrderedBidiMap<K, V> {
public TestAbstractOrderedBidiMapDecorator(String testName) {
super(testName);
@@ -41,12 +40,16 @@
return new TestSuite(TestAbstractOrderedBidiMapDecorator.class);
}
- public BidiMap makeEmptyBidiMap() {
- return new TestOrderedBidiMap();
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public OrderedBidiMap<K, V> makeObject() {
+ return new TestOrderedBidiMap<K, V>();
}
- public Map makeConfirmedMap() {
- return new TreeMap();
+ public SortedMap<K, V> makeConfirmedMap() {
+ return new TreeMap<K, V>();
}
public boolean isAllowNullKey() {
@@ -64,21 +67,21 @@
/**
* Simple class to actually test.
*/
- private static final class TestOrderedBidiMap extends AbstractOrderedBidiMapDecorator {
-
- private TestOrderedBidiMap inverse = null;
+ private static final class TestOrderedBidiMap<K, V> extends AbstractOrderedBidiMapDecorator<K, V> {
+
+ private TestOrderedBidiMap<V, K> inverse = null;
public TestOrderedBidiMap() {
- super(new DualTreeBidiMap());
+ super(new DualTreeBidiMap<K, V>());
}
-
- public TestOrderedBidiMap(OrderedBidiMap map) {
+
+ public TestOrderedBidiMap(OrderedBidiMap<K, V> map) {
super(map);
}
-
- public BidiMap inverseBidiMap() {
+
+ public OrderedBidiMap<V, K> inverseBidiMap() {
if (inverse == null) {
- inverse = new TestOrderedBidiMap((OrderedBidiMap) getBidiMap().inverseBidiMap());
+ inverse = new TestOrderedBidiMap<V, K>(decorated().inverseBidiMap());
inverse.inverse = this;
}
return inverse;
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/TestDualHashBidiMap.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/TestDualHashBidiMap.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/TestDualHashBidiMap.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/TestDualHashBidiMap.java Tue Sep 15 05:29:56 2009
@@ -19,7 +19,6 @@
import junit.framework.Test;
import junit.textui.TestRunner;
-import org.apache.commons.collections.BidiMap;
import org.apache.commons.collections.BulkTest;
/**
@@ -30,7 +29,7 @@
* @author Matthew Hawthorne
* @author Stephen Colebourne
*/
-public class TestDualHashBidiMap extends AbstractTestBidiMap {
+public class TestDualHashBidiMap<K, V> extends AbstractTestBidiMap<K, V> {
public static void main(String[] args) {
TestRunner.run(suite());
@@ -44,15 +43,19 @@
super(testName);
}
- public BidiMap makeEmptyBidiMap() {
- return new DualHashBidiMap();
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public DualHashBidiMap<K, V> makeObject() {
+ return new DualHashBidiMap<K, V>();
}
/**
* Override to prevent infinite recursion of tests.
*/
public String[] ignoredTests() {
- return new String[] {"TestDualHashBidiMap.bulkTestInverseMap.bulkTestInverseMap"};
+ return new String[] { "TestDualHashBidiMap.bulkTestInverseMap.bulkTestInverseMap" };
}
// public void testCreate() throws Exception {
Modified: commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/TestDualTreeBidiMap.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/TestDualTreeBidiMap.java?rev=814997&r1=814996&r2=814997&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/TestDualTreeBidiMap.java (original)
+++ commons/proper/collections/trunk/src/test/org/apache/commons/collections/bidimap/TestDualTreeBidiMap.java Tue Sep 15 05:29:56 2009
@@ -19,7 +19,6 @@
import junit.framework.Test;
import junit.textui.TestRunner;
-import org.apache.commons.collections.BidiMap;
import org.apache.commons.collections.BulkTest;
/**
@@ -30,7 +29,7 @@
* @author Matthew Hawthorne
* @author Stephen Colebourne
*/
-public class TestDualTreeBidiMap extends AbstractTestSortedBidiMap {
+public class TestDualTreeBidiMap<K extends Comparable<K>, V extends Comparable<V>> extends AbstractTestSortedBidiMap<K, V> {
public static void main(String[] args) {
TestRunner.run(suite());
@@ -44,8 +43,12 @@
super(testName);
}
- public BidiMap makeEmptyBidiMap() {
- return new DualTreeBidiMap();
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public DualTreeBidiMap<K, V> makeObject() {
+ return new DualTreeBidiMap<K, V>();
}
/**