1 /******************************************************************** 2 * COPYRIGHT: 3 * Copyright (c) 2002-2006, International Business Machines Corporation and 4 * others. All Rights Reserved. 5 ******************************************************************** 6 * 7 * @author Mark E. Davis 8 * @author Vladimir Weinstein 9 */ 10 11 /** 12 * Test Canonical Iterator 13 */ 14 15 #ifndef _CANITTST 16 #define _CANITTST 17 18 #include "unicode/utypes.h" 19 20 #if !UCONFIG_NO_NORMALIZATION 21 22 23 U_NAMESPACE_BEGIN 24 25 class Transliterator; 26 27 U_NAMESPACE_END 28 29 #include "unicode/translit.h" 30 #include "unicode/caniter.h" 31 #include "intltest.h" 32 #include "hash.h" 33 34 class CanonicalIteratorTest : public IntlTest { 35 public: 36 CanonicalIteratorTest(); 37 virtual ~CanonicalIteratorTest(); 38 39 void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL ); 40 41 void TestCanonicalIterator(void); 42 void TestExhaustive(void); 43 void TestBasic(); 44 void TestAPI(); 45 UnicodeString collectionToString(Hashtable *col); 46 //static UnicodeString collectionToString(Collection col); 47 private: 48 void expectEqual(const UnicodeString &message, const UnicodeString &item, const UnicodeString &a, const UnicodeString &b); 49 void characterTest(UnicodeString &s, UChar32 ch, CanonicalIterator &it); 50 51 Transliterator *nameTrans; 52 Transliterator *hexTrans; 53 54 UnicodeString getReadable(const UnicodeString &obj); 55 }; 56 57 #endif /* #if !UCONFIG_NO_NORMALIZATION */ 58 59 #endif // _CANITTST 60