1 /********************************************************************
3 * Copyright (c) 1997-2003, International Business Machines Corporation and
4 * others. All Rights Reserved.
5 ********************************************************************/
8 * CollationKanaTest is a third level test class. This tests the locale
9 * specific tertiary rules. For example, the term 'A-' (/u3041/u30fc) is
10 * equivalent to 'AA' (/u3041/u3041).
16 #include "unicode/utypes.h"
18 #if !UCONFIG_NO_COLLATION
22 class CollationKanaTest
: public IntlTestCollator
{
24 // If this is too small for the test data, just increase it.
25 // Just don't make it too large, otherwise the executable will get too big
26 enum EToken_Len
{ MAX_TOKEN_LEN
= 16 };
29 virtual ~CollationKanaTest();
30 void runIndexedTest( int32_t index
, UBool exec
, const char* &name
, char* par
= NULL
);
32 // performs test with strength TERIARY
33 void TestTertiary(/* char* par */);
35 /* Testing base letters */
38 /* Testing plain, Daku-ten, Handaku-ten letters */
39 void TestPlainDakutenHandakuten();
41 /* Test Small, Large letters */
42 void TestSmallLarge();
44 /* Test Katakana, Hiragana letters */
45 void TestKatakanaHiragana();
47 /* Test Choo-on kigoo */
48 void TestChooonKigoo();
51 static const UChar testSourceCases
[][MAX_TOKEN_LEN
];
52 static const UChar testTargetCases
[][MAX_TOKEN_LEN
];
53 static const Collator::EComparisonResult results
[];
54 static const UChar testBaseCases
[][MAX_TOKEN_LEN
];
55 static const UChar testPlainDakutenHandakutenCases
[][MAX_TOKEN_LEN
];
56 static const UChar testSmallLargeCases
[][MAX_TOKEN_LEN
];
57 static const UChar testKatakanaHiraganaCases
[][MAX_TOKEN_LEN
];
58 static const UChar testChooonKigooCases
[][MAX_TOKEN_LEN
];
60 Collator
*myCollation
;
63 #endif /* #if !UCONFIG_NO_COLLATION */