Home | History | Annotate | Download | only in intltest
      1 //  2016 and later: Unicode, Inc. and others.
      2 // License & terms of use: http://www.unicode.org/copyright.html
      3 /********************************************************************
      4  * COPYRIGHT:
      5  * Copyright (c) 1997-2003, International Business Machines Corporation and
      6  * others. All Rights Reserved.
      7  ********************************************************************/
      8 
      9 /**
     10  * CollationGermanTest is a third level test class.  This tests the locale
     11  * specific primary, secondary and tertiary rules.  For example, o-umlaut
     12  * is sorted with expanding char e.
     13  */
     14 #ifndef _DECOLL
     15 #define _DECOLL
     16 
     17 #include "unicode/utypes.h"
     18 
     19 #if !UCONFIG_NO_COLLATION
     20 
     21 #include "tscoll.h"
     22 
     23 class CollationGermanTest: public IntlTestCollator {
     24 public:
     25     // If this is too small for the test data, just increase it.
     26     // Just don't make it too large, otherwise the executable will get too big
     27     enum EToken_Len { MAX_TOKEN_LEN = 16 };
     28 
     29     CollationGermanTest();
     30     virtual ~CollationGermanTest();
     31     void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL );
     32 
     33     // perform test with strength PRIMARY
     34     void TestPrimary(/* char* par */);
     35 
     36     // perform test with strength SECONDARY
     37     void TestSecondary(/* char* par */);
     38 
     39     // perform tests with strength TERTIARY
     40     void TestTertiary(/* char* par */);
     41 
     42 private:
     43     static const UChar testSourceCases[][MAX_TOKEN_LEN];
     44     static const UChar testTargetCases[][MAX_TOKEN_LEN];
     45     static const Collator::EComparisonResult results[][2];
     46 
     47     Collator *myCollation;
     48 };
     49 
     50 #endif /* #if !UCONFIG_NO_COLLATION */
     51 
     52 #endif
     53