下面列出了怎么用org.junit.runner.manipulation.Sorter的API类实例代码及写法,或者点击链接到github查看源代码。
@Override
public void sort(Sorter sorter) {
if (SystemProperties.TEST_CODE_EXECUTING_IN_NEW_JVM.evaluate()) {
QUICK_PERF_SPRING_RUNNER_FOR_SPECIFIC_JVM.sort(sorter);
} else if (quickPerfFeaturesAreDisabled){
springRunner.sort(sorter);
} else {
springRunnerWithQuickPerfFeatures.sort(sorter);
}
}
@Override
public void sort(Sorter sorter) {
if (SystemProperties.TEST_CODE_EXECUTING_IN_NEW_JVM.evaluate()) {
QUICK_PERF_SPRING_RUNNER_FOR_SPECIFIC_JVM.sort(sorter);
} else if (quickPerfFeaturesAreDisabled){
springRunner.sort(sorter);
} else {
springRunnerWithQuickPerfFeatures.sort(sorter);
}
}
@Override
public void sort(Sorter sorter) {
if (SystemProperties.TEST_CODE_EXECUTING_IN_NEW_JVM.evaluate()) {
QUICK_PERF_SPRING_RUNNER_FOR_SPECIFIC_JVM.sort(sorter);
} else if (quickPerfFeaturesAreDisabled){
springRunner.sort(sorter);
} else {
springRunnerWithQuickPerfFeatures.sort(sorter);
}
}
/**
* Creates a new instance of {@link SorterUtil}.
*/
private SorterUtil() {
final String propertySorter = System.getProperty(PROPERTY_SORTER, EMPTY);
if (SORTER_ALPHANUMERIC.equalsIgnoreCase(propertySorter)) {
sorter = new Sorter(new Comparator<Description>() {
public int compare(final Description o1, final Description o2) {
return o1.getDisplayName().compareTo(o2.getDisplayName());
}
});
} else {
sorter = Sorter.NULL;
}
}
/**
* Creates a new instance of {@link SorterUtil}.
*/
private SorterUtil() {
final String propertySorter = System.getProperty(PROPERTY_SORTER, EMPTY);
if (SORTER_ALPHANUMERIC.equalsIgnoreCase(propertySorter)) {
sorter = new Sorter(new Comparator<Description>() {
public int compare(final Description o1, final Description o2) {
return o1.getDisplayName().compareTo(o2.getDisplayName());
}
});
} else {
sorter = Sorter.NULL;
}
}
@Override
public void sort(Sorter sorter) {
if (getTest() instanceof Sortable) {
Sortable adapter = (Sortable) getTest();
adapter.sort(sorter);
}
}
public void sort(Sorter sorter) {
synchronized (childrenLock) {
for (FrameworkMethod each : getFilteredChildren()) {
sorter.apply(each);
}
List<FrameworkMethod> sortedChildren = new ArrayList<FrameworkMethod>(getFilteredChildren());
Collections.sort(sortedChildren, comparator(sorter));
filteredChildren = Collections.unmodifiableCollection(sortedChildren);
}
}
private Comparator<? super FrameworkMethod> comparator(final Sorter sorter) {
return new Comparator<FrameworkMethod>() {
public int compare(FrameworkMethod o1, FrameworkMethod o2) {
return sorter.compare(describeChild(o1), describeChild(o2));
}
};
}
public void sort(Sorter sorter) {
synchronized (childrenLock) {
for (Runner each : getFilteredChildren()) {
sorter.apply(each);
}
List<Runner> sortedChildren = new ArrayList<Runner>(getFilteredChildren());
Collections.sort(sortedChildren, comparator(sorter));
filteredChildren = Collections.unmodifiableCollection(sortedChildren);
}
}
private Comparator<? super Runner> comparator(final Sorter sorter) {
return new Comparator<Runner>() {
public int compare(Runner o1, Runner o2) {
return sorter.compare(describeChild(o1), describeChild(o2));
}
};
}
public void sort(Sorter sorter) {
fSorter = sorter;
for (FrameworkMethod each : getOriginalFilteredChildren()) {
sortChild(each);
}
Collections.sort(getOriginalFilteredChildren(), comparator());
}
/**
* Sorts the tests methods using the given sorter. The resulting order may not be totally
* conform to the sorter specification, since this method will ensure that dependencies
* are still sorted before dependant tests.
*
* @param sorter the sorter to use for sorting tests.
*/
@Override
public void sort(final Sorter sorter) {
final FrameworkMethod[] children = getFilteredChildren();
for (final FrameworkMethod method : children) {
sorter.apply(method);
}
Arrays.sort(children, (FrameworkMethod o1, FrameworkMethod o2) -> sorter.compare(describeChild(o1), describeChild(o2)));
sortDependantTestsLast(children);
filteredChildren = children;
}
@Override
public void sort(Sorter sorter) {
super.sort(sorter);
}
@Override
public void sort(Sorter sorter) {
super.sort(sorter);
}
@Override
public void sort(Sorter sorter) {
super.sort(sorter);
}
@Override
public void sort(final Sorter sorter) {
super.sort(sorter);
descriptionOutdated = true;
}
@Override
public void sort(final Sorter sorter) {
super.sort(sorter);
descriptionOutdated = true;
}
@Override
public void sort(final Sorter sorter) {
if (delegate instanceof Sortable) {
((Sortable) delegate).sort(sorter);
}
}
@Override
public void sort(Sorter sorter) {
sorter.apply(runner);
}
@Override
public void sort(Sorter sorter) {
((Sortable) delegate).sort(sorter);
}
@Override
public void sort(Sorter sorter) {
((Sortable) delegate).sort(sorter);
}