diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-01-08 02:07:24 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-01-08 02:07:24 +0000 |
commit | 7703bd780d49a24057487a9e89a2905ea26b7ff6 (patch) | |
tree | 4449efc353bd5cebfdca370e453083982ea9fbb9 | |
parent | 41098a903e90576b2e63be284b7f23d77d23ffae (diff) | |
parent | e42572a24e64f8511dbbf2e83f79fb08303de1a0 (diff) | |
download | libcore-android12L-s1-release.tar.gz |
Snap for 8055317 from e42572a24e64f8511dbbf2e83f79fb08303de1a0 to sc-v2-releaseandroid-vts-12.1_r1android-s-v2-beta-3android-platform-12.1.0_r9android-platform-12.1.0_r8android-platform-12.1.0_r7android-platform-12.1.0_r6android-platform-12.1.0_r5android-platform-12.1.0_r4android-platform-12.1.0_r3android-platform-12.1.0_r27android-platform-12.1.0_r26android-platform-12.1.0_r25android-platform-12.1.0_r24android-platform-12.1.0_r23android-platform-12.1.0_r22android-platform-12.1.0_r21android-platform-12.1.0_r20android-platform-12.1.0_r2android-platform-12.1.0_r19android-platform-12.1.0_r18android-platform-12.1.0_r17android-platform-12.1.0_r16android-platform-12.1.0_r15android-platform-12.1.0_r14android-platform-12.1.0_r13android-platform-12.1.0_r12android-platform-12.1.0_r11android-platform-12.1.0_r10android-platform-12.1.0_r1android-cts-12.1_r1android-12.1.0_r6android-12.1.0_r5android-12.1.0_r4android-12.1.0_r3android-12.1.0_r27android-12.1.0_r2android-12.1.0_r1android12L-s1-releaseandroid12L-releaseandroid12L-platform-releaseandroid-s-v2-beta-3
Change-Id: I439b97c65b732136f4da8800e6727de3dbb53a1a
-rw-r--r-- | luni/src/test/java/libcore/java/text/DateFormatSymbolsTest.java | 25 | ||||
-rw-r--r-- | luni/src/test/java/libcore/java/util/TimeZoneTest.java | 10 |
2 files changed, 29 insertions, 6 deletions
diff --git a/luni/src/test/java/libcore/java/text/DateFormatSymbolsTest.java b/luni/src/test/java/libcore/java/text/DateFormatSymbolsTest.java index 3ea43784ccd..baa3344efe5 100644 --- a/luni/src/test/java/libcore/java/text/DateFormatSymbolsTest.java +++ b/luni/src/test/java/libcore/java/text/DateFormatSymbolsTest.java @@ -156,21 +156,40 @@ public class DateFormatSymbolsTest extends junit.framework.TestCase { } // http://b/7955614 - public void test_getZoneStrings_Apia() throws Exception { + public void test_getZoneStrings_Apia() { String[][] array = DateFormatSymbols.getInstance(Locale.US).getZoneStrings(); + for (int i = 0; i < array.length; ++i) { String[] row = array[i]; // Pacific/Apia is somewhat arbitrary; we just want a zone we have to generate // "GMT" strings for the short names. if (row[0].equals("Pacific/Apia")) { + TimeZone apiaTz = TimeZone.getTimeZone("Pacific/Apia"); assertEquals("Apia Standard Time", row[1]); - assertEquals("GMT+13:00", row[2]); + assertEquals(formattedStandardTimeOffset(apiaTz), row[2]); assertEquals("Apia Daylight Time", row[3]); - assertEquals("GMT+14:00", row[4]); + assertEquals(formattedDstOffset(apiaTz), row[4]); } } } + private static String formattedStandardTimeOffset(TimeZone tz) { + return formattedOffset(tz.getRawOffset()); + } + + private static String formattedDstOffset(TimeZone tz) { + return formattedOffset(tz.getRawOffset() + tz.getDSTSavings()); + } + + private static String formattedOffset(int offset) { + String pattern = "GMT%+d:%02d"; + int millisInHour = 60 * 60 * 1_000; + int hours = offset / millisInHour; + int minutes = (offset - hours * millisInHour) / 1_000 / 60; + + return String.format(pattern, hours, minutes); + } + public void test_setZoneStrings_checks_dimensions() throws Exception { DateFormatSymbols dfs = DateFormatSymbols.getInstance(); String[][] zoneStrings = dfs.getZoneStrings(); diff --git a/luni/src/test/java/libcore/java/util/TimeZoneTest.java b/luni/src/test/java/libcore/java/util/TimeZoneTest.java index a6865343d99..9b8ea4723b1 100644 --- a/luni/src/test/java/libcore/java/util/TimeZoneTest.java +++ b/luni/src/test/java/libcore/java/util/TimeZoneTest.java @@ -319,12 +319,16 @@ public class TimeZoneTest extends TestCase { } // http://b/7955614 - public void testApia() throws Exception { + public void testApia() { TimeZone tz = TimeZone.getTimeZone("Pacific/Apia"); assertEquals("Apia Daylight Time", tz.getDisplayName(true, TimeZone.LONG, Locale.US)); assertEquals("Apia Standard Time", tz.getDisplayName(false, TimeZone.LONG, Locale.US)); - assertEquals("GMT+14:00", tz.getDisplayName(true, TimeZone.SHORT, Locale.US)); - assertEquals("GMT+13:00", tz.getDisplayName(false, TimeZone.SHORT, Locale.US)); + + long samoaStandardTime = 1630315635000L; // 30 Aug 2021 + long samoaDst = 1614504435000L; // 28 Feb 2021 + + assertEquals(13 * 60 * 60 * 1_000, tz.getOffset(samoaStandardTime)); + assertEquals(14 * 60 * 60 * 1_000, tz.getOffset(samoaDst)); } private static boolean isGmtString(String s) { |