diff options
author | 2014-03-06 19:23:12 +0900 | |
---|---|---|
committer | 2014-03-07 17:29:58 +0900 | |
commit | ff8405cdfbd575657a6f615a1ac4d86eb1b07f74 (patch) | |
tree | 6cc4e2d522ac44a2aa25fe2871d24bc164bb76bf /java/src | |
parent | 937c40ee00f388e762a6ac856210c3ea648d9bb5 (diff) | |
download | latinime-ff8405cdfbd575657a6f615a1ac4d86eb1b07f74.tar.gz latinime-ff8405cdfbd575657a6f615a1ac4d86eb1b07f74.tar.xz latinime-ff8405cdfbd575657a6f615a1ac4d86eb1b07f74.zip |
Add ActualKeyboardBuilder for testing keyboard layouts
Bug: 13017434
Change-Id: I38b1f5c261ea1f3ff312c780d7d9b5fe3fba8aaf
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/latin/utils/StringUtils.java | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/java/src/com/android/inputmethod/latin/utils/StringUtils.java b/java/src/com/android/inputmethod/latin/utils/StringUtils.java index e7932b5a6..b9d526b5f 100644 --- a/java/src/com/android/inputmethod/latin/utils/StringUtils.java +++ b/java/src/com/android/inputmethod/latin/utils/StringUtils.java @@ -507,4 +507,44 @@ public final class StringUtils { return codePointCount(casedText) == 1 ? casedText.codePointAt(0) : CODE_UNSPECIFIED; } + + @UsedForTesting + public static class Stringizer<E> { + public String stringize(final E element) { + return element != null ? element.toString() : "null"; + } + + @UsedForTesting + public final String join(final E[] array) { + return joinStringArray(toStringArray(array), null /* delimiter */); + } + + @UsedForTesting + public final String join(final E[] array, final String delimiter) { + return joinStringArray(toStringArray(array), delimiter); + } + + protected String[] toStringArray(final E[] array) { + final String[] stringArray = new String[array.length]; + for (int index = 0; index < array.length; index++) { + stringArray[index] = stringize(array[index]); + } + return stringArray; + } + + protected String joinStringArray(final String[] stringArray, final String delimiter) { + if (stringArray == null) { + return "null"; + } + if (delimiter == null) { + return Arrays.toString(stringArray); + } + final StringBuilder sb = new StringBuilder(); + for (int index = 0; index < stringArray.length; index++) { + sb.append(index == 0 ? "[" : delimiter); + sb.append(stringArray[index]); + } + return sb + "]"; + } + } } |