// © 2016 and later: Unicode, Inc. and others. // License & terms of use: http://www.unicode.org/copyright.html /******************************************************************** * COPYRIGHT: * Copyright (c) 1997-2003, International Business Machines Corporation and * others. All Rights Reserved. ********************************************************************/ /** * CollationGermanTest is a third level test class. This tests the locale * specific primary, secondary and tertiary rules. For example, o-umlaut * is sorted with expanding char e. */ #ifndef _DECOLL #define _DECOLL #include "unicode/utypes.h" #if !UCONFIG_NO_COLLATION #include "tscoll.h" class CollationGermanTest: public IntlTestCollator { public: // If this is too small for the test data, just increase it. // Just don't make it too large, otherwise the executable will get too big enum EToken_Len { MAX_TOKEN_LEN = 16 }; CollationGermanTest(); virtual ~CollationGermanTest(); void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL ); // perform test with strength PRIMARY void TestPrimary(/* char* par */); // perform test with strength SECONDARY void TestSecondary(/* char* par */); // perform tests with strength TERTIARY void TestTertiary(/* char* par */); private: static const UChar testSourceCases[][MAX_TOKEN_LEN]; static const UChar testTargetCases[][MAX_TOKEN_LEN]; static const Collator::EComparisonResult results[][2]; Collator *myCollation; }; #endif /* #if !UCONFIG_NO_COLLATION */ #endif