1/******************************************************************** 2 * COPYRIGHT: 3 * Copyright (c) 2002-2003, International Business Machines Corporation and 4 * others. All Rights Reserved. 5 ********************************************************************/ 6 7/** 8 * UCAConformanceTest performs conformance tests defined in the data 9 * files. ICU ships with stub data files, as the whole test are too 10 * long. To do the whole test, download the test files. 11 */ 12 13#ifndef _UCACONF_TST 14#define _UCACONF_TST 15 16#include "unicode/utypes.h" 17 18#if !UCONFIG_NO_COLLATION 19 20#include "unicode/tblcoll.h" 21#include "tscoll.h" 22 23#include <stdio.h> 24 25class UCAConformanceTest: public IntlTestCollator { 26public: 27 UCAConformanceTest(); 28 virtual ~UCAConformanceTest(); 29 30 void runIndexedTest( int32_t index, UBool exec, const char* &name, char* /*par = NULL */); 31 32 void TestTableNonIgnorable(/* par */); 33 void TestTableShifted(/* par */); 34 void TestRulesNonIgnorable(/* par */); 35 void TestRulesShifted(/* par */); 36private: 37 void initRbUCA(); 38 void setCollNonIgnorable(UCollator *coll); 39 void setCollShifted(UCollator *coll); 40 void testConformance(UCollator *coll); 41 void openTestFile(const char *type); 42 43 UCollator *UCA; 44 UCollator *rbUCA; 45 FILE *testFile; 46 UErrorCode status; 47 char testDataPath[1024]; 48}; 49 50#endif /* #if !UCONFIG_NO_COLLATION */ 51 52#endif 53