version https://git-lfs.github.com/spec/v1
-oid sha256:d3137adf135a24c2bb8f5fcbbbdea86e07a79f3eb8f4dab3734e88afa7a2dc7a
-size 91046
+oid sha256:b7a225ee1ed42c0dab0082b046e3be1b2f81d49d866bacd3115aa0b7627b7e4d
+size 90848
{ "en", "Asia/Calcutta", "2004-07-15T00:00:00Z", "vvvv", "India Standard Time", "Asia/Calcutta" },
// Proper CLDR primary zone support #9733
- { "en", "Asia/Shanghai", "2013-01-01T00:00:00Z", "VVVV", "China Time", "Asia/Shanghai" },
- { "en", "Asia/Harbin", "2013-01-01T00:00:00Z", "VVVV", "Harbin Time", "Asia/Harbin" },
+ { "en", "America/Santiago", "2013-01-01T00:00:00Z", "VVVV", "Chile Time", "America/Santiago" },
+ { "en", "Pacific/Easter", "2013-01-01T00:00:00Z", "VVVV", "Easter Time", "Pacific/Easter" },
// ==========
{ "zh", "Asia/Calcutta", "2004-07-15T00:00:00Z", "v", "\u5370\u5ea6\u65f6\u95f4", "Asia/Calcutta" },
{ "zh", "Asia/Calcutta", "2004-07-15T00:00:00Z", "vvvv", "\u5370\u5EA6\u65f6\u95f4", "Asia/Calcutta" },
- // Proper CLDR primary zone support #9733
- { "zh", "Asia/Shanghai", "2013-01-01T00:00:00Z", "VVVV", "\u4e2d\u56fd\u65f6\u95f4", "Asia/Shanghai" },
- { "zh", "Asia/Harbin", "2013-01-01T00:00:00Z", "VVVV", "\u54c8\u5c14\u6ee8\u65f6\u95f4", "Asia/Harbin" },
-
// ==========
{ "hi", "America/Los_Angeles", "2004-01-15T00:00:00Z", "Z", "-0800", "-8:00" },
GregorianCalendar gcal = new GregorianCalendar(tz);
gcal.clear();
- gcal.set(1910, Calendar.JANUARY, 1, 12, 00); // offset 8:05:57
+ gcal.set(1900, Calendar.JANUARY, 1, 12, 00); // offset 8:05:43
d1 = gcal.getTime();
gcal.clear();
gcal.clear();
gcal.set(1970, Calendar.JANUARY, 1, 12, 00);
dexp2 = gcal.getTime();
- dexp1 = new Date(dexp2.getTime() - (5*60 + 57)*1000); // subtract 5m57s
+ dexp1 = new Date(dexp2.getTime() - (5*60 + 43)*1000); // subtract 5m43s
DateFormat fmt = DateFormat.getTimeInstance(DateFormat.FULL, new ULocale("zh"));
fmt.setTimeZone(tz);
}
}
+ if (id.equals("Pacific/Apia") && PATTERNS[patidx].equals("vvvv")
+ && logKnownIssue("11052", "Ambiguous zone name - Samoa Time")) {
+ continue;
+ }
+
BasicTimeZone btz = (BasicTimeZone)TimeZone.getTimeZone(id, TimeZone.TIMEZONE_ICU);
TimeZone tz = TimeZone.getTimeZone(id);
sdf.setTimeZone(tz);
.append(", time=").append(testTimes[testidx])
.append(", restime=").append(restime)
.append(", diff=").append(timeDiff);
- if (expectedRoundTrip[testidx]) {
+ if (expectedRoundTrip[testidx]
+ && !isSpecialTimeRoundTripCase(LOCALES[locidx], id, PATTERNS[patidx], testTimes[testidx])) {
errln("FAIL: " + msg.toString());
} else if (REALLY_VERBOSE_LOG) {
logln(msg.toString());
logln("Iteration: " + testCounts);
}
+ // Special exclusions in TestTimeZoneRoundTrip.
+ // These special cases do not round trip time as designed.
+ private boolean isSpecialTimeRoundTripCase(ULocale loc, String id, String pattern, long time) {
+ final Object[][] EXCLUSIONS = {
+ {null, "Asia/Chita", "zzzz", Long.valueOf(1414252800000L)},
+ {null, "Asia/Chita", "vvvv", Long.valueOf(1414252800000L)},
+ {null, "Asia/Srednekolymsk", "zzzz", Long.valueOf(1414241999999L)},
+ {null, "Asia/Srednekolymsk", "vvvv", Long.valueOf(1414241999999L)},
+ };
+ boolean isExcluded = false;
+ for (Object[] excl : EXCLUSIONS) {
+ if (excl[0] == null || loc.equals((ULocale)excl[0])) {
+ if (id.equals(excl[1])) {
+ if (excl[2] == null || pattern.equals((String)excl[2])) {
+ if (excl[3] == null || ((Long)excl[3]).compareTo(time) == 0) {
+ isExcluded = true;
+ break;
+ }
+ }
+ }
+ }
+ }
+ return isExcluded;
+ }
+
public void TestParse() {
final Object[][] DATA = {
// text inpos locale style
// Some canonical IDs in CLDR are defined as "Link"
// in Olson tzdata.
final String[][] excluded1 = {
+ {"Africa/Bamako", "Africa/Abidjan"},
+ {"Africa/Banjul", "Africa/Abidjan"},
+ {"Africa/Conakry", "Africa/Abidjan"},
+ {"Africa/Dakar", "Africa/Abidjan"},
+ {"Africa/Freetown", "Africa/Abidjan"},
{"Africa/Khartoum", "Africa/Juba"},
+ {"Africa/Lome", "Africa/Abidjan"},
+ {"Africa/Nouakchott", "Africa/Abidjan"},
+ {"Africa/Ouagadougou", "Africa/Abidjan"},
+ {"Africa/Sao_Tome", "Africa/Abidjan"},
{"America/Shiprock", "America/Denver"}, // America/Shiprock is defined as a Link to America/Denver in tzdata
{"America/Kralendijk", "America/Curacao"},
{"America/Lower_Princes", "America/Curacao"},
{"America/Lower_Princes", "America/Aruba"},
{"Antarctica/South_Pole", "Antarctica/McMurdo"},
{"Atlantic/Jan_Mayen", "Europe/Oslo"},
+ {"Atlantic/St_Helena", "Africa/Abidjan"},
{"Arctic/Longyearbyen", "Europe/Oslo"},
{"Europe/Busingen", "Europe/Zurich"},
{"Europe/Guernsey", "Europe/London"},