85d3cf4f2f
X-SVN-Rev: 40748
65 lines
2.0 KiB
C++
65 lines
2.0 KiB
C++
// © 2016 and later: Unicode, Inc. and others.
|
|
// License & terms of use: http://www.unicode.org/copyright.html
|
|
/********************************************************************
|
|
* Copyright (c) 1997-2016, International Business Machines Corporation and
|
|
* others. All Rights Reserved.
|
|
********************************************************************/
|
|
|
|
#include "unicode/uniset.h"
|
|
#include "intltest.h"
|
|
|
|
/** Helper function for TestUnicodeData */
|
|
U_CFUNC void U_CALLCONV unicodeDataLineFn(void *context,
|
|
char *fields[][2], int32_t fieldCount,
|
|
UErrorCode *pErrorCode);
|
|
|
|
U_CFUNC void U_CALLCONV
|
|
derivedPropsLineFn(void *context,
|
|
char *fields[][2], int32_t fieldCount,
|
|
UErrorCode *pErrorCode);
|
|
|
|
U_NAMESPACE_BEGIN
|
|
|
|
class Hashtable;
|
|
|
|
U_NAMESPACE_END
|
|
|
|
/**
|
|
* Test API and functionality of class Unicode
|
|
**/
|
|
class UnicodeTest: public IntlTest {
|
|
public:
|
|
UnicodeTest();
|
|
virtual ~UnicodeTest();
|
|
|
|
void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL );
|
|
|
|
void TestAdditionalProperties();
|
|
void TestBinaryValues();
|
|
void TestConsistency();
|
|
void TestPatternProperties();
|
|
void TestScriptMetadata();
|
|
void TestBidiPairedBracketType();
|
|
void TestEmojiProperties();
|
|
void TestDefaultScriptExtensions();
|
|
void TestInvalidCodePointFolding();
|
|
|
|
private:
|
|
|
|
friend void U_CALLCONV unicodeDataLineFn(void *context,
|
|
char *fields[][2], int32_t fieldCount,
|
|
UErrorCode *pErrorCode);
|
|
|
|
friend void U_CALLCONV
|
|
derivedPropsLineFn(void *context,
|
|
char *fields[][2], int32_t fieldCount,
|
|
UErrorCode *pErrorCode);
|
|
|
|
UnicodeSet derivedProps[30];
|
|
U_NAMESPACE_QUALIFIER Hashtable *unknownPropertyNames;
|
|
|
|
UBool compareUSets(const UnicodeSet &a, const UnicodeSet &b,
|
|
const char *a_name, const char *b_name,
|
|
UBool diffIsError);
|
|
};
|