Class AbstractTestComparator

  • All Implemented Interfaces:
    java.lang.Cloneable, junit.framework.Test

    public abstract class AbstractTestComparator
    extends AbstractTestObject
    Abstract test class for testing the Comparator interface.

    Concrete subclasses declare the comparator to be tested. They also declare certain aspects of the tests.

    • Constructor Detail

      • AbstractTestComparator

        public AbstractTestComparator​(java.lang.String testName)
        JUnit constructor.
        Parameters:
        testName - the test class name
    • Method Detail

      • makeComparator

        public abstract java.util.Comparator makeComparator()
        Implement this method to return the comparator to test.
        Returns:
        the comparator to test
      • getComparableObjectsOrdered

        public abstract java.util.List getComparableObjectsOrdered()
        Implement this method to return a list of sorted objects.
        Returns:
        sorted objects
      • makeObject

        public java.lang.Object makeObject()
        Implements the abstract superclass method to return the comparator.
        Specified by:
        makeObject in class AbstractTestObject
        Returns:
        a full iterator
      • getCompatibilityVersion

        public java.lang.String getCompatibilityVersion()
        Overrides superclass to set the compatability to version 2 as there were no Comparators in version 1.x.
        Overrides:
        getCompatibilityVersion in class AbstractTestObject
        Returns:
        The version, or null if this object shouldn't be tested for compatibility with previous versions.
      • reverseObjects

        protected void reverseObjects​(java.util.List list)
        Reverse the list.
      • randomizeObjects

        protected void randomizeObjects​(java.util.List list)
        Randomize the list.
      • sortObjects

        protected void sortObjects​(java.util.List list,
                                   java.util.Comparator comparator)
        Sort the list.
      • testEmptyListSort

        public void testEmptyListSort()
        Test sorting an empty list
      • testReverseListSort

        public void testReverseListSort()
        Test sorting a reversed list.
      • testRandomListSort

        public void testRandomListSort()
        Test sorting a random list.
      • testComparatorIsSerializable

        public void testComparatorIsSerializable()
        Nearly all Comparators should be Serializable.
      • getCanonicalComparatorName

        public java.lang.String getCanonicalComparatorName​(java.lang.Object object)
      • testComparatorCompatibility

        public void testComparatorCompatibility()
                                         throws java.io.IOException,
                                                java.lang.ClassNotFoundException
        Compare the current serialized form of the Comparator against the canonical version in CVS.
        Throws:
        java.io.IOException
        java.lang.ClassNotFoundException