Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / third_party / icu / source / test / intltest / plurfmts.h
1 /********************************************************************
2  * COPYRIGHT: 
3  * Copyright (c) 1997-2013, International Business Machines Corporation and
4  * others. All Rights Reserved.
5  ********************************************************************/
6
7 #ifndef _PLURALFORMATTEST
8 #define _PLURALFORMATTEST
9
10 #include "unicode/utypes.h"
11 #include "unicode/plurrule.h"
12 #include "unicode/plurfmt.h"
13
14
15 #if !UCONFIG_NO_FORMATTING
16
17 #include "intltest.h"
18
19 /**
20  * Test basic functionality of various API functions
21  **/
22 class PluralFormatTest : public IntlTest {
23     void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL );  
24
25 private:
26     /**
27      * Performs tests on many API functions, see detailed comments in source code
28      **/
29     void pluralFormatBasicTest(/* char* par */);
30     void pluralFormatUnitTest(/* char* par */);
31     void pluralFormatLocaleTest(/* char* par */);
32     void pluralFormatExtendedTest();
33     void pluralFormatExtendedParseTest();
34     void ordinalFormatTest();
35     void TestDecimals();
36     void numberFormatTest(PluralFormat* plFmt, 
37                           NumberFormat *numFmt, 
38                           int32_t start, 
39                           int32_t end, 
40                           UnicodeString* numOddAppendStr,
41                           UnicodeString* numEvenAppendStr, 
42                           UBool overwrite, // overwrite the numberFormat.format result
43                           UnicodeString *message);
44     void helperTestResults(const char** localeArray, 
45                            int32_t capacityOfArray, 
46                            UnicodeString& testPattern, 
47                            int8_t *expectingResults);
48 };
49
50 #endif /* #if !UCONFIG_NO_FORMATTING */
51
52 #endif