Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / third_party / icu / source / test / cintltst / capitst.h
1 /********************************************************************
2  * Copyright (c) 1997-2013 International Business Machines 
3  * Corporation and others. All Rights Reserved.
4  ********************************************************************/
5 /********************************************************************************
6 *
7 * File CAPITEST.H
8 *
9 * Modification History:
10 *        Name                     Description            
11 *     Madhu Katragadda            Converted to C
12 *     Brian Rower                 Added TestOpenVsOpenRules
13 *********************************************************************************
14 *//* C API TEST For COLLATOR */
15
16 #ifndef _CCOLLAPITST
17 #define _CCOLLAPITST
18
19 #include "unicode/utypes.h"
20
21 #if !UCONFIG_NO_COLLATION
22
23 #include "cintltst.h"
24 #include "callcoll.h"
25 #define MAX_TOKEN_LEN 16
26
27
28     /**
29      * error reporting utility method
30      **/
31
32     static void doAssert(int condition, const char *message);
33     /**
34      * Collator Class Properties
35      * ctor, dtor, createInstance, compare, getStrength/setStrength
36      * getDecomposition/setDecomposition, getDisplayName
37      */
38     void TestProperty(void);
39     /**
40      * Test RuleBasedCollator and getRules
41      **/
42     void TestRuleBasedColl(void);
43     
44     /**
45      * Test compare
46      **/
47     void TestCompare(void);
48     /**
49      * Test hashCode functionality
50      **/
51     void TestHashCode(void);
52     /**
53      * Tests the constructor and numerous other methods for CollationKey
54      **/
55    void TestSortKey(void);
56     /**
57      * test the CollationElementIterator methods
58      **/
59    void TestElemIter(void);
60     /**
61      * Test ucol_getAvailable and ucol_countAvailable()
62      **/
63     void TestGetAll(void);
64     /**
65      * Test ucol_GetDefaultRules ()
66     void TestGetDefaultRules(void);
67      **/
68
69     void TestDecomposition(void);
70     /**
71      * Test ucol_safeClone ()
72      **/    
73     void TestSafeClone(void);
74
75     /**
76      * Test ucol_cloneBinary(), ucol_openBinary()
77      **/
78     void TestCloneBinary(void);
79
80     /**
81      * Test ucol_open() vs. ucol_openRules()
82      **/
83     void TestOpenVsOpenRules(void);
84
85     /**
86      * Test getting bounds for a sortkey
87      */
88     void TestBounds(void);
89
90     /**
91      * Test ucol_getLocale function
92      */
93     void TestGetLocale(void);
94
95     /**
96      * Test buffer overrun while having smaller buffer for sortkey (j1865)
97      */
98     void TestSortKeyBufferOverrun(void);
99     /**
100      * Test getting and setting of attributes
101      */
102     void TestGetSetAttr(void);
103     /**
104      * Test getTailoredSet
105      */
106     void TestGetTailoredSet(void);
107
108     /**
109      * Test mergeSortKeys
110      */
111     void TestMergeSortKeys(void);
112
113     /** 
114      * test short string and collator identifier functions
115      */
116     static void TestShortString(void);
117
118     /** 
119      * test getContractions and getUnsafeSet
120      */
121     static void TestGetContractionsAndUnsafes(void);
122
123     /**
124      * Test funny stuff with open binary
125      */
126     static void TestOpenBinary(void);
127
128     /**
129      * Test getKeywordValuesForLocale API
130      */
131     static void TestGetKeywordValuesForLocale(void);
132
133     /**
134      * test strcoll with null arg
135      */
136     static void TestStrcollNull(void);
137
138 #endif /* #if !UCONFIG_NO_COLLATION */
139
140 #endif