diff options
author | 2013-04-05 12:07:16 +0900 | |
---|---|---|
committer | 2013-04-05 12:11:19 +0900 | |
commit | c87449497cb54c092cfd46037320fedf1c4504b6 (patch) | |
tree | 9c0aaad30f6cf71547b001745f61d455eadd8ef2 /tests/src | |
parent | 7d3836d63a2eb4b79c4ad93cdae4f1f61cdb518e (diff) | |
download | latinime-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.java | 46 |
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("")); + } } |