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