You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by tn...@apache.org on 2012/07/31 22:23:30 UTC

svn commit: r1367748 - in /commons/proper/collections/trunk/src: main/java/org/apache/commons/collections/comparators/ test/java/org/apache/commons/collections/comparators/ test/resources/data/test/

Author: tn
Date: Tue Jul 31 20:23:29 2012
New Revision: 1367748

URL: http://svn.apache.org/viewvc?rev=1367748&view=rev
Log:
[COLLECTIONS-272] Added support for serialization to FixedOrderComparator and TransformingComparator, added missing equals/hashCode, renamed tests.

Added:
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractComparatorTest.java
      - copied, changed from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractTestComparator.java
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractNullComparatorTest.java
      - copied, changed from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractTestNullComparator.java
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/BooleanComparatorTest.java
      - copied, changed from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestBooleanComparator.java
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ComparableComparatorTest.java
      - copied, changed from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestComparableComparator.java
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ComparatorChainTest.java
      - copied, changed from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestComparatorChain.java
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/FixedOrderComparatorTest.java
      - copied, changed from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestFixedOrderComparator.java
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ReverseComparatorTest.java
      - copied, changed from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestReverseComparator.java
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TransformingComparatorTest.java   (with props)
    commons/proper/collections/trunk/src/test/resources/data/test/FixedOrderComparator.version4.obj   (with props)
    commons/proper/collections/trunk/src/test/resources/data/test/TransformingComparator.version4.obj   (with props)
Removed:
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractTestComparator.java
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractTestNullComparator.java
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestBooleanComparator.java
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestComparableComparator.java
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestComparatorChain.java
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestFixedOrderComparator.java
    commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestReverseComparator.java
Modified:
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/comparators/FixedOrderComparator.java
    commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/comparators/TransformingComparator.java
    commons/proper/collections/trunk/src/test/resources/data/test/ComparatorChain.version2.obj

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/comparators/FixedOrderComparator.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/comparators/FixedOrderComparator.java?rev=1367748&r1=1367747&r2=1367748&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/comparators/FixedOrderComparator.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/comparators/FixedOrderComparator.java Tue Jul 31 20:23:29 2012
@@ -16,6 +16,7 @@
  */
 package org.apache.commons.collections.comparators;
 
+import java.io.Serializable;
 import java.util.Comparator;
 import java.util.HashMap;
 import java.util.List;
@@ -39,11 +40,16 @@ import java.util.Map;
  * Instances of FixedOrderComparator are not synchronized.  The class is not
  * thread-safe at construction time, but it is thread-safe to perform
  * multiple comparisons  after all the setup operations are complete.
+ * <p>
+ * This class is Serializable from Commons Collections 4.0.
  *
  * @since 3.0
  * @version $Id$
  */
