diff --git a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/calendar/CalendarRegressionTest.java b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/calendar/CalendarRegressionTest.java index 1d21f063305..936ebe4a621 100644 --- a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/calendar/CalendarRegressionTest.java +++ b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/calendar/CalendarRegressionTest.java @@ -2619,5 +2619,26 @@ public class CalendarRegressionTest extends com.ibm.icu.dev.test.TestFmwk { TESTS[i][2], cal.getType()); } } + + void VerifyNoAssertWithSetGregorianChange(String timezone) { + TimeZone zone = TimeZone.getTimeZone(timezone); + GregorianCalendar cal = new GregorianCalendar(zone, Locale.ENGLISH); + cal.setTime(new Date()); + // The beginning of ECMAScript time, namely -(2**53) + long startOfTime = -9007199254740992L; + + cal.setGregorianChange(new Date(startOfTime)); + cal.get(Calendar.ZONE_OFFSET); + cal.get(Calendar.DST_OFFSET); + } + + @Test + public void TestAsiaManilaAfterSetGregorianChange22043() { + VerifyNoAssertWithSetGregorianChange("Asia/Manila"); + for (String id : TimeZone.getAvailableIDs()) { + VerifyNoAssertWithSetGregorianChange(id); + } + } + } //eof