]> git.saurik.com Git - apple/icu.git/blob - icuSources/test/intltest/tzrulets.h
ICU-511.25.tar.gz
[apple/icu.git] / icuSources / test / intltest / tzrulets.h
1 /*
2 *******************************************************************************
3 * Copyright (C) 2007-2011, International Business Machines Corporation and *
4 * others. All Rights Reserved. *
5 *******************************************************************************
6 */
7
8 #ifndef _TIMEZONERULETEST_
9 #define _TIMEZONERULETEST_
10
11 #include "unicode/utypes.h"
12 #include "caltztst.h"
13
14 #if !UCONFIG_NO_FORMATTING
15
16 /**
17 * Tests for TimeZoneRule, RuleBasedTimeZone and VTimeZone
18 */
19 class TimeZoneRuleTest : public CalendarTimeZoneTest {
20 // IntlTest override
21 void runIndexedTest(int32_t index, UBool exec, const char*& name, char* par);
22 public:
23 void TestSimpleRuleBasedTimeZone(void);
24 void TestHistoricalRuleBasedTimeZone(void);
25 void TestOlsonTransition(void);
26 void TestRBTZTransition(void);
27 void TestHasEquivalentTransitions(void);
28 void TestVTimeZoneRoundTrip(void);
29 void TestVTimeZoneRoundTripPartial(void);
30 void TestVTimeZoneSimpleWrite(void);
31 void TestVTimeZoneHeaderProps(void);
32 void TestGetSimpleRules(void);
33 void TestTimeZoneRuleCoverage(void);
34 void TestSimpleTimeZoneCoverage(void);
35 void TestVTimeZoneCoverage(void);
36 void TestVTimeZoneParse(void);
37 void TestT6216(void);
38 void TestT6669(void);
39 void TestVTimeZoneWrapper(void);
40 void TestT8943(void);
41
42 private:
43 void verifyTransitions(BasicTimeZone& icutz, UDate start, UDate end);
44 void compareTransitionsAscending(BasicTimeZone& z1, BasicTimeZone& z2,
45 UDate start, UDate end, UBool inclusive);
46 void compareTransitionsDescending(BasicTimeZone& z1, BasicTimeZone& z2,
47 UDate start, UDate end, UBool inclusive);
48 UDate getUTCMillis(int32_t year, int32_t month, int32_t dom,
49 int32_t hour=0, int32_t min=0, int32_t sec=0, int32_t msec=0);
50 };
51
52 #endif /* #if !UCONFIG_NO_FORMATTING */
53
54 #endif // _TIMEZONERULETEST_