You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
105 lines
2.6 KiB
105 lines
2.6 KiB
// © 2016 and later: Unicode, Inc. and others.
|
|
// License & terms of use: http://www.unicode.org/copyright.html
|
|
/********************************************************************
|
|
* COPYRIGHT:
|
|
* Copyright (c) 1997-2014, International Business Machines Corporation and
|
|
* others. All Rights Reserved.
|
|
********************************************************************/
|
|
/********************************************************************************
|
|
*
|
|
* File CITERTST.H
|
|
*
|
|
* Modification History:
|
|
* Name Description
|
|
* Madhu Katragadda Converted to C
|
|
*********************************************************************************/
|
|
|
|
/**
|
|
* Collation Iterator tests.
|
|
* (Let me reiterate my position...)
|
|
*/
|
|
|
|
#ifndef _CITERCOLLTST
|
|
#define _CITERCOLLTST
|
|
|
|
#include "unicode/utypes.h"
|
|
|
|
#if !UCONFIG_NO_COLLATION
|
|
|
|
#include "unicode/ucol.h"
|
|
#include "unicode/ucoleitr.h"
|
|
#include "cintltst.h"
|
|
|
|
#define MAX_TOKEN_LEN 16
|
|
|
|
/**
|
|
* Test for CollationElementIterator previous and next for the whole set of
|
|
* unicode characters.
|
|
*/
|
|
static void TestUnicodeChar(void);
|
|
/**
|
|
* Test for CollationElementIterator previous and next for the whole set of
|
|
* unicode characters with normalization on.
|
|
*/
|
|
static void TestNormalizedUnicodeChar(void);
|
|
/**
|
|
* Test incremental normalization
|
|
*/
|
|
static void TestNormalization(void);
|
|
/**
|
|
* Test for CollationElementIterator.previous()
|
|
*
|
|
* @bug 4108758 - Make sure it works with contracting characters
|
|
*
|
|
*/
|
|
static void TestPrevious(void);
|
|
|
|
/**
|
|
* Test for getOffset() and setOffset()
|
|
*/
|
|
static void TestOffset(void);
|
|
/**
|
|
* Test for setText()
|
|
*/
|
|
static void TestSetText(void);
|
|
/** @bug 4108762
|
|
* Test for getMaxExpansion()
|
|
*/
|
|
static void TestMaxExpansion(void);
|
|
/**
|
|
* Test Bug 672, where different locales give a different offset after
|
|
* a previous for the same string at the same position
|
|
*/
|
|
static void TestBug672(void);
|
|
|
|
/**
|
|
* Repeat TestBug672 with normalizatin enabled - this test revealed a bug
|
|
* in incremental normalization.
|
|
*/
|
|
static void TestBug672Normalize(void);
|
|
/**
|
|
* Test iterators with an relatively small buffer
|
|
*/
|
|
static void TestSmallBuffer(void);
|
|
/**
|
|
* Tests the discontiguos contractions
|
|
*/
|
|
static void TestDiscontiguos(void);
|
|
/**
|
|
* TestSearchCollatorElements tests iterator behavior (forwards and backwards) with
|
|
* normalization on AND jamo tailoring, among other things.
|
|
*/
|
|
static void TestSearchCollatorElements(void);
|
|
|
|
/*------------------------------------------------------------------------
|
|
Internal utilities
|
|
*/
|
|
|
|
|
|
static void assertEqual(UCollationElements *i1, UCollationElements *i2);
|
|
|
|
|
|
#endif /* #if !UCONFIG_NO_COLLATION */
|
|
|
|
#endif
|