| 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
|
|
|
|
|