diff options
Diffstat (limited to 'Build/source/libs/icu/icu-4.8.1/test/intltest/tztest.h')
-rw-r--r-- | Build/source/libs/icu/icu-4.8.1/test/intltest/tztest.h | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/Build/source/libs/icu/icu-4.8.1/test/intltest/tztest.h b/Build/source/libs/icu/icu-4.8.1/test/intltest/tztest.h new file mode 100644 index 00000000000..e42ce1fb9f5 --- /dev/null +++ b/Build/source/libs/icu/icu-4.8.1/test/intltest/tztest.h @@ -0,0 +1,117 @@ + +/******************************************************************** + * Copyright (c) 1997-2011, International Business Machines + * Corporation and others. All Rights Reserved. + ********************************************************************/ + +#ifndef __TimeZoneTest__ +#define __TimeZoneTest__ + +#include "unicode/utypes.h" + +#if !UCONFIG_NO_FORMATTING + +#include "unicode/simpletz.h" +#include "caltztst.h" + +/** + * Various tests for TimeZone + **/ +class TimeZoneTest: public CalendarTimeZoneTest { + // IntlTest override + void runIndexedTest( int32_t index, UBool exec, const char* &name, char* par ); +public: // package + static const int32_t millisPerHour; + +public: + /** + * Test the offset of the PRT timezone. + */ + virtual void TestPRTOffset(void); + /** + * Regress a specific bug with a sequence of API calls. + */ + virtual void TestVariousAPI518(void); + /** + * Test the call which retrieves the available IDs. + */ + virtual void TestGetAvailableIDs913(void); + + virtual void TestGetAvailableIDsNew(void); + + /** + * Generic API testing for API coverage. + */ + virtual void TestGenericAPI(void); + /** + * Test the setStartRule/setEndRule API calls. + */ + virtual void TestRuleAPI(void); + + void findTransition(const TimeZone& tz, + UDate min, UDate max); + + /** + * subtest used by TestRuleAPI + **/ + void testUsingBinarySearch(const TimeZone& tz, + UDate min, UDate max, + UDate expectedBoundary); + + + /** + * Test short zone IDs for compliance + */ + virtual void TestShortZoneIDs(void); + + + /** + * Test parsing custom zones + */ + virtual void TestCustomParse(void); + + /** + * Test new getDisplayName() API + */ + virtual void TestDisplayName(void); + + void TestDSTSavings(void); + void TestAlternateRules(void); + + void TestCountries(void); + + void TestHistorical(void); + + void TestEquivalentIDs(void); + + void TestAliasedNames(void); + + void TestFractionalDST(void); + + void TestFebruary(void); + + void TestCanonicalID(void); + + virtual void TestDisplayNamesMeta(); + + void TestGetRegion(void); + + static const UDate INTERVAL; + +private: + // internal functions + static UnicodeString& formatOffset(int32_t offset, UnicodeString& rv); + static UnicodeString& formatTZID(int32_t offset, UnicodeString& rv); + + // Some test case data is current date/tzdata version sensitive and producing errors + // when year/rule are changed. + static const int32_t REFERENCE_YEAR; + static const char *REFERENCE_DATA_VERSION; + + void checkContainsAll(StringEnumeration *s1, const char *name1, + StringEnumeration *s2, const char *name2); +}; + +#endif /* #if !UCONFIG_NO_FORMATTING */ + +#endif // __TimeZoneTest__ |