summaryrefslogtreecommitdiff
path: root/Build/source/libs/icu/icu-4.6/test/intltest/tstnorm.h
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/icu/icu-4.6/test/intltest/tstnorm.h')
-rw-r--r--Build/source/libs/icu/icu-4.6/test/intltest/tstnorm.h87
1 files changed, 87 insertions, 0 deletions
diff --git a/Build/source/libs/icu/icu-4.6/test/intltest/tstnorm.h b/Build/source/libs/icu/icu-4.6/test/intltest/tstnorm.h
new file mode 100644
index 00000000000..793155541ae
--- /dev/null
+++ b/Build/source/libs/icu/icu-4.6/test/intltest/tstnorm.h
@@ -0,0 +1,87 @@
+/********************************************************************
+ * COPYRIGHT:
+ * Copyright (c) 1997-2010, International Business Machines Corporation and
+ * others. All Rights Reserved.
+ ********************************************************************/
+
+/**
+ * Normalizer basic tests
+ */
+
+#ifndef _TSTNORM
+#define _TSTNORM
+
+#include "unicode/utypes.h"
+
+#if !UCONFIG_NO_NORMALIZATION
+
+#include "unicode/normlzr.h"
+#include "intltest.h"
+
+class BasicNormalizerTest : public IntlTest {
+public:
+ BasicNormalizerTest();
+ virtual ~BasicNormalizerTest();
+
+ void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL );
+
+ void TestHangulCompose(void);
+ void TestHangulDecomp(void);
+ void TestPrevious(void);
+ void TestDecomp(void);
+ void TestCompatDecomp(void);
+ void TestCanonCompose(void);
+ void TestCompatCompose(void);
+ void TestTibetan(void);
+ void TestCompositionExclusion(void);
+ void TestZeroIndex(void);
+ void TestVerisign(void);
+ void TestPreviousNext(void);
+ void TestNormalizerAPI(void);
+ void TestConcatenate(void);
+ void TestCompare(void);
+ void FindFoldFCDExceptions();
+ void TestSkippable();
+ void TestCustomComp();
+ void TestCustomFCC();
+ void TestFilteredNormalizer2Coverage();
+
+private:
+ UnicodeString canonTests[24][3];
+ UnicodeString compatTests[11][3];
+ UnicodeString hangulCanon[2][3];
+
+ void
+ TestPreviousNext(const UChar *src, int32_t srcLength,
+ const UChar32 *expext, int32_t expectLength,
+ const int32_t *expectIndex, // its length=expectLength+1
+ int32_t srcMiddle, int32_t expectMiddle,
+ const char *moves,
+ UNormalizationMode mode,
+ const char *name);
+
+ int32_t countFoldFCDExceptions(uint32_t foldingOptions);
+
+ //------------------------------------------------------------------------
+ // Internal utilities
+ //
+ void backAndForth(Normalizer* iter, const UnicodeString& input);
+
+ void staticTest(UNormalizationMode mode, int options,
+ UnicodeString tests[][3], int length, int outCol);
+
+ void iterateTest(Normalizer* iter, UnicodeString tests[][3], int length, int outCol);
+
+ void assertEqual(const UnicodeString& input,
+ const UnicodeString& expected,
+ Normalizer* result,
+ const UnicodeString& errPrefix);
+
+ static UnicodeString hex(UChar ch);
+ static UnicodeString hex(const UnicodeString& str);
+
+};
+
+#endif /* #if !UCONFIG_NO_NORMALIZATION */
+
+#endif // _TSTNORM