Index: icu46/source/test/intltest/apicoll.h |
=================================================================== |
--- icu46/source/test/intltest/apicoll.h (revision 0) |
+++ icu46/source/test/intltest/apicoll.h (revision 0) |
@@ -0,0 +1,179 @@ |
+/*********************************************************************** |
+ * COPYRIGHT: |
+ * Copyright (c) 1997-2006, International Business Machines Corporation |
+ * and others. All Rights Reserved. |
+ ***********************************************************************/ |
+ |
+/** |
+ * CollationAPITest is a third level test class. This test performs API |
+ * related tests for the Collation framework. |
+ */ |
+ |
+#ifndef _APICOLL |
+#define _APICOLL |
+ |
+#include "unicode/utypes.h" |
+ |
+#if !UCONFIG_NO_COLLATION |
+ |
+#include "unicode/tblcoll.h" |
+#include "tscoll.h" |
+ |
+class CollationAPITest: public IntlTestCollator { |
+public: |
+ void runIndexedTest( int32_t index, UBool exec, const char* &name, char* /*par = NULL */); |
+ void doAssert(UBool condition, const char *message); |
+ |
+ /** |
+ * This tests the properties of a collator object. |
+ * - constructor/destructor |
+ * - factory method createInstance |
+ * - compare and getCollationKey |
+ * - get/set decomposition mode and comparison level |
+ * - displayable name in the desired locale |
+ */ |
+ void TestProperty(/* char* par */); |
+ |
+ /** |
+ * This tests the RuleBasedCollator |
+ * - constructor/destructor |
+ * - getRules |
+ */ |
+ void TestRuleBasedColl(/* char* par */); |
+ |
+ /** |
+ * This tests the RuleBasedCollator |
+ * - getRules |
+ */ |
+ void TestRules(/* char* par */); |
+ |
+ /** |
+ * Tests decomposition setting |
+ */ |
+ void TestDecomposition(); |
+ |
+ /** |
+ * SafeClone test |
+ */ |
+ void TestSafeClone(); |
+ |
+ /** |
+ * This tests the properties of a rule based collator object. |
+ * - constructor/destructor |
+ * - == and != operators |
+ * - clone and copy |
+ * - collation rules access |
+ */ |
+ void TestOperators(/* char* par */); |
+ |
+ /** |
+ * This tests the duplication of a collator object. |
+ */ |
+ void TestDuplicate(/* char* par */); |
+ |
+ /** |
+ * This tests the comparison convenience methods of a collator object. |
+ * - greater than |
+ * - greater than or equal to |
+ * - equal to |
+ */ |
+ void TestCompare(/* char* par */); |
+ |
+ /** |
+ * This tests the hashCode method of a collator object. |
+ */ |
+ void TestHashCode(/* char* par */); |
+ |
+ /** |
+ * This tests the collation key related APIs. |
+ * - constructor/destructor |
+ * - Collator::getCollationKey |
+ * - == and != operators |
+ * - comparison between collation keys |
+ * - creating collation key with a byte array and vice versa |
+ */ |
+ void TestCollationKey(/* char* par */); |
+ |
+ /** |
+ * This tests the CollationElementIterator related APIs. |
+ * - creation of a CollationElementIterator object |
+ * - == and != operators |
+ * - iterating forward |
+ * - reseting the iterator index |
+ * - requesting the order properties(primary, secondary or tertiary) |
+ */ |
+ void TestElemIter(/* char* par */); |
+ |
+ /** |
+ * This tests the list the all available locales. |
+ */ |
+ void TestGetAll(/* char* par */); |
+ |
+ /** |
+ * This tests the sort keys generated by collator |
+ */ |
+ void TestSortKey(); |
+ |
+ /** |
+ * This tests getMaxExpansion |
+ */ |
+ void TestMaxExpansion(); |
+ |
+ /** |
+ * Tests the retrieval of names given a locale |
+ */ |
+ void TestDisplayName(); |
+ |
+ /** |
+ * Tests the collator attributes |
+ */ |
+ void TestAttribute(); |
+ |
+ /** |
+ * Tests the setters and getters of variable top |
+ */ |
+ void TestVariableTopSetting(); |
+ |
+ /** |
+ * Tests GetLocale for a Collator |
+ */ |
+ void TestGetLocale(); |
+ |
+ /** |
+ * Tests bounds API |
+ */ |
+ void TestBounds(); |
+ |
+ /** |
+ * Tests getTailoredSet API |
+ */ |
+ void TestGetTailoredSet(); |
+ |
+ /** |
+ * Tests the subclassability |
+ */ |
+ void TestSubclass(); |
+ |
+ /** |
+ * Tests the dynamic and static ids of collation classes |
+ */ |
+ void TestUClassID(); |
+ |
+ /** |
+ * Test NULL |
+ */ |
+ void TestNULLCharTailoring(); |
+ |
+ void TestClone(); |
+private: |
+ // If this is too small for the test data, just increase it. |
+ // Just don't make it too large, otherwise the executable will get too big |
+ enum EToken_Len { MAX_TOKEN_LEN = 16 }; |
+ |
+ void dump(UnicodeString msg, RuleBasedCollator* c, UErrorCode& status); |
+ |
+}; |
+ |
+#endif /* #if !UCONFIG_NO_COLLATION */ |
+ |
+#endif |
Property changes on: icu46/source/test/intltest/apicoll.h |
___________________________________________________________________ |
Added: svn:eol-style |
+ LF |