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