aboutsummaryrefslogtreecommitdiffstats
path: root/tests/src/com/android/inputmethod/latin/StringUtilsTests.java
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2013-05-10 17:44:39 +0900
committerTadashi G. Takaoka <takaoka@google.com>2013-05-10 18:44:04 +0900
commit6d3d2ae0647792c60728b916e25321e93f6f971f (patch)
treee12c15c1835ade6ee9f4e40dade4e62fa4f98a38 /tests/src/com/android/inputmethod/latin/StringUtilsTests.java
parent5ffa5bf3ba7d169912d163790e461ab8d5aca30a (diff)
downloadlatinime-6d3d2ae0647792c60728b916e25321e93f6f971f.tar.gz
latinime-6d3d2ae0647792c60728b916e25321e93f6f971f.tar.xz
latinime-6d3d2ae0647792c60728b916e25321e93f6f971f.zip
Refactor StringUtils.findPrefixedString to findValueOfKey
Bug: 8556975 Change-Id: I275c99db8a0d10594a5a8c0c27ebc1a87495c307
Diffstat (limited to 'tests/src/com/android/inputmethod/latin/StringUtilsTests.java')
-rw-r--r--tests/src/com/android/inputmethod/latin/StringUtilsTests.java59
1 files changed, 59 insertions, 0 deletions
diff --git a/tests/src/com/android/inputmethod/latin/StringUtilsTests.java b/tests/src/com/android/inputmethod/latin/StringUtilsTests.java
index 1e3cc8ad4..b6a17a3a3 100644
--- a/tests/src/com/android/inputmethod/latin/StringUtilsTests.java
+++ b/tests/src/com/android/inputmethod/latin/StringUtilsTests.java
@@ -237,4 +237,63 @@ public class StringUtilsTests extends AndroidTestCase {
// code for now True is acceptable.
assertTrue(StringUtils.lastPartLooksLikeURL(".abc/def"));
}
+
+ public void testFindValueOfKey() {
+ final String nullKey = null;
+ final String emptyKey = "";
+
+ final String[] nullArray = null;
+ assertNull(StringUtils.findValueOfKey("anyKey", nullArray));
+ assertNull(StringUtils.findValueOfKey(emptyKey, nullArray));
+ assertNull(StringUtils.findValueOfKey(nullKey, nullArray));
+
+ final String[] emptyArray = {};
+ assertNull(StringUtils.findValueOfKey("anyKey", emptyArray));
+ assertNull(StringUtils.findValueOfKey(emptyKey, emptyArray));
+ assertNull(StringUtils.findValueOfKey(nullKey, emptyArray));
+
+ final String[] array = {
+ "DEFAULT,defaultValue",
+ "HARDWARE=grouper,0.3",
+ "HARDWARE=mako,0.4",
+ "HARDWARE=manta,0.2"
+ };
+ assertEquals(StringUtils.findValueOfKey("HARDWARE=grouper", array), "0.3");
+ assertEquals(StringUtils.findValueOfKey("HARDWARE=mako", array), "0.4");
+ assertEquals(StringUtils.findValueOfKey("HARDWARE=manta", array), "0.2");
+ assertEquals(StringUtils.findValueOfKey("DEFAULT", array), "defaultValue");
+
+ assertNull(StringUtils.findValueOfKey("hardware=grouper", array));
+ assertNull(StringUtils.findValueOfKey("HARDWARE=MAKO", array));
+ assertNull(StringUtils.findValueOfKey("HARDWARE=mantaray", array));
+ assertNull(StringUtils.findValueOfKey(emptyKey, array));
+ assertNull(StringUtils.findValueOfKey(nullKey, array));
+
+ final String[] containsNullKey = {
+ "DEFAULT,defaultValue",
+ ",emptyValue"
+ };
+ assertEquals(StringUtils.findValueOfKey(emptyKey, containsNullKey), "emptyValue");
+
+ final String[] containsMultipleSameKeys = {
+ "key1,value1",
+ "key2,value2",
+ "key3,value3",
+ "key2,value4"
+ };
+ assertEquals(StringUtils.findValueOfKey("key2", containsMultipleSameKeys), "value2");
+
+ final String[] containNoCommaElement = {
+ "key1,value1",
+ "key2-and-value2",
+ "key3,value3"
+ };
+ assertEquals(StringUtils.findValueOfKey("key1", containNoCommaElement), "value1");
+ try {
+ final String valueOfKey3 = StringUtils.findValueOfKey("key3", containNoCommaElement);
+ fail("finding valueOfKey3=" + valueOfKey3 + " must fail");
+ } catch (final RuntimeException e) {
+ assertEquals(e.getMessage(), "Element has no comma: key2-and-value2");
+ }
+ }
}