Merge "DO NOT MERGE Update libcore tests for 2024b [T]" into android13-dev
diff --git a/harmony-tests/src/test/java/org/apache/harmony/tests/java/text/SimpleDateFormatTest.java b/harmony-tests/src/test/java/org/apache/harmony/tests/java/text/SimpleDateFormatTest.java
index 2eb64fe..3becca4 100644
--- a/harmony-tests/src/test/java/org/apache/harmony/tests/java/text/SimpleDateFormatTest.java
+++ b/harmony-tests/src/test/java/org/apache/harmony/tests/java/text/SimpleDateFormatTest.java
@@ -411,14 +411,14 @@
 
         SimpleDateFormat format = new SimpleDateFormat("", Locale.ENGLISH);
         format.setTimeZone(TimeZone.getTimeZone("EST"));
-        assertFormat(format, " z", cal, " GMT-05:00", DateFormat.TIMEZONE_FIELD);
+        assertFormat(format, " z", cal, " EST", DateFormat.TIMEZONE_FIELD);
         Calendar temp2 = new GregorianCalendar(1999, Calendar.JANUARY, 12);
-        assertFormat(format, " z", temp2, " GMT-05:00", DateFormat.TIMEZONE_FIELD);
-        assertFormat(format, " zz", cal, " GMT-05:00", DateFormat.TIMEZONE_FIELD);
-        assertFormat(format, " zzz", cal, " GMT-05:00", DateFormat.TIMEZONE_FIELD);
-        assertFormat(format, " zzzz", cal, " GMT-05:00", DateFormat.TIMEZONE_FIELD);
-        assertFormat(format, " zzzz", temp2, " GMT-05:00", DateFormat.TIMEZONE_FIELD);
-        assertFormat(format, " zzzzz", cal, " GMT-05:00", DateFormat.TIMEZONE_FIELD);
+        assertFormat(format, " z", temp2, " EST", DateFormat.TIMEZONE_FIELD);
+        assertFormat(format, " zz", cal, " EST", DateFormat.TIMEZONE_FIELD);
+        assertFormat(format, " zzz", cal, " EST", DateFormat.TIMEZONE_FIELD);
+        assertFormat(format, " zzzz", cal, " Eastern Standard Time", DateFormat.TIMEZONE_FIELD);
+        assertFormat(format, " zzzz", temp2, " Eastern Standard Time", DateFormat.TIMEZONE_FIELD);
+        assertFormat(format, " zzzzz", cal, " Eastern Standard Time", DateFormat.TIMEZONE_FIELD);
 
         format.setTimeZone(TimeZone.getTimeZone("America/New_York"));
         assertFormat(format, " z", cal, " EDT", DateFormat.TIMEZONE_FIELD);
@@ -483,8 +483,8 @@
                 "Pacific/Kiritimati", "GMT+14:00, Line Islands Time", "+1400, GMT+14:00",
                 winterDate);
 
-        verifyFormatTimezone("EST", "GMT-05:00, GMT-05:00", "-0500, GMT-05:00", summerDate);
-        verifyFormatTimezone("EST", "GMT-05:00, GMT-05:00", "-0500, GMT-05:00", winterDate);
+        verifyFormatTimezone("EST", "EST, Eastern Standard Time", "-0500, GMT-05:00", summerDate);
+        verifyFormatTimezone("EST", "EST, Eastern Standard Time", "-0500, GMT-05:00", winterDate);
 
         verifyFormatTimezone("GMT+14", "GMT+14:00, GMT+14:00", "+1400, GMT+14:00", summerDate);
         verifyFormatTimezone("GMT+14", "GMT+14:00, GMT+14:00", "+1400, GMT+14:00", winterDate);
diff --git a/harmony-tests/src/test/java/org/apache/harmony/tests/java/text/Support_SimpleDateFormat.java b/harmony-tests/src/test/java/org/apache/harmony/tests/java/text/Support_SimpleDateFormat.java
index d050e83..ab80117 100644
--- a/harmony-tests/src/test/java/org/apache/harmony/tests/java/text/Support_SimpleDateFormat.java
+++ b/harmony-tests/src/test/java/org/apache/harmony/tests/java/text/Support_SimpleDateFormat.java
@@ -65,7 +65,7 @@
     textBuffer.append("AD AD 1999 99 1999 9 09 Sep September 13 13 013 ");
     textBuffer.append("17 17 017 17 17 017 5 05 005 19 019 1 01 001 0 00 000 Mon Monday ");
     textBuffer.append("256 256 256 2 02 38 038 3 003 ");
