diff options
author | Brett Chabot <brettchabot@android.com> | 2011-10-25 13:37:12 -0700 |
---|---|---|
committer | Brett Chabot <brettchabot@android.com> | 2011-10-25 13:37:12 -0700 |
commit | 93e9c3d2399cfa60a6f0ec2f91ea85c438da85e0 (patch) | |
tree | 549d6c6e7d1bed29ddf0bfb6fb58386148734397 | |
parent | 64011e7a0c6eb6945db3730652db792978ebfda0 (diff) | |
download | cts-93e9c3d2399cfa60a6f0ec2f91ea85c438da85e0.tar.gz |
Execute remaining tests in order.
Bug 5513628
Change-Id: I36b85c3ecb5cfaeebdc7538db0bbf917053b4957
-rw-r--r-- | tools/tradefed-host/src/com/android/cts/tradefed/testtype/TestFilter.java | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/tools/tradefed-host/src/com/android/cts/tradefed/testtype/TestFilter.java b/tools/tradefed-host/src/com/android/cts/tradefed/testtype/TestFilter.java index 58eee23c247..053b265e9a7 100644 --- a/tools/tradefed-host/src/com/android/cts/tradefed/testtype/TestFilter.java +++ b/tools/tradefed-host/src/com/android/cts/tradefed/testtype/TestFilter.java @@ -20,7 +20,10 @@ import com.android.ddmlib.testrunner.TestIdentifier; import java.util.ArrayList; import java.util.Collection; +import java.util.Collections; +import java.util.Comparator; import java.util.HashSet; +import java.util.List; import java.util.Set; /** @@ -91,10 +94,10 @@ public class TestFilter { * Filter the list of tests based on rules in this filter * * @param tests the list of tests to filter - * @return a new list of tests that passed the filter + * @return a new sorted list of tests that passed the filter */ public Collection<TestIdentifier> filter(Collection<TestIdentifier > tests) { - Collection<TestIdentifier> filteredTests = new ArrayList<TestIdentifier>(tests.size()); + List<TestIdentifier> filteredTests = new ArrayList<TestIdentifier>(tests.size()); for (TestIdentifier test : tests) { if (mIncludedClass != null && !test.getClassName().equals(mIncludedClass)) { // skip @@ -114,6 +117,7 @@ public class TestFilter { } filteredTests.add(test); } + Collections.sort(filteredTests, new TestIdComparator()); return filteredTests; } @@ -123,4 +127,16 @@ public class TestFilter { public boolean hasExclusion() { return !mExcludedClasses.isEmpty() || !mExcludedTests.isEmpty(); } + + /** + * A {@link Comparator} for {@link TestIdentifier} that compares using + * {@link TestIdentifier#toString()} + */ + private class TestIdComparator implements Comparator<TestIdentifier> { + + @Override + public int compare(TestIdentifier o1, TestIdentifier o2) { + return o1.toString().compareTo(o2.toString()); + } + } } |