1 /******************************************************************** 2 * COPYRIGHT: 3 * Copyright (c) 1997-2010, 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 40 private: 41 42 friend void U_CALLCONV unicodeDataLineFn(void *context, 43 char *fields[][2], int32_t fieldCount, 44 UErrorCode *pErrorCode); 45 46 friend void U_CALLCONV 47 derivedPropsLineFn(void *context, 48 char *fields[][2], int32_t fieldCount, 49 UErrorCode *pErrorCode); 50 51 UnicodeSet derivedProps[30]; 52 U_NAMESPACE_QUALIFIER Hashtable *unknownPropertyNames; 53 }; 54 55