-    textBuffer.append("PM  PM  5 005 GMT-05:00 GMT-05:00 -0500 GMT-05:00");
+    textBuffer.append("PM  PM  5 005 EST Eastern Standard Time -0500 GMT-05:00");
 
     // to avoid passing the huge StringBuffer each time.
     super.text = textBuffer.toString();
@@ -89,7 +89,7 @@
     t_FormatWithField(14, format, date, null, Field.WEEK_OF_MONTH, 137, 138);
     t_FormatWithField(15, format, date, null, Field.AM_PM, 143, 145);
     t_FormatWithField(16, format, date, null, Field.HOUR0, 151, 152);
-    t_FormatWithField(17, format, date, null, Field.TIME_ZONE, 157, 166);
+    t_FormatWithField(17, format, date, null, Field.TIME_ZONE, 157, 160);
 
     // test fields that are not included in the formatted text
     t_FormatWithField(18, format, date, null, NumberFormat.Field.EXPONENT_SIGN, 0, 0);
@@ -97,10 +97,10 @@
     // test with simple example
     format.applyPattern("h:m z");
 
-    super.text = "5:19 GMT-05:00";
+    super.text = "5:19 EST";
     t_FormatWithField(21, format, date, null, Field.HOUR1, 0, 1);
     t_FormatWithField(22, format, date, null, Field.MINUTE, 2, 4);
-    t_FormatWithField(23, format, date, null, Field.TIME_ZONE, 5, 14);
+    t_FormatWithField(23, format, date, null, Field.TIME_ZONE, 5, 8);
 
     // test fields that are not included in the formatted text
     t_FormatWithField(24, format, date, null, Field.ERA, 0, 0);
@@ -123,7 +123,7 @@
 
     // test with simple example with pattern char Z
     format.applyPattern("h:m Z z");
-    super.text = "5:19 -0500 GMT-05:00";
+    super.text = "5:19 -0500 EST";
     t_FormatWithField(40, format, date, null, Field.HOUR1, 0, 1);
     t_FormatWithField(41, format, date, null, Field.MINUTE, 2, 4);
     t_FormatWithField(42, format, date, null, Field.TIME_ZONE, 5, 10);
@@ -184,7 +184,7 @@
     Vector<FieldContainer> v = new Vector<FieldContainer>();
     v.add(new FieldContainer(0, 1, Field.HOUR1));
     v.add(new FieldContainer(2, 4, Field.MINUTE));
-    v.add(new FieldContainer(5, 14, Field.TIME_ZONE));
+    v.add(new FieldContainer(5, 8, Field.TIME_ZONE));
     return v;
   }
 
@@ -249,10 +249,10 @@
     v.add(new FieldContainer(147, 149, Field.AM_PM));
     v.add(new FieldContainer(151, 152, Field.HOUR0));
     v.add(new FieldContainer(153, 156, Field.HOUR0));
-    v.add(new FieldContainer(157, 166, Field.TIME_ZONE));
-    v.add(new FieldContainer(167, 176, Field.TIME_ZONE));
-    v.add(new FieldContainer(177, 182, Field.TIME_ZONE));
-    v.add(new FieldContainer(183, 192, Field.TIME_ZONE));
+    v.add(new FieldContainer(157, 160, Field.TIME_ZONE));
+    v.add(new FieldContainer(161, 182, Field.TIME_ZONE));
+    v.add(new FieldContainer(183, 188, Field.TIME_ZONE));
+    v.add(new FieldContainer(189, 198, Field.TIME_ZONE));
     return v;
   }
 }
diff --git a/harmony-tests/src/test/java/org/apache/harmony/tests/java/util/DateTest.java b/harmony-tests/src/test/java/org/apache/harmony/tests/java/util/DateTest.java
index f3ad743..0cb92c6 100644
--- a/harmony-tests/src/test/java/org/apache/harmony/tests/java/util/DateTest.java
+++ b/harmony-tests/src/test/java/org/apache/harmony/tests/java/util/DateTest.java
@@ -318,11 +318,11 @@
         cal.clear();
         cal.set(1969, Calendar.JANUARY, 12, 1, 0);
         assertTrue("Wrong parsed date 3", d.equals(cal.getTime()));
