1 /********************************************************************
3 * Copyright (c) 1997-2013, International Business Machines Corporation and
4 * others. All Rights Reserved.
5 ********************************************************************/
7 #ifndef _PluralRulesTest
8 #define _PluralRulesTest
10 #include "unicode/utypes.h"
12 #if !UCONFIG_NO_FORMATTING
15 #include "unicode/localpointer.h"
16 #include "unicode/plurrule.h"
19 * Test basic functionality of various API functions
21 class PluralRulesTest : public IntlTest {
22 void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL );
26 * Performs tests on many API functions, see detailed comments in source code
29 void testGetUniqueKeywordValue();
30 void testGetSamples();
32 void testGetAllKeywordValues();
35 void testAvailbleLocales();
36 void testParseErrors();
37 void testFixedDecimal();
39 void assertRuleValue(const UnicodeString& rule, double expected);
40 void assertRuleKeyValue(const UnicodeString& rule, const UnicodeString& key,
42 void checkSelect(const LocalPointer<PluralRules> &rules, UErrorCode &status,
43 int32_t line, const char *keyword, ...);
46 #endif /* #if !UCONFIG_NO_FORMATTING */