Package org.junit.internal
Class MethodSorter
- java.lang.Object
- org.junit.internal.MethodSorter
public class MethodSorter extends Object
Field Summary
Fields Modifier and Type Field Description static Comparator<Method>
DEFAULT
DEFAULT sort orderstatic Comparator<Method>
NAME_ASCENDING
Method name ascending lexicographic sort order, withMethod.toString()
as a tiebreaker
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static Method[]
getDeclaredMethods(Class<?> clazz)
Gets declared methods of a class in a predictable order, unless @FixMethodOrder(MethodSorters.JVM) is specified.
Field Detail
DEFAULT
public static final Comparator<Method> DEFAULT
DEFAULT sort order
NAME_ASCENDING
public static final Comparator<Method> NAME_ASCENDING
Method name ascending lexicographic sort order, withMethod.toString()
as a tiebreaker
Method Detail
getDeclaredMethods
public static Method[] getDeclaredMethods(Class<?> clazz)
Gets declared methods of a class in a predictable order, unless @FixMethodOrder(MethodSorters.JVM) is specified. Using the JVM order is unwise since the Java platform does not specify any particular order, and in fact JDK 7 returns a more or less random order; well-written test code would not assume any order, but some does, and a predictable failure is better than a random failure on certain platforms. By default, uses an unspecified but deterministic order.- Parameters:
clazz
- a class- Returns:
- same as
Class.getDeclaredMethods()
but sorted - See Also:
- JDK (non-)bug #7023180