Home | History | Annotate | Download | only in intltest
      1 /********************************************************************
      2  * COPYRIGHT:
      3  * Copyright (c) 1997-2003, International Business Machines Corporation and
      4  * others. All Rights Reserved.
      5  ********************************************************************/
      6 
      7 /**
      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).
     11  */
     12 
     13 #ifndef _JACOLL
     14 #define _JACOLL
     15 
     16 #include "unicode/utypes.h"
     17 
     18 #if !UCONFIG_NO_COLLATION
     19 
     20 #include "tscoll.h"
     21 
     22 class CollationKanaTest: public IntlTestCollator {
     23 public:
     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 };
     27 
     28     CollationKanaTest();
     29     virtual ~CollationKanaTest();
     30     void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL );
     31 
     32     // performs test with strength TERIARY
     33     void TestTertiary(/* char* par */);
     34 
     35     /* Testing base letters */
     36     void TestBase();
     37 
     38     /* Testing plain, Daku-ten, Handaku-ten letters */
     39     void TestPlainDakutenHandakuten();
     40 
     41     /* Test Small, Large letters */
     42     void TestSmallLarge();
     43 
     44     /* Test Katakana, Hiragana letters */
     45     void TestKatakanaHiragana();
     46 
     47     /* Test Choo-on kigoo */
     48     void TestChooonKigoo();
     49 
     50 private:
     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];
     59 
     60     Collator *myCollation;
     61 };
     62 
     63 #endif /* #if !UCONFIG_NO_COLLATION */
     64 
     65 #endif
     66