diff options
author | Bai Tao <michaelbai@google.com> | 2010-01-21 08:48:30 +0800 |
---|---|---|
committer | Bai Tao <michaelbai@google.com> | 2010-01-23 12:57:21 +0800 |
commit | 4256586663f0d045c69ea818db4893b3365b9915 (patch) | |
tree | e14afc7537bac6b291e025cc6c2b48755adf3a04 /tests | |
parent | 52a014492c10d825ec26b2179bd8369bf78363ef (diff) | |
download | frameworks_base-4256586663f0d045c69ea818db4893b3365b9915.zip frameworks_base-4256586663f0d045c69ea818db4893b3365b9915.tar.gz frameworks_base-4256586663f0d045c69ea818db4893b3365b9915.tar.bz2 |
Modify the interface of HanziToPinyin class to make it generic and add test class
Diffstat (limited to 'tests')
-rw-r--r-- | tests/AndroidTests/src/com/android/unit_tests/internal/util/HanziToPinyinTest.java | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/tests/AndroidTests/src/com/android/unit_tests/internal/util/HanziToPinyinTest.java b/tests/AndroidTests/src/com/android/unit_tests/internal/util/HanziToPinyinTest.java new file mode 100644 index 0000000..8e1ff0b --- /dev/null +++ b/tests/AndroidTests/src/com/android/unit_tests/internal/util/HanziToPinyinTest.java @@ -0,0 +1,70 @@ +/* + * Copyright (C) 2010 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.unit_tests.internal.util; + +import java.text.Collator; +import java.util.ArrayList; +import java.util.Locale; + +import android.test.suitebuilder.annotation.SmallTest; +import android.util.Log; + +import com.android.internal.util.HanziToPinyin; +import com.android.internal.util.HanziToPinyin.Token; + +import junit.framework.TestCase; + +public class HanziToPinyinTest extends TestCase { + private final static String ONE_HANZI = "\u675C"; + private final static String TWO_HANZI = "\u675C\u9D51"; + private final static String ASSIC = "test"; + private final static String ONE_UNKNOWN = "\uFF71"; + private final static String MISC = "test\u675C Test with space\uFF71\uFF71\u675C"; + + @SmallTest + public void testGetToken() throws Exception { + ArrayList<Token> tokens = HanziToPinyin.getInstance().get(ONE_HANZI); + assertEquals(tokens.size(), 1); + assertEquals(tokens.get(0).type, Token.PINYIN); + assertTrue(tokens.get(0).target.equalsIgnoreCase("DU")); + + tokens = HanziToPinyin.getInstance().get(TWO_HANZI); + assertEquals(tokens.size(), 2); + assertEquals(tokens.get(0).type, Token.PINYIN); + assertEquals(tokens.get(1).type, Token.PINYIN); + assertTrue(tokens.get(0).target.equalsIgnoreCase("DU")); + assertTrue(tokens.get(1).target.equalsIgnoreCase("JUAN")); + + tokens = HanziToPinyin.getInstance().get(ASSIC); + assertEquals(tokens.size(), 1); + assertEquals(tokens.get(0).type, Token.LATIN); + + tokens = HanziToPinyin.getInstance().get(ONE_UNKNOWN); + assertEquals(tokens.size(), 1); + assertEquals(tokens.get(0).type, Token.UNKNOWN); + + tokens = HanziToPinyin.getInstance().get(MISC); + assertEquals(tokens.size(), 7); + assertEquals(tokens.get(0).type, Token.LATIN); + assertEquals(tokens.get(1).type, Token.PINYIN); + assertEquals(tokens.get(2).type, Token.LATIN); + assertEquals(tokens.get(3).type, Token.LATIN); + assertEquals(tokens.get(4).type, Token.LATIN); + assertEquals(tokens.get(5).type, Token.UNKNOWN); + assertEquals(tokens.get(6).type, Token.PINYIN); + } +} |