aboutsummaryrefslogtreecommitdiffstats
path: root/tests/src
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2013-04-05 12:07:16 +0900
committerJean Chalard <jchalard@google.com>2013-04-05 12:11:19 +0900
commitc87449497cb54c092cfd46037320fedf1c4504b6 (patch)
tree9c0aaad30f6cf71547b001745f61d455eadd8ef2 /tests/src
parent7d3836d63a2eb4b79c4ad93cdae4f1f61cdb518e (diff)
downloadlatinime-c87449497cb54c092cfd46037320fedf1c4504b6.tar.gz
latinime-c87449497cb54c092cfd46037320fedf1c4504b6.tar.xz
latinime-c87449497cb54c092cfd46037320fedf1c4504b6.zip
Fix bugs and add tests
Change-Id: I6b56b91ace57f4a49584b5dceb71b145859f839e
Diffstat (limited to 'tests/src')
-rw-r--r--tests/src/com/android/inputmethod/latin/StringUtilsTests.java46
1 files changed, 46 insertions, 0 deletions
diff --git a/tests/src/com/android/inputmethod/latin/StringUtilsTests.java b/tests/src/com/android/inputmethod/latin/StringUtilsTests.java
index 923ab2ecc..966919ed3 100644
--- a/tests/src/com/android/inputmethod/latin/StringUtilsTests.java
+++ b/tests/src/com/android/inputmethod/latin/StringUtilsTests.java
@@ -19,6 +19,8 @@ package com.android.inputmethod.latin;
import android.test.AndroidTestCase;
import android.test.suitebuilder.annotation.SmallTest;
+import java.util.Locale;
+
@SmallTest
public class StringUtilsTests extends AndroidTestCase {
public void testContainsInArray() {
@@ -90,4 +92,48 @@ public class StringUtilsTests extends AndroidTestCase {
assertEquals("in 5 elements at position 2,4", "key1,key3,key5",
StringUtils.removeFromCsvIfExists("key", "key1,key,key3,key,key5"));
}
+
+ public void testToTitleCase() {
+ assertEquals("SSaa",
+ StringUtils.toTitleCase("ßaa", Locale.GERMAN));
+ assertEquals("Aßa",
+ StringUtils.toTitleCase("aßa", Locale.GERMAN));
+ assertEquals("Iab",
+ StringUtils.toTitleCase("iab", Locale.ENGLISH));
+ assertEquals("Camelcase",
+ StringUtils.toTitleCase("cAmElCaSe", Locale.ENGLISH));
+ assertEquals("İab",
+ StringUtils.toTitleCase("iab", new Locale("tr")));
+ assertEquals("Aib",
+ StringUtils.toTitleCase("AİB", new Locale("tr")));
+ // For one character, toTitleCase returns the string as is. Not sure what the motivation
+ // is, but that's how it works now.
+ assertEquals("a",
+ StringUtils.toTitleCase("a", Locale.ENGLISH));
+ assertEquals("A",
+ StringUtils.toTitleCase("A", Locale.ENGLISH));
+ }
+
+ public void testGetCapitalizationType() {
+ assertEquals(StringUtils.CAPITALIZE_NONE,
+ StringUtils.getCapitalizationType("capitalize"));
+ assertEquals(StringUtils.CAPITALIZE_NONE,
+ StringUtils.getCapitalizationType("cApITalize"));
+ assertEquals(StringUtils.CAPITALIZE_NONE,
+ StringUtils.getCapitalizationType("capitalizE"));
+ assertEquals(StringUtils.CAPITALIZE_NONE,
+ StringUtils.getCapitalizationType("__c a piu$@tali56ze"));
+ assertEquals(StringUtils.CAPITALIZE_FIRST,
+ StringUtils.getCapitalizationType("A__c a piu$@tali56ze"));
+ assertEquals(StringUtils.CAPITALIZE_FIRST,
+ StringUtils.getCapitalizationType("Capitalize"));
+ assertEquals(StringUtils.CAPITALIZE_FIRST,
+ StringUtils.getCapitalizationType(" Capitalize"));
+ assertEquals(StringUtils.CAPITALIZE_ALL,
+ StringUtils.getCapitalizationType("CAPITALIZE"));
+ assertEquals(StringUtils.CAPITALIZE_ALL,
+ StringUtils.getCapitalizationType(" PI26LIE"));
+ assertEquals(StringUtils.CAPITALIZE_NONE,
+ StringUtils.getCapitalizationType(""));
+ }
}