mirror of
https://github.com/openjdk/jdk.git
synced 2026-03-12 08:53:12 +00:00
8157792: After Integrating tzdata2016d the test/sun/util/calendar/zi/TestZoneInfo310.java fails for "Asia/Oral" and "Asia/Qyzylorda" Timezones
Reviewed-by: peytoia
This commit is contained in:
parent
5ee89f9f22
commit
5f5e297c52
@ -22,11 +22,15 @@
|
||||
*/
|
||||
|
||||
/*
|
||||
*@test
|
||||
*@bug 8007572 8008161
|
||||
*@summary Test whether the TimeZone generated from JSR310 tzdb is the same
|
||||
*as the one from the tz data from javazic
|
||||
* @test
|
||||
* @bug 8007572 8008161 8157792
|
||||
* @summary Test whether the TimeZone generated from JSR310 tzdb is the same
|
||||
* as the one from the tz data from javazic
|
||||
* @modules java.base/sun.util.calendar
|
||||
* @build BackEnd Checksum DayOfWeek Gen GenDoc Main Mappings Month
|
||||
* Rule RuleDay RuleRec Simple TestZoneInfo310 Time Timezone
|
||||
* TzIDOldMapping Zone ZoneInfoFile ZoneInfoOld ZoneRec Zoneinfo
|
||||
* @run main TestZoneInfo310
|
||||
*/
|
||||
|
||||
import java.io.File;
|
||||
@ -164,10 +168,6 @@ public class TestZoneInfo310 {
|
||||
}
|
||||
|
||||
for (String zid : zids_new) {
|
||||
if (zid.equals("Asia/Oral") || zid.equals("Asia/Qyzylorda")) {
|
||||
// JDK-8157792 tracking this issue
|
||||
continue;
|
||||
}
|
||||
ZoneInfoOld zi = toZoneInfoOld(TimeZone.getTimeZone(zid));
|
||||
ZoneInfoOld ziOLD = (ZoneInfoOld)ZoneInfoOld.getTimeZone(zid);
|
||||
if (! zi.equalsTo(ziOLD)) {
|
||||
|
||||
@ -373,6 +373,7 @@ class Zoneinfo {
|
||||
tz.getOffsetIndex(zrec.getGmtOffset());
|
||||
|
||||
int lastGmtOffsetValue = -1;
|
||||
ZoneRec prevzrec = null;
|
||||
int currentSave = 0;
|
||||
boolean usedZone;
|
||||
for (int zindex = 0; zindex < zone.size(); zindex++) {
|
||||
@ -441,6 +442,15 @@ class Zoneinfo {
|
||||
currentSave);
|
||||
if (zrec.hasUntil()) {
|
||||
if (transition >= zrec.getUntilTime(currentSave)) {
|
||||
// If the GMT offset changed from the previous one,
|
||||
// record fromTime as a transition.
|
||||
if (!fromTimeUsed && prevzrec != null
|
||||
&& gmtOffset != prevzrec.getGmtOffset()) {
|
||||
tz.addTransition(fromTime,
|
||||
tz.getOffsetIndex(gmtOffset+currentSave),
|
||||
tz.getDstOffsetIndex(currentSave));
|
||||
fromTimeUsed = true; // for consistency
|
||||
}
|
||||
break year_loop;
|
||||
}
|
||||
}
|
||||
@ -452,8 +462,6 @@ class Zoneinfo {
|
||||
if (fromTime != minTime) {
|
||||
int prevsave;
|
||||
|
||||
ZoneRec prevzrec = zone.get(zindex - 1);
|
||||
|
||||
// See if until time in the previous
|
||||
// ZoneRec is the same thing as the
|
||||
// local time in the next rule.
|
||||
@ -555,6 +563,7 @@ class Zoneinfo {
|
||||
fromYear = zrec.getUntilYear();
|
||||
year = zrec.getUntilYear();
|
||||
}
|
||||
prevzrec = zrec;
|
||||
}
|
||||
|
||||
if (tz.getDSTType() == Timezone.UNDEF_DST) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user