-        d = new Date(Date.parse("6:45:13 3/2/1200 MST"));
+        d = new Date(Date.parse("6:45:13 3/2/1900 MST"));
         cal.setTimeZone(TimeZone.getTimeZone("MST"));
         cal.clear();
-        cal.set(1200, 2, 2, 6, 45, 13);
-        assertTrue("Wrong parsed date 4", d.equals(cal.getTime()));
+        cal.set(1900, 2, 2, 6, 45, 13);
+        assertEquals("Wrong parsed date 4", d, cal.getTime());
         d = new Date(Date.parse("Mon, 22 Nov 1999 12:52:06 GMT"));
         cal.setTimeZone(TimeZone.getTimeZone("GMT"));
         cal.clear();
diff --git a/luni/src/test/java/libcore/java/util/TimeZoneTest.java b/luni/src/test/java/libcore/java/util/TimeZoneTest.java
index f871da1..9cd36ca 100644
--- a/luni/src/test/java/libcore/java/util/TimeZoneTest.java
+++ b/luni/src/test/java/libcore/java/util/TimeZoneTest.java
@@ -72,7 +72,7 @@
         // explicit transition at Integer.MIN_VALUE with zic 2019a and 2019a data.
         TimeZone tz = TimeZone.getTimeZone("CET");
 
-        long firstTransitionTimeMillis = -1693706400000L; // Apr 30, 1916 22:00:00 GMT
+        long firstTransitionTimeMillis = -1693702800000L; // Apr 30, 1916 23:00:00 GMT
         assertEquals(7200000L, tz.getOffset(firstTransitionTimeMillis));
         assertTrue(tz.inDaylightTime(new Date(firstTransitionTimeMillis)));
 
diff --git a/ojluni/src/test/java/time/test/java/time/format/TestUnicodeExtension.java b/ojluni/src/test/java/time/test/java/time/format/TestUnicodeExtension.java
index effa6e6..46771b2 100644
--- a/ojluni/src/test/java/time/test/java/time/format/TestUnicodeExtension.java
+++ b/ojluni/src/test/java/time/test/java/time/format/TestUnicodeExtension.java
@@ -405,7 +405,7 @@
             {"cnurc", "Asia/Urumqi"},
             {"cobog", "America/Bogota"},
             {"crsjo", "America/Costa_Rica"},
-            {"cst6cdt", "CST6CDT"},
+            {"cst6cdt", "America/Chicago"},
             {"cuhav", "America/Havana"},
             {"cvrai", "Atlantic/Cape_Verde"},
             {"cxxch", "Indian/Christmas"},
@@ -427,7 +427,7 @@
             {"esceu", "Africa/Ceuta"},
             {"eslpa", "Atlantic/Canary"},
             {"esmad", "Europe/Madrid"},
-            {"est5edt", "EST5EDT"},
+            {"est5edt", "America/New_York"},
             {"etadd", "Africa/Addis_Ababa"},
             {"fihel", "Europe/Helsinki"},
             {"fimhq", "Europe/Mariehamn"},
@@ -524,7 +524,7 @@
             {"mkskp", "Europe/Skopje"},
             {"mlbko", "Africa/Bamako"},
             {"mmrgn", "Asia/Rangoon"},
-            {"mncoq", "Asia/Choibalsan"},
+            {"mncoq", "Asia/Ulaanbaatar"},
             {"mnhvd", "Asia/Hovd"},
             {"mnuln", "Asia/Ulaanbaatar"},
             {"momfm", "Asia/Macau"},
@@ -532,7 +532,7 @@
             {"mqfdf", "America/Martinique"},
             {"mrnkc", "Africa/Nouakchott"},
             {"msmni", "America/Montserrat"},
-            {"mst7mdt", "MST7MDT"},
+            {"mst7mdt", "America/Denver"},
             {"mtmla", "Europe/Malta"},
             {"muplu", "Indian/Mauritius"},
             {"mvmle", "Indian/Maldives"},
@@ -578,7 +578,7 @@
             {"pmmqc", "America/Miquelon"},
             {"pnpcn", "Pacific/Pitcairn"},
             {"prsju", "America/Puerto_Rico"},
-            {"pst8pdt", "PST8PDT"},
+            {"pst8pdt", "America/Los_Angeles"},
             {"ptfnc", "Atlantic/Madeira"},
             {"ptlis", "Europe/Lisbon"},
             {"ptpdl", "Atlantic/Azores"},