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 * CollationFinnishTest is a third level test class. This tests the locale 9ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru * specific primary and tertiary rules. For example, a-ring sorts after z 10ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru * and w and v are equivalent. 11ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru */ 12ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru 13ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#ifndef _FICOLL 14ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#define _FICOLL 15ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru 16ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#include "unicode/utypes.h" 17ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru 18ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#if !UCONFIG_NO_COLLATION 19ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru 20ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#include "tscoll.h" 21ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru 22ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queruclass CollationFinnishTest: public IntlTestCollator { 23ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Querupublic: 24ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru // If this is too small for the test data, just increase it. 25ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru // Just don't make it too large, otherwise the executable will get too big 26ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru enum EToken_Len { MAX_TOKEN_LEN = 16 }; 27ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru 28ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru CollationFinnishTest(); 29ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru virtual ~CollationFinnishTest(); 30ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL ); 31ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru 32ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru // perform tests with strength PRIMARY 33ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru void TestPrimary(/* char* par */); 34ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru 35ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru // perform test with strength TERTIARY 36ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru void TestTertiary(/* char* par */); 37ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru 38ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queruprivate: 39ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru static const UChar testSourceCases[][MAX_TOKEN_LEN]; 40ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru static const UChar testTargetCases[][MAX_TOKEN_LEN]; 41ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru static const Collator::EComparisonResult results[]; 42ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru 43ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru Collator *myCollation; 44ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru}; 45ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru 46ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#endif /* #if !UCONFIG_NO_COLLATION */ 47ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru 48ac04d0bbe12b3ef54518635711412f178cb4d16Jean-Baptiste Queru#endif 49