diff options
author | Brett Chabot <brettchabot@android.com> | 2010-02-19 10:49:27 -0800 |
---|---|---|
committer | Brett Chabot <brettchabot@android.com> | 2010-02-20 17:29:05 -0800 |
commit | e70f61b1160e953e5e4d18d30a463fa9ba821779 (patch) | |
tree | 763d50921749fb256c7e2b656db045ee21277b06 /test-runner/src/junit/runner/Sorter.java | |
parent | fda25347b8aaa860e0fdbc972c0f4411c85f8fa3 (diff) | |
download | frameworks_base-e70f61b1160e953e5e4d18d30a463fa9ba821779.zip frameworks_base-e70f61b1160e953e5e4d18d30a463fa9ba821779.tar.gz frameworks_base-e70f61b1160e953e5e4d18d30a463fa9ba821779.tar.bz2 |
Retry test-runner tests move.
This time change the frameworks makefile so it only includes test-runner/src
in the public API.
Diffstat (limited to 'test-runner/src/junit/runner/Sorter.java')
-rw-r--r-- | test-runner/src/junit/runner/Sorter.java | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/test-runner/src/junit/runner/Sorter.java b/test-runner/src/junit/runner/Sorter.java new file mode 100644 index 0000000..66f551e --- /dev/null +++ b/test-runner/src/junit/runner/Sorter.java @@ -0,0 +1,39 @@ +package junit.runner; + +import java.util.*; + +import junit.runner.*; + +/** + * A custom quick sort with support to customize the swap behaviour. + * NOTICE: We can't use the the sorting support from the JDK 1.2 collection + * classes because of the JDK 1.1.7 compatibility. + * {@hide} - Not needed for 1.0 SDK + */ +public class Sorter { + public static interface Swapper { + public void swap(Vector values, int left, int right); + } + + public static void sortStrings(Vector values , int left, int right, Swapper swapper) { + int oleft= left; + int oright= right; + String mid= (String)values.elementAt((left + right) / 2); + do { + while (((String)(values.elementAt(left))).compareTo(mid) < 0) + left++; + while (mid.compareTo((String)(values.elementAt(right))) < 0) + right--; + if (left <= right) { + swapper.swap(values, left, right); + left++; + right--; + } + } while (left <= right); + + if (oleft < right) + sortStrings(values, oleft, right, swapper); + if (left < oright) + sortStrings(values, left, oright, swapper); + } +} |