+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
/********************************************************************
- * COPYRIGHT:
- * Copyright (c) 1997-2001, International Business Machines Corporation and
- * others. All Rights Reserved.
+ * Copyright (c) 1997-2014, International Business Machines
+ * Corporation and others. All Rights Reserved.
********************************************************************/
#ifndef __TimeZoneTest__
*/
virtual void TestGetAvailableIDs913(void);
+ virtual void TestGetAvailableIDsNew(void);
+
/**
* Generic API testing for API coverage.
*/
* 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(SimpleTimeZone* tz, UDate min, UDate max, UDate expectedBoundary);
+ void testUsingBinarySearch(const TimeZone& tz,
+ UDate min, UDate max,
+ UDate expectedBoundary);
/**
void TestCountries(void);
+ void TestHistorical(void);
+
+ void TestEquivalentIDs(void);
+
+ void TestAliasedNames(void);
+
+ void TestFractionalDST(void);
+
+ void TestFebruary(void);
+
+ void TestCanonicalIDAPI();
+ void TestCanonicalID(void);
+
+ virtual void TestDisplayNamesMeta();
+
+ void TestGetRegion(void);
+ void TestGetUnknown();
+ void TestGetGMT();
+
+ void TestGetWindowsID(void);
+ void TestGetIDForWindowsID(void);
+
static const UDate INTERVAL;
private:
// internal functions
- static UnicodeString& formatMinutes(int32_t min, UnicodeString& rv);
+ 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 */