-public class FixedOrderComparator<T> implements Comparator<T> {
+public class FixedOrderComparator<T> implements Comparator<T>, Serializable {
+
+    /** Serialization version from Collections 4.0. */
+    private static final long serialVersionUID = 82794675842863201L;
 
     /**
      * Unknown object behavior enum.
@@ -240,4 +246,53 @@ public class FixedOrderComparator<T> imp
         return position1.compareTo(position2);
     }
 
+    //-----------------------------------------------------------------------
+    /**
+     * Implement a hash code for this comparator that is consistent with
+     * {@link #equals(Object) equals}.
+     *
+     * @return a hash code for this comparator.
+     */
+    @Override
+    public int hashCode() {
+        int total = 17;
+        total = total*37 + (map == null ? 0 : map.hashCode());
+        total = total*37 + (unknownObjectBehavior == null ? 0 : unknownObjectBehavior.hashCode());
+        total = total*37 + counter;
+        total = total*37 + (isLocked ? 0 : 1);
+        return total;
+    }
+
+    /**
+     * Returns <code>true</code> iff <i>that</i> Object is 
+     * is a {@link Comparator} whose ordering is known to be 
+     * equivalent to mine.
+     * <p>
+     * This implementation returns <code>true</code>
+     * iff <code><i>that</i></code> is a {@link FixedOrderComparator} 
+     * whose attributes are equal to mine.
+     * 
+     * @param object  the object to compare to
+     * @return true if equal
+     */
+    @Override
+    public boolean equals(Object object) {
+        if (this == object) {
+            return true;
+        }
+        if (null == object) {
+            return false;
+        }
+        if (object.getClass().equals(this.getClass())) {
+            FixedOrderComparator<?> comp = (FixedOrderComparator<?>) object;
+            return (null == map ? null == comp.map : map.equals(comp.map) &&
+                    null == unknownObjectBehavior ? null == comp.unknownObjectBehavior :
+                        unknownObjectBehavior == comp.unknownObjectBehavior &&
+                    counter == comp.counter &&
+                    isLocked == comp.isLocked &&
+                    unknownObjectBehavior == comp.unknownObjectBehavior);
+        }
+        return false;
+    }
+
 }

Modified: commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/comparators/TransformingComparator.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/comparators/TransformingComparator.java?rev=1367748&r1=1367747&r2=1367748&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/comparators/TransformingComparator.java (original)
+++ commons/proper/collections/trunk/src/main/java/org/apache/commons/collections/comparators/TransformingComparator.java Tue Jul 31 20:23:29 2012
@@ -16,6 +16,7 @@
  */
 package org.apache.commons.collections.comparators;
 
+import java.io.Serializable;
 import java.util.Comparator;
 
 import org.apache.commons.collections.ComparatorUtils;
@@ -25,6 +26,8 @@ import org.apache.commons.collections.Tr
  * Decorates another Comparator with transformation behavior. That is, the
  * return value from the transform operation will be passed to the decorated
  * {@link Comparator#compare(Object,Object) compare} method.
+ * <p>
+ * This class is Serializable from Commons Collections 4.0.
  *
  * @since 2.1
  * @version $Id$
@@ -32,8 +35,11 @@ import org.apache.commons.collections.Tr
  * @see org.apache.commons.collections.Transformer
  * @see org.apache.commons.collections.comparators.ComparableComparator
  */
-public class TransformingComparator<E> implements Comparator<E> {
+public class TransformingComparator<E> implements Comparator<E>, Serializable {
     
+    /** Serialization version from Collections 4.0. */
+    private static final long serialVersionUID = 3456940356043606220L;
+
     /** The decorated comparator. */
     protected final Comparator<E> decorated;
     /** The transformer being used. */    
@@ -76,5 +82,48 @@ public class TransformingComparator<E> i
         return this.decorated.compare(value1, value2);
     }
 
+    //-----------------------------------------------------------------------
+    /**
+     * Implement a hash code for this comparator that is consistent with
+     * {@link #equals(Object) equals}.
+     *
+     * @return a hash code for this comparator.
+     */
+    @Override
+    public int hashCode() {
+        int total = 17;
+        total = total*37 + (decorated == null ? 0 : decorated.hashCode());
+        total = total*37 + (transformer == null ? 0 : transformer.hashCode());
+        return total;
+    }
+
+    /**
+     * Returns <code>true</code> iff <i>that</i> Object is 
+     * is a {@link Comparator} whose ordering is known to be 
+     * equivalent to mine.
+     * <p>
+     * This implementation returns <code>true</code>
+     * iff <code><i>that</i></code> is a {@link TransformingComparator} 
+     * whose attributes are equal to mine.
+     * 
+     * @param object  the object to compare to
+     * @return true if equal
+     */
+    @Override
+    public boolean equals(Object object) {
+        if (this == object) {
+            return true;
+        }
+        if (null == object) {
+            return false;
+        }
+        if (object.getClass().equals(this.getClass())) {
+            TransformingComparator<?> comp = (TransformingComparator<?>) object;
+            return (null == decorated ? null == comp.decorated : decorated.equals(comp.decorated) &&
+                    null == transformer ? null == comp.transformer : transformer.equals(comp.transformer));
+        }
+        return false;
+    }
+
 }
 

Copied: commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractComparatorTest.java (from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractTestComparator.java)
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractComparatorTest.java?p2=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractComparatorTest.java&p1=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractTestComparator.java&r1=1361641&r2=1367748&rev=1367748&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractTestComparator.java (original)
+++ commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractComparatorTest.java Tue Jul 31 20:23:29 2012
@@ -25,23 +25,22 @@ import java.util.LinkedList;
 import java.util.List;
 
 import org.apache.commons.collections.AbstractTestObject;
+import org.junit.Test;
 
 /**
  * Abstract test class for testing the Comparator interface.
  * <p>
  * Concrete subclasses declare the comparator to be tested.
  * They also declare certain aspects of the tests.
- *
- * @author Stephen Colebourne
  */
-public abstract class AbstractTestComparator<T> extends AbstractTestObject {
+public abstract class AbstractComparatorTest<T> extends AbstractTestObject {
 
     /**
      * JUnit constructor.
      * 
      * @param testName  the test class name
      */
-    public AbstractTestComparator(String testName) {
+    public AbstractComparatorTest(String testName) {
         super(testName);
     }
 
@@ -114,6 +113,7 @@ public abstract class AbstractTestCompar
     /**
      * Test sorting an empty list
      */
+    @Test
     public void testEmptyListSort() {
         List<T> list = new LinkedList<T>();
         sortObjects(list, makeObject());
@@ -126,6 +126,7 @@ public abstract class AbstractTestCompar
     /**
      * Test sorting a reversed list.
      */
+    @Test
     public void testReverseListSort() {
         Comparator<T> comparator = makeObject();
 
@@ -142,6 +143,7 @@ public abstract class AbstractTestCompar
     /**
      * Test sorting a random list.
      */
+    @Test
     public void testRandomListSort() {
         Comparator<T> comparator = makeObject();
 
@@ -166,6 +168,7 @@ public abstract class AbstractTestCompar
     /**
      * Nearly all Comparators should be Serializable.
      */
+    @Test
     public void testComparatorIsSerializable() {
         Comparator<T> comparator = makeObject();
         assertTrue("This comparator should be Serializable.",
@@ -189,6 +192,7 @@ public abstract class AbstractTestCompar
      * against the canonical version in SVN.
      */
     @SuppressWarnings("unchecked")
+    @Test
     public void testComparatorCompatibility() throws IOException, ClassNotFoundException {
         if (!skipSerializedCanonicalTests()) {
             Comparator<T> comparator = null;
@@ -201,7 +205,7 @@ public abstract class AbstractTestCompar
                 boolean autoCreateSerialized = false;
     
                 if (autoCreateSerialized) {
-                      comparator = makeObject();
+                    comparator = makeObject();
                     String fileName = getCanonicalComparatorName(comparator);
                     writeExternalFormToDisk((Serializable) comparator, fileName);
                     fail("Serialized form could not be found.  A serialized version "

Copied: commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractNullComparatorTest.java (from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractTestNullComparator.java)
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractNullComparatorTest.java?p2=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractNullComparatorTest.java&p1=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractTestNullComparator.java&r1=1361641&r2=1367748&rev=1367748&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractTestNullComparator.java (original)
+++ commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/AbstractNullComparatorTest.java Tue Jul 31 20:23:29 2012
@@ -26,18 +26,16 @@ import junit.framework.TestSuite;
 /**
  * Test the NullComparator.
  *
- * @version $Revision$
- *
- * @author Michael A. Smith
+ * @version $Id$
  */
-public abstract class AbstractTestNullComparator extends AbstractTestComparator<Integer> {
+public abstract class AbstractNullComparatorTest extends AbstractComparatorTest<Integer> {
 
-    public AbstractTestNullComparator(String testName) {
+    public AbstractNullComparatorTest(String testName) {
         super(testName);
     }
 
     public static Test suite() {
-        TestSuite suite = new TestSuite(AbstractTestNullComparator.class.getName());
+        TestSuite suite = new TestSuite(AbstractNullComparatorTest.class.getName());
         suite.addTest(new TestSuite(TestNullComparator1.class));
         suite.addTest(new TestSuite(TestNullComparator2.class));
         return suite;
@@ -46,7 +44,7 @@ public abstract class AbstractTestNullCo
     /**
      *  Test the NullComparator with nulls high, using comparable comparator
      **/
-    public static class TestNullComparator1 extends AbstractTestNullComparator {
+    public static class TestNullComparator1 extends AbstractNullComparatorTest {
 
         public TestNullComparator1(String testName) {
             super(testName);
@@ -78,7 +76,7 @@ public abstract class AbstractTestNullCo
     /**
      *  Test the NullComparator with nulls low using the comparable comparator
      **/
-    public static class TestNullComparator2 extends AbstractTestNullComparator {
+    public static class TestNullComparator2 extends AbstractNullComparatorTest {
 
         public TestNullComparator2(String testName) {
             super(testName);

Copied: commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/BooleanComparatorTest.java (from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestBooleanComparator.java)
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/BooleanComparatorTest.java?p2=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/BooleanComparatorTest.java&p1=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestBooleanComparator.java&r1=1361641&r2=1367748&rev=1367748&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestBooleanComparator.java (original)
+++ commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/BooleanComparatorTest.java Tue Jul 31 20:23:29 2012
@@ -20,20 +20,20 @@ import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.List;
 
+import org.junit.Test;
+
 /**
  * Tests for {@link BooleanComparator}.
  *
- * @version $Revision$
- *
- * @author Rodney Waldhoff
+ * @version $Id$
  */
 @SuppressWarnings("boxing")
-public class TestBooleanComparator extends AbstractTestComparator<Boolean> {
+public class BooleanComparatorTest extends AbstractComparatorTest<Boolean> {
 
     // conventional
     // ------------------------------------------------------------------------
 
-    public TestBooleanComparator(String testName) {
+    public BooleanComparatorTest(String testName) {
         super(testName);
     }
 
@@ -65,12 +65,15 @@ public class TestBooleanComparator exten
     // tests
     // ------------------------------------------------------------------------
 
+    @Test
     public void testConstructors() {
         allTests(false,new BooleanComparator());
         allTests(false,new BooleanComparator(false));
         allTests(true,new BooleanComparator(true));
     }
 
+    @Test
+
     public void testStaticFactoryMethods() {
         allTests(false,BooleanComparator.getFalseFirstComparator());
         allTests(false,BooleanComparator.booleanComparator(false));
@@ -78,6 +81,7 @@ public class TestBooleanComparator exten
         allTests(true,BooleanComparator.booleanComparator(true));
     }
 
+    @Test
     public void testEqualsCompatibleInstance() {
         assertEquals(new BooleanComparator(),new BooleanComparator(false));
         assertEquals(new BooleanComparator(false),new BooleanComparator(false));

Copied: commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ComparableComparatorTest.java (from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestComparableComparator.java)
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ComparableComparatorTest.java?p2=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ComparableComparatorTest.java&p1=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestComparableComparator.java&r1=1361641&r2=1367748&rev=1367748&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestComparableComparator.java (original)
+++ commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ComparableComparatorTest.java Tue Jul 31 20:23:29 2012
@@ -23,13 +23,13 @@ import java.util.List;
 /**
  * Tests for ComparableComparator.
  *
- * @version $Revision$
+ * @version $Id$
  *
  */
 @SuppressWarnings("boxing")
-public class TestComparableComparator extends AbstractTestComparator<Integer> {
+public class ComparableComparatorTest extends AbstractComparatorTest<Integer> {
 
-    public TestComparableComparator(String testName) {
+    public ComparableComparatorTest(String testName) {
         super(testName);
     }
 

Copied: commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ComparatorChainTest.java (from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestComparatorChain.java)
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ComparatorChainTest.java?p2=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ComparatorChainTest.java&p1=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestComparatorChain.java&r1=1361641&r2=1367748&rev=1367748&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestComparatorChain.java (original)
+++ commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ComparatorChainTest.java Tue Jul 31 20:23:29 2012
@@ -21,16 +21,16 @@ import java.util.Comparator;
 import java.util.LinkedList;
 import java.util.List;
 
+import org.junit.Test;
+
 /**
  * Tests for ComparatorChain.
  *
- * @version $Revision$
- *
- * @author Unknown
+ * @version $Id$
  */
-public class TestComparatorChain extends AbstractTestComparator<TestComparatorChain.PseudoRow> {
+public class ComparatorChainTest extends AbstractComparatorTest<ComparatorChainTest.PseudoRow> {
 
-    public TestComparatorChain(String testName) {
+    public ComparatorChainTest(String testName) {
         super(testName);
     }
 
@@ -42,6 +42,7 @@ public class TestComparatorChain extends
         return chain;
     }
 
+    @Test
     public void testNoopComparatorChain() {
         ComparatorChain<Integer> chain = new ComparatorChain<Integer>();
         Integer i1 = new Integer(4);
@@ -52,6 +53,7 @@ public class TestComparatorChain extends
         assertTrue("Comparison returns the right order", chain.compare(i1, i2) == correctValue);
     }
 
+    @Test
     public void testBadNoopComparatorChain() {
         ComparatorChain<Integer> chain = new ComparatorChain<Integer>();
         Integer i1 = new Integer(4);
@@ -63,6 +65,7 @@ public class TestComparatorChain extends
         }
     }
 
+    @Test
     public void testListComparatorChain() {
         List<Comparator<Integer>> list = new LinkedList<Comparator<Integer>>();
         list.add(new ComparableComparator<Integer>());
@@ -74,6 +77,7 @@ public class TestComparatorChain extends
         assertTrue("Comparison returns the right order", chain.compare(i1, i2) == correctValue);
     }
 
+    @Test
     public void testBadListComparatorChain() {
         List<Comparator<Integer>> list = new LinkedList<Comparator<Integer>>();
         ComparatorChain<Integer> chain = new ComparatorChain<Integer>(list);
@@ -86,6 +90,7 @@ public class TestComparatorChain extends
         }
     }
 
+    @Test
     public void testComparatorChainOnMinvaluedCompatator() {
         // -1 * Integer.MIN_VALUE is less than 0,
         // test that ComparatorChain handles this edge case correctly

Copied: commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/FixedOrderComparatorTest.java (from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestFixedOrderComparator.java)
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/FixedOrderComparatorTest.java?p2=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/FixedOrderComparatorTest.java&p1=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestFixedOrderComparator.java&r1=1361641&r2=1367748&rev=1367748&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestFixedOrderComparator.java (original)
+++ commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/FixedOrderComparatorTest.java Tue Jul 31 20:23:29 2012
@@ -22,17 +22,14 @@ import java.util.LinkedList;
 import java.util.List;
 import java.util.Random;
 
-import junit.framework.TestCase;
+import org.junit.Test;
 
 /**
  * Test class for FixedOrderComparator.
  *
- * @version $Revision$
- *
- * @author David Leppik
- * @author Stephen Colebourne
+ * @version $Id$
  */
-public class TestFixedOrderComparator extends TestCase {
+public class FixedOrderComparatorTest extends AbstractComparatorTest<String> {
 
     /**
      * Top cities of the world, by population including metro areas.
@@ -54,7 +51,7 @@ public class TestFixedOrderComparator ex
     // Initialization and busywork
     //
 
-    public TestFixedOrderComparator(String name) {
+    public FixedOrderComparatorTest(String name) {
         super(name);
     }
 
@@ -62,7 +59,21 @@ public class TestFixedOrderComparator ex
     // Set up and tear down
     //
 
+    @Override
+    public Comparator<String> makeObject() {
+        FixedOrderComparator<String> comparator = new FixedOrderComparator<String>(topCities);
+        return comparator;
+    }
+
+    @Override
+    public List<String> getComparableObjectsOrdered() {
+        return Arrays.asList(topCities);
+    }
 
+    @Override
+    public String getCompatibilityVersion() {
+        return "4";
+    }
 
     //
     // The tests
@@ -71,6 +82,7 @@ public class TestFixedOrderComparator ex
     /**
      * Tests that the constructor plus add method compares items properly.
      */
+    @Test
     public void testConstructorPlusAdd() {
         FixedOrderComparator<String> comparator = new FixedOrderComparator<String>();
         for (int i = 0; i < topCities.length; i++) {
@@ -83,6 +95,7 @@ public class TestFixedOrderComparator ex
     /**
      * Tests that the array constructor compares items properly.
      */
+    @Test
     public void testArrayConstructor() {
         String[] keys = topCities.clone();
         String[] topCitiesForTest = topCities.clone();
@@ -96,6 +109,7 @@ public class TestFixedOrderComparator ex
     /**
      * Tests the list constructor.
      */
+    @Test
     public void testListConstructor() {
         String[] keys = topCities.clone();
         List<String> topCitiesForTest = new LinkedList<String>(Arrays.asList(topCities));
@@ -109,6 +123,7 @@ public class TestFixedOrderComparator ex
     /**
      * Tests addAsEqual method.
      */
+    @Test
     public void testAddAsEqual() {
         FixedOrderComparator<String> comparator = new FixedOrderComparator<String>(topCities);
         comparator.addAsEqual("New York", "Minneapolis");
@@ -120,6 +135,7 @@ public class TestFixedOrderComparator ex
     /**
      * Tests whether or not updates are disabled after a comparison is made.
      */
+    @Test
     public void testLock() {
         FixedOrderComparator<String> comparator = new FixedOrderComparator<String>(topCities);
         assertEquals(false, comparator.isLocked());
@@ -140,6 +156,7 @@ public class TestFixedOrderComparator ex
         }
     }
 
+    @Test
     public void testUnknownObjectBehavior() {
         FixedOrderComparator<String> comparator = new FixedOrderComparator<String>(topCities);
         try {
@@ -186,7 +203,6 @@ public class TestFixedOrderComparator ex
     /** Shuffles the keys and asserts that the comparator sorts them back to
      * their original order.
      */
-    @SuppressWarnings("unused")
     private void assertComparatorYieldsOrder(String[] orderedObjects,
                                              Comparator<String> comparator) {
         String[] keys = orderedObjects.clone();

Copied: commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ReverseComparatorTest.java (from r1361641, commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestReverseComparator.java)
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ReverseComparatorTest.java?p2=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ReverseComparatorTest.java&p1=commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestReverseComparator.java&r1=1361641&r2=1367748&rev=1367748&view=diff
==============================================================================
--- commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TestReverseComparator.java (original)
+++ commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/ReverseComparatorTest.java Tue Jul 31 20:23:29 2012
@@ -25,16 +25,16 @@ import java.util.Comparator;
 import java.util.LinkedList;
 import java.util.List;
 
+import org.junit.Test;
+
 /**
  * Tests for ReverseComparator.
  *
- * @version $Revision$
- *
- * @author Unknown
+ * @version $Id$
  */
-public class TestReverseComparator extends AbstractTestComparator<Integer> {
+public class ReverseComparatorTest extends AbstractComparatorTest<Integer> {
 
-    public TestReverseComparator(String testName) {
+    public ReverseComparatorTest(String testName) {
         super(testName);
     }
 
@@ -71,6 +71,7 @@ public class TestReverseComparator exten
      */
     @Override
     @SuppressWarnings("unchecked")
+    @Test
     public void testSerializeDeserializeThenCompare() throws Exception {
         Comparator comp = new ReverseComparator(new ComparableComparator());
 

Added: commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TransformingComparatorTest.java
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TransformingComparatorTest.java?rev=1367748&view=auto
==============================================================================
--- commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TransformingComparatorTest.java (added)
+++ commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TransformingComparatorTest.java Tue Jul 31 20:23:29 2012
@@ -0,0 +1,72 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.commons.collections.comparators;
+
+import java.util.Comparator;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.apache.commons.collections.TransformerUtils;
+
+/**
+ * Test class for TransformingComparator.
+ *
+ * @version $Id$
+ */
+public class TransformingComparatorTest extends AbstractComparatorTest<Integer> {
+
+    //
+    // Initialization and busywork
+    //
+
+    public TransformingComparatorTest(String name) {
+        super(name);
+    }
+
+    //
+    // Set up and tear down
+    //
+
+    @Override
+    public Comparator<Integer> makeObject() {
+       Comparator<Integer> decorated = new ComparableComparator<Integer>();
+       TransformingComparator<Integer> comparator =
+               new TransformingComparator<Integer>(TransformerUtils.<Integer>nopTransformer(), decorated);
+       return comparator;
+    }
+
+    @Override
+    public List<Integer> getComparableObjectsOrdered() {
+        List<Integer> list = new LinkedList<Integer>();
+        list.add(1);
+        list.add(2);
+        list.add(3);
+        list.add(4);
+        list.add(5);
+        return list;
+    }
+
+    @Override
+    public String getCompatibilityVersion() {
+        return "4";
+    }
+
+    //
+    // The tests
+    //
+
+}

Propchange: commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TransformingComparatorTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TransformingComparatorTest.java
------------------------------------------------------------------------------
    svn:keywords = Id Revision HeadURL

Propchange: commons/proper/collections/trunk/src/test/java/org/apache/commons/collections/comparators/TransformingComparatorTest.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: commons/proper/collections/trunk/src/test/resources/data/test/ComparatorChain.version2.obj
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/resources/data/test/ComparatorChain.version2.obj?rev=1367748&r1=1367747&r2=1367748&view=diff
==============================================================================
Binary files - no diff available.

Added: commons/proper/collections/trunk/src/test/resources/data/test/FixedOrderComparator.version4.obj
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/resources/data/test/FixedOrderComparator.version4.obj?rev=1367748&view=auto
==============================================================================
Binary file - no diff available.

Propchange: commons/proper/collections/trunk/src/test/resources/data/test/FixedOrderComparator.version4.obj
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: commons/proper/collections/trunk/src/test/resources/data/test/TransformingComparator.version4.obj
URL: http://svn.apache.org/viewvc/commons/proper/collections/trunk/src/test/resources/data/test/TransformingComparator.version4.obj?rev=1367748&view=auto
==============================================================================
Binary file - no diff available.

Propchange: commons/proper/collections/trunk/src/test/resources/data/test/TransformingComparator.version4.obj
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream