1 /********************************************************************
2  * COPYRIGHT:
3  * Copyright (c) 1997-2011, International Business Machines Corporation and
4  * others. All Rights Reserved.
5  ********************************************************************/
6 /*   file name:  strtest.h
7 *   encoding:   US-ASCII
8 *   tab size:   8 (not used)
9 *   indentation:4
10 *
11 *   created on: 1999nov22
12 *   created by: Markus W. Scherer
13 */
14 
15 /*
16  * Test character- and string- related settings in utypes.h,
17  * macros in putil.h, and constructors in unistr.h .
18  * Also basic tests for std_string.h and charstr.h .
19  */
20 
21 #ifndef __STRTEST_H__
22 #define __STRTEST_H__
23 
24 #include "intltest.h"
25 
26 class StringTest : public IntlTest {
27 public:
StringTest()28     StringTest() {}
29     virtual ~StringTest();
30 
31     void runIndexedTest(int32_t index, UBool exec, const char *&name, char *par=NULL);
32 
33 private:
34     void TestEndian();
35     void TestSizeofTypes();
36     void TestCharsetFamily();
37     void Test_U_STRING();
38     void Test_UNICODE_STRING();
39     void Test_UNICODE_STRING_SIMPLE();
40     void Test_UTF8_COUNT_TRAIL_BYTES();
41     void TestStringPiece();
42     void TestStringPieceComparisons();
43     void TestByteSink();
44     void TestCheckedArrayByteSink();
45     void TestStringByteSink();
46     void TestSTLCompatibility();
47     void TestCharString();
48 };
49 
50 #endif
51