]> git.saurik.com Git - apple/icu.git/blame - icuSources/test/intltest/ucaconf.h
ICU-511.34.tar.gz
[apple/icu.git] / icuSources / test / intltest / ucaconf.h
CommitLineData
b75a7d8f 1/********************************************************************
51004dcb
A
2 * COPYRIGHT:
3 * Copyright (c) 2002-2012, International Business Machines Corporation and
b75a7d8f
A
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"
b75a7d8f 21#include "tscoll.h"
b75a7d8f
A
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();
51004dcb
A
38 void setCollNonIgnorable(Collator *coll);
39 void setCollShifted(Collator *coll);
40 void testConformance(const Collator *coll);
b75a7d8f
A
41 void openTestFile(const char *type);
42
51004dcb
A
43 RuleBasedCollator *UCA; // rule-based so rules are available
44 Collator *rbUCA;
b75a7d8f
A
45 FILE *testFile;
46 UErrorCode status;
47 char testDataPath[1024];
51004dcb 48 UBool isAtLeastUCA62;
b75a7d8f
A
49};
50
51#endif /* #if !UCONFIG_NO_COLLATION */
52
53#endif