]>
Commit | Line | Data |
---|---|---|
1 | /******************************************************************** | |
2 | * COPYRIGHT: | |
3 | * Copyright (c) 1997-2013, International Business Machines Corporation and | |
4 | * others. All Rights Reserved. | |
5 | ********************************************************************/ | |
6 | ||
7 | #include "unicode/uniset.h" | |
8 | #include "intltest.h" | |
9 | ||
10 | /** Helper function for TestUnicodeData */ | |
11 | U_CFUNC void U_CALLCONV unicodeDataLineFn(void *context, | |
12 | char *fields[][2], int32_t fieldCount, | |
13 | UErrorCode *pErrorCode); | |
14 | ||
15 | U_CFUNC void U_CALLCONV | |
16 | derivedPropsLineFn(void *context, | |
17 | char *fields[][2], int32_t fieldCount, | |
18 | UErrorCode *pErrorCode); | |
19 | ||
20 | U_NAMESPACE_BEGIN | |
21 | ||
22 | class Hashtable; | |
23 | ||
24 | U_NAMESPACE_END | |
25 | ||
26 | /** | |
27 | * Test API and functionality of class Unicode | |
28 | **/ | |
29 | class UnicodeTest: public IntlTest { | |
30 | public: | |
31 | UnicodeTest(); | |
32 | virtual ~UnicodeTest(); | |
33 | ||
34 | void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL ); | |
35 | ||
36 | void TestAdditionalProperties(); | |
37 | void TestBinaryValues(); | |
38 | void TestConsistency(); | |
39 | void TestPatternProperties(); | |
40 | void TestScriptMetadata(); | |
41 | ||
42 | private: | |
43 | ||
44 | friend void U_CALLCONV unicodeDataLineFn(void *context, | |
45 | char *fields[][2], int32_t fieldCount, | |
46 | UErrorCode *pErrorCode); | |
47 | ||
48 | friend void U_CALLCONV | |
49 | derivedPropsLineFn(void *context, | |
50 | char *fields[][2], int32_t fieldCount, | |
51 | UErrorCode *pErrorCode); | |
52 | ||
53 | UnicodeSet derivedProps[30]; | |
54 | U_NAMESPACE_QUALIFIER Hashtable *unknownPropertyNames; | |
55 | ||
56 | UBool compareUSets(const UnicodeSet &a, const UnicodeSet &b, | |
57 | const char *a_name, const char *b_name, | |
58 | UBool diffIsError); | |
59 | }; |