summaryrefslogtreecommitdiff
path: root/Build/source/libs/icu-xetex/test/intltest/jamotest.h
blob: f6dbfd7c216427394dc3f8da8ff804b7367f5135 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
/********************************************************************
 * COPYRIGHT: 
 * Copyright (c) 1997-2001, International Business Machines Corporation and
 * others. All Rights Reserved.
 ********************************************************************
************************************************************************
*   Date        Name        Description
*   02/28/2001  aliu        Creation
*   03/01/2001  George      port to HP/UX
************************************************************************/

#ifndef JAMOTEST_H
#define JAMOTEST_H

#include "unicode/utypes.h"

#if !UCONFIG_NO_TRANSLITERATION

#include "unicode/translit.h"
#include "transtst.h"

/**
 * @test
 * @summary Test of Latin-Jamo and Jamo-Latin rules
 */
class JamoTest : public TransliteratorTest {
public:
    JamoTest();
    virtual ~JamoTest();
private:
    void runIndexedTest(int32_t index, UBool exec, const char* &name,
                        char* par=NULL);

    void TestJamo(void);
    
    void TestRealText(void);

    void TestPiecemeal(void);

    //======================================================================
    // Support methods
    //======================================================================

    // Override TransliteratorTest
    virtual void expectAux(const UnicodeString& tag,
                           const UnicodeString& summary, UBool pass,
                           const UnicodeString& expectedResult);

    // Methods to convert Jamo to/from readable short names,
    // e.g. (Gi) <> U+1100
    static const char* JAMO_NAMES_RULES;
    Transliterator *JAMO_NAME;
    Transliterator *NAME_JAMO;
    UnicodeString nameToJamo(const UnicodeString& input);
    UnicodeString jamoToName(const UnicodeString& input);
};

#endif /* #if !UCONFIG_NO_TRANSLITERATION */

#endif