1 /********************************************************************
2  * COPYRIGHT:
3  * Copyright (c) 1997-2003, International Business Machines Corporation and
4  * others. All Rights Reserved.
5  ********************************************************************/
6 
7 /**
8  * CollationFinnishTest is a third level test class. This tests the locale
9  * specific primary and tertiary rules. For example, a-ring sorts after z
10  * and w and v are equivalent.
11  */
12 
13 #ifndef _FICOLL
14 #define _FICOLL
15 
16 #include "unicode/utypes.h"
17 
18 #if !UCONFIG_NO_COLLATION
19 
20 #include "tscoll.h"
21 
22 class CollationFinnishTest: 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     CollationFinnishTest();
29     virtual ~CollationFinnishTest();
30     void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL );
31 
32     // perform tests with strength PRIMARY
33     void TestPrimary(/* char* par */);
34 
35     // perform test with strength TERTIARY
36     void TestTertiary(/* char* par */);
37 
38 private:
39     static const UChar testSourceCases[][MAX_TOKEN_LEN];
40     static const UChar testTargetCases[][MAX_TOKEN_LEN];
41     static const Collator::EComparisonResult results[];
42 
43     Collator *myCollation;
44 };
45 
46 #endif /* #if !UCONFIG_NO_COLLATION */
47 
48 #endif
49