Index: icu46/source/test/intltest/itercoll.h |
=================================================================== |
--- icu46/source/test/intltest/itercoll.h (revision 0) |
+++ icu46/source/test/intltest/itercoll.h (revision 0) |
@@ -0,0 +1,119 @@ |
+/******************************************************************** |
+ * COPYRIGHT: |
+ * Copyright (c) 1997-2001, International Business Machines Corporation and |
+ * others. All Rights Reserved. |
+ ********************************************************************/ |
+ |
+/** |
+ * Collation Iterator tests. |
+ * (Let me reiterate my position...) |
+ */ |
+ |
+#ifndef _ITERCOLL |
+#define _ITERCOLL |
+ |
+#include "unicode/utypes.h" |
+ |
+#if !UCONFIG_NO_COLLATION |
+ |
+#include "unicode/tblcoll.h" |
+#include "unicode/coleitr.h" |
+#include "tscoll.h" |
+ |
+class CollationIteratorTest: public IntlTestCollator |
+{ |
+public: |
+ |
+ // 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 }; |
+ |
+ CollationIteratorTest(); |
+ virtual ~CollationIteratorTest(); |
+ |
+ void runIndexedTest(int32_t index, UBool exec, const char* &name, char* par = NULL); |
+ |
+ /** |
+ * Test that results from CollationElementIterator.next is equivalent to |
+ * the reversed results from CollationElementIterator.previous, for the set |
+ * of BMP characters. |
+ */ |
+ void TestUnicodeChar(); |
+ |
+ /** |
+ * Test for CollationElementIterator.previous() |
+ * |
+ * @bug 4108758 - Make sure it works with contracting characters |
+ * |
+ */ |
+ void TestPrevious(/* char* par */); |
+ |
+ /** |
+ * Test for getOffset() and setOffset() |
+ */ |
+ void TestOffset(/* char* par */); |
+ |
+ /** |
+ * Test for setText() |
+ */ |
+ void TestSetText(/* char* par */); |
+ |
+ /** @bug 4108762 |
+ * Test for getMaxExpansion() |
+ */ |
+ void TestMaxExpansion(/* char* par */); |
+ |
+ /* |
+ * @bug 4157299 |
+ */ |
+ void TestClearBuffers(/* char* par */); |
+ |
+ /** |
+ * Testing the assignment operator |
+ */ |
+ void TestAssignment(); |
+ |
+ /** |
+ * Testing the constructors |
+ */ |
+ void TestConstructors(); |
+ |
+ /** |
+ * Testing the strength order functionality |
+ */ |
+ void TestStrengthOrder(); |
+ |
+ //------------------------------------------------------------------------ |
+ // Internal utilities |
+ // |
+ |
+private: |
+ |
+ struct ExpansionRecord |
+ { |
+ UChar character; |
+ int32_t count; |
+ }; |
+ |
+ /** |
+ * Verify that getMaxExpansion works on a given set of collation rules |
+ */ |
+ void verifyExpansion(UnicodeString rules, ExpansionRecord tests[], int32_t testCount); |
+ |
+ /** |
+ * Return a string containing all of the collation orders |
+ * returned by calls to next on the specified iterator |
+ */ |
+ UnicodeString &orderString(CollationElementIterator &iter, UnicodeString &target); |
+ |
+ void assertEqual(CollationElementIterator &i1, CollationElementIterator &i2); |
+ |
+ RuleBasedCollator *en_us; |
+ const UnicodeString test1; |
+ const UnicodeString test2; |
+ |
+}; |
+ |
+#endif /* #if !UCONFIG_NO_COLLATION */ |
+ |
+#endif |
Property changes on: icu46/source/test/intltest/itercoll.h |
___________________________________________________________________ |
Added: svn:eol-style |
+ LF |