]>
Commit | Line | Data |
---|---|---|
1 | // © 2016 and later: Unicode, Inc. and others. | |
2 | // License & terms of use: http://www.unicode.org/copyright.html | |
3 | /******************************************************************** | |
4 | * COPYRIGHT: | |
5 | * Copyright (c) 1997-2013, International Business Machines Corporation and | |
6 | * others. All Rights Reserved. | |
7 | ********************************************************************/ | |
8 | ||
9 | #ifndef _PluralRulesTest | |
10 | #define _PluralRulesTest | |
11 | ||
12 | #include "unicode/utypes.h" | |
13 | ||
14 | #if !UCONFIG_NO_FORMATTING | |
15 | ||
16 | #include "intltest.h" | |
17 | #include "unicode/localpointer.h" | |
18 | #include "unicode/plurrule.h" | |
19 | ||
20 | /** | |
21 | * Test basic functionality of various API functions | |
22 | **/ | |
23 | class PluralRulesTest : public IntlTest { | |
24 | void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL ); | |
25 | ||
26 | private: | |
27 | /** | |
28 | * Performs tests on many API functions, see detailed comments in source code | |
29 | **/ | |
30 | void testAPI(); | |
31 | void testGetUniqueKeywordValue(); | |
32 | void testGetSamples(); | |
33 | void testWithin(); | |
34 | void testGetAllKeywordValues(); | |
35 | void testOrdinal(); | |
36 | void testSelect(); | |
37 | void testAvailbleLocales(); | |
38 | void testParseErrors(); | |
39 | void testFixedDecimal(); | |
40 | void testSelectTrailingZeros(); | |
41 | void testLocaleExtension(); | |
42 | ||
43 | void assertRuleValue(const UnicodeString& rule, double expected); | |
44 | void assertRuleKeyValue(const UnicodeString& rule, const UnicodeString& key, | |
45 | double expected); | |
46 | void checkSelect(const LocalPointer<PluralRules> &rules, UErrorCode &status, | |
47 | int32_t line, const char *keyword, ...); | |
48 | void compareLocaleResults(const char* loc1, const char* loc2, const char* loc3); | |
49 | }; | |
50 | ||
51 | #endif /* #if !UCONFIG_NO_FORMATTING */ | |
52 | ||
53 | #endif |