]> git.saurik.com Git - apple/icu.git/blob - icuSources/test/intltest/tufmtts.h
ICU-531.31.tar.gz
[apple/icu.git] / icuSources / test / intltest / tufmtts.h
1 /********************************************************************
2 * COPYRIGHT:
3 * Copyright (c) 2008-2013, International Business Machines Corporation
4 * and others. All Rights Reserved.
5 ********************************************************************/
6
7 #ifndef __INTLTESTTIMEUNITTEST__
8 #define __INTLTESTTIMEUNITTEST__
9
10
11 #if !UCONFIG_NO_FORMATTING
12
13 #include "unicode/utypes.h"
14 #include "unicode/locid.h"
15 #include "intltest.h"
16
17 /**
18 * Test basic functionality of various API functions
19 **/
20 class TimeUnitTest: public IntlTest {
21 void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL );
22
23 public:
24 /**
25 * Performs basic tests
26 **/
27 void testBasic();
28
29 /**
30 * Performs API tests
31 **/
32 void testAPI();
33
34 /**
35 * Performs tests for Greek
36 * This tests that requests for short unit names correctly fall back
37 * to long unit names for a locale where the locale data does not
38 * provide short unit names. As of CLDR 1.9, Greek is one such language.
39 **/
40 void testGreekWithFallback();
41
42 /**
43 * Performs tests for Greek
44 * This tests that if the plural count listed in time unit format does not
45 * match those in the plural rules for the locale, those plural count in
46 * time unit format will be ingored and subsequently, fall back will kick in
47 * which is tested above.
48 * Without data sanitization, setNumberFormat() would crash.
49 * As of CLDR shiped in ICU4.8, Greek is one such language.
50 */
51 void testGreekWithSanitization();
52
53 /**
54 * Performs unit test for ticket 10219 making sure that plurals work
55 * correctly with rounding.
56 */
57 void test10219Plurals();
58
59 };
60
61 #endif /* #if !UCONFIG_NO_FORMATTING */
62
63 #endif