/******************************************************************** * COPYRIGHT: * Copyright (c) 2008-2013, International Business Machines Corporation * and others. All Rights Reserved. ********************************************************************/ #ifndef __INTLTESTTIMEUNITTEST__ #define __INTLTESTTIMEUNITTEST__ #if !UCONFIG_NO_FORMATTING #include "unicode/utypes.h" #include "unicode/locid.h" #include "intltest.h" /** * Test basic functionality of various API functions **/ class TimeUnitTest: public IntlTest { void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par = NULL ); public: /** * Performs basic tests **/ void testBasic(); /** * Performs API tests **/ void testAPI(); /** * Performs tests for Greek * This tests that requests for short unit names correctly fall back * to long unit names for a locale where the locale data does not * provide short unit names. As of CLDR 1.9, Greek is one such language. **/ void testGreekWithFallback(); /** * Performs tests for Greek * This tests that if the plural count listed in time unit format does not * match those in the plural rules for the locale, those plural count in * time unit format will be ingored and subsequently, fall back will kick in * which is tested above. * Without data sanitization, setNumberFormat() would crash. * As of CLDR shiped in ICU4.8, Greek is one such language. */ void testGreekWithSanitization(); /** * Performs unit test for ticket 10219 making sure that plurals work * correctly with rounding. */ void test10219Plurals(); }; #endif /* #if !UCONFIG_NO_FORMATTING */ #endif