| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You 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 org.apache.lucene.analysis.ja.util; |
| |
| import java.util.HashMap; |
| import java.util.Map; |
| import org.apache.lucene.util.LuceneTestCase; |
| |
| public class TestToStringUtil extends LuceneTestCase { |
| public void testPOS() { |
| assertEquals("noun-suffix-verbal", ToStringUtil.getPOSTranslation("名詞-接尾-サ変接続")); |
| } |
| |
| public void testHepburn() { |
| assertEquals("majan", ToStringUtil.getRomanization("マージャン")); |
| assertEquals("uroncha", ToStringUtil.getRomanization("ウーロンチャ")); |
| assertEquals("chahan", ToStringUtil.getRomanization("チャーハン")); |
| assertEquals("chashu", ToStringUtil.getRomanization("チャーシュー")); |
| assertEquals("shumai", ToStringUtil.getRomanization("シューマイ")); |
| } |
| |
| // see http://en.wikipedia.org/wiki/Hepburn_romanization, |
| // but this isnt even thorough or really probably what we want! |
| public void testHepburnTable() { |
| Map<String, String> table = |
| new HashMap<String, String>() { |
| { |
| put("ア", "a"); |
| put("イ", "i"); |
| put("ウ", "u"); |
| put("エ", "e"); |
| put("オ", "o"); |
| put("カ", "ka"); |
| put("キ", "ki"); |
| put("ク", "ku"); |
| put("ケ", "ke"); |
| put("コ", "ko"); |
| put("サ", "sa"); |
| put("シ", "shi"); |
| put("ス", "su"); |
| put("セ", "se"); |
| put("ソ", "so"); |
| put("タ", "ta"); |
| put("チ", "chi"); |
| put("ツ", "tsu"); |
| put("テ", "te"); |
| put("ト", "to"); |
| put("ナ", "na"); |
| put("ニ", "ni"); |
| put("ヌ", "nu"); |
| put("ネ", "ne"); |
| put("ノ", "no"); |
| put("ハ", "ha"); |
| put("ヒ", "hi"); |
| put("フ", "fu"); |
| put("ヘ", "he"); |
| put("ホ", "ho"); |
| put("マ", "ma"); |
| put("ミ", "mi"); |
| put("ム", "mu"); |
| put("メ", "me"); |
| put("モ", "mo"); |
| put("ヤ", "ya"); |
| put("ユ", "yu"); |
| put("ヨ", "yo"); |
| put("ラ", "ra"); |
| put("リ", "ri"); |
| put("ル", "ru"); |
| put("レ", "re"); |
| put("ロ", "ro"); |
| put("ワ", "wa"); |
| put("ヰ", "i"); |
| put("ヱ", "e"); |
| put("ヲ", "o"); |
| put("ン", "n"); |
| put("ガ", "ga"); |
| put("ギ", "gi"); |
| put("グ", "gu"); |
| put("ゲ", "ge"); |
| put("ゴ", "go"); |
| put("ザ", "za"); |
| put("ジ", "ji"); |
| put("ズ", "zu"); |
| put("ゼ", "ze"); |
| put("ゾ", "zo"); |
| put("ダ", "da"); |
| put("ヂ", "ji"); |
| put("ヅ", "zu"); |
| put("デ", "de"); |
| put("ド", "do"); |
| put("バ", "ba"); |
| put("ビ", "bi"); |
| put("ブ", "bu"); |
| put("ベ", "be"); |
| put("ボ", "bo"); |
| put("パ", "pa"); |
| put("ピ", "pi"); |
| put("プ", "pu"); |
| put("ペ", "pe"); |
| put("ポ", "po"); |
| |
| put("キャ", "kya"); |
| put("キュ", "kyu"); |
| put("キョ", "kyo"); |
| put("シャ", "sha"); |
| put("シュ", "shu"); |
| put("ショ", "sho"); |
| put("チャ", "cha"); |
| put("チュ", "chu"); |
| put("チョ", "cho"); |
| put("ニャ", "nya"); |
| put("ニュ", "nyu"); |
| put("ニョ", "nyo"); |
| put("ヒャ", "hya"); |
| put("ヒュ", "hyu"); |
| put("ヒョ", "hyo"); |
| put("ミャ", "mya"); |
| put("ミュ", "myu"); |
| put("ミョ", "myo"); |
| put("リャ", "rya"); |
| put("リュ", "ryu"); |
| put("リョ", "ryo"); |
| put("ギャ", "gya"); |
| put("ギュ", "gyu"); |
| put("ギョ", "gyo"); |
| put("ジャ", "ja"); |
| put("ジュ", "ju"); |
| put("ジョ", "jo"); |
| put("ヂャ", "ja"); |
| put("ヂュ", "ju"); |
| put("ヂョ", "jo"); |
| put("ビャ", "bya"); |
| put("ビュ", "byu"); |
| put("ビョ", "byo"); |
| put("ピャ", "pya"); |
| put("ピュ", "pyu"); |
| put("ピョ", "pyo"); |
| |
| put("イィ", "yi"); |
| put("イェ", "ye"); |
| put("ウァ", "wa"); |
| put("ウィ", "wi"); |
| put("ウゥ", "wu"); |
| put("ウェ", "we"); |
| put("ウォ", "wo"); |
| put("ウュ", "wyu"); |
| // TODO: really should be vu |
| put("ヴァ", "va"); |
| put("ヴィ", "vi"); |
| put("ヴ", "v"); |
| put("ヴェ", "ve"); |
| put("ヴォ", "vo"); |
| put("ヴャ", "vya"); |
| put("ヴュ", "vyu"); |
| put("ヴィェ", "vye"); |
| put("ヴョ", "vyo"); |
| put("キェ", "kye"); |
| put("ギェ", "gye"); |
| put("クァ", "kwa"); |
| put("クィ", "kwi"); |
| put("クェ", "kwe"); |
| put("クォ", "kwo"); |
| put("クヮ", "kwa"); |
| put("グァ", "gwa"); |
| put("グィ", "gwi"); |
| put("グェ", "gwe"); |
| put("グォ", "gwo"); |
| put("グヮ", "gwa"); |
| put("シェ", "she"); |
| put("ジェ", "je"); |
| put("スィ", "si"); |
| put("ズィ", "zi"); |
| put("チェ", "che"); |
| put("ツァ", "tsa"); |
| put("ツィ", "tsi"); |
| put("ツェ", "tse"); |
| put("ツォ", "tso"); |
| put("ツュ", "tsyu"); |
| put("ティ", "ti"); |
| put("トゥ", "tu"); |
| put("テュ", "tyu"); |
| put("ディ", "di"); |
| put("ドゥ", "du"); |
| put("デュ", "dyu"); |
| put("ニェ", "nye"); |
| put("ヒェ", "hye"); |
| put("ビェ", "bye"); |
| put("ピェ", "pye"); |
| put("ファ", "fa"); |
| put("フィ", "fi"); |
| put("フェ", "fe"); |
| put("フォ", "fo"); |
| put("フャ", "fya"); |
| put("フュ", "fyu"); |
| put("フィェ", "fye"); |
| put("フョ", "fyo"); |
| put("ホゥ", "hu"); |
| put("ミェ", "mye"); |
| put("リェ", "rye"); |
| put("ラ゜", "la"); |
| put("リ゜", "li"); |
| put("ル゜", "lu"); |
| put("レ゜", "le"); |
| put("ロ゜", "lo"); |
| put("ヷ", "va"); |
| put("ヸ", "vi"); |
| put("ヹ", "ve"); |
| put("ヺ", "vo"); |
| } |
| }; |
| |
| for (String s : table.keySet()) { |
| assertEquals(s, table.get(s), ToStringUtil.getRomanization(s)); |
| } |
| } |
| } |