1/******************************************************************** 2 * COPYRIGHT: 3 * Copyright (c) 1997-2003, International Business Machines Corporation and 4 * others. All Rights Reserved. 5 ********************************************************************/ 6 7/** 8 * CollationFrenchTest is a third level test class. This tests the locale 9 * specific tertiary rules. For example, the French secondary sorting on 10 * accented characters. 11 */ 12#ifndef _FRCOLL 13#define _FRCOLL 14 15#include "unicode/utypes.h" 16 17#if !UCONFIG_NO_COLLATION 18 19#include "tscoll.h" 20 21class CollationFrenchTest: public IntlTestCollator { 22public: 23 // If this is too small for the test data, just increase it. 24 // Just don't make it too large, otherwise the executable will get too big 25 enum EToken_Len { MAX_TOKEN_LEN = 16 }; 26 27 CollationFrenchTest(); 28 virtual ~CollationFrenchTest(); 29 void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL ); 30 31 // perform tests with strength SECONDARY 32 void TestSecondary(/* char* par */); 33 34 // perform tests with strength TERTIARY 35 void TestTertiary(/* char* par */); 36 37 // perform extra tests 38 void TestExtra(/* char* par */); 39 40private: 41 static const UChar testSourceCases[][MAX_TOKEN_LEN]; 42 static const UChar testTargetCases[][MAX_TOKEN_LEN]; 43 static const UChar testBugs[][MAX_TOKEN_LEN]; 44 static const Collator::EComparisonResult results[]; 45 static const UChar testAcute[][MAX_TOKEN_LEN]; 46 47 Collator *myCollation; 48}; 49 50#endif /* #if !UCONFIG_NO_COLLATION */ 51 52#endif 53