diff --git a/src/main/java/org/mtransit/commons/DateUtils.kt b/src/main/java/org/mtransit/commons/DateUtils.kt index e59c016..df0dd62 100644 --- a/src/main/java/org/mtransit/commons/DateUtils.kt +++ b/src/main/java/org/mtransit/commons/DateUtils.kt @@ -6,7 +6,7 @@ import java.util.Date object DateUtils { @JvmStatic - fun addYears(date: Date, years: Int) = + fun addYears(date: Date, years: Int): Date = Calendar.getInstance().apply { time = date add(Calendar.YEAR, years) diff --git a/src/main/java/org/mtransit/parser/DefaultAgencyTools.java b/src/main/java/org/mtransit/parser/DefaultAgencyTools.java index 86de091..f9ce518 100644 --- a/src/main/java/org/mtransit/parser/DefaultAgencyTools.java +++ b/src/main/java/org/mtransit/parser/DefaultAgencyTools.java @@ -601,9 +601,13 @@ public String getRouteShortName(@NotNull GRoute gRoute) { return gRoute.getRouteLongNameOrDefault(); } //noinspection DiscouragedApi - final String routeShortName = + String routeShortName = useRouteIdForRouteShortName() ? gRoute.getRouteId() : gRoute.getRouteShortName(); + if (org.mtransit.commons.StringUtils.isEmpty(routeShortName) + && Configs.getRouteConfig().getUseRouteLongNameForMissingRouteShortName()) { + routeShortName = gRoute.getRouteLongNameOrDefault(); + } if (org.mtransit.commons.StringUtils.isEmpty(routeShortName)) { return provideMissingRouteShortName(gRoute); } @@ -628,9 +632,6 @@ public String provideMissingRouteShortName(@NotNull GRoute gRoute) { if (routeShortNameFromConfig != null) { return routeShortNameFromConfig; } - if (Configs.getRouteConfig().getUseRouteLongNameForMissingRouteShortName()) { - return gRoute.getRouteLongNameOrDefault(); - } throw new MTLog.Fatal("No default route short name for %s!", gRoute.toStringPlus()); } diff --git a/src/test/java/org/mtransit/commons/DateUtilsTest.kt b/src/test/java/org/mtransit/commons/DateUtilsTest.kt index d99824b..ee3692e 100644 --- a/src/test/java/org/mtransit/commons/DateUtilsTest.kt +++ b/src/test/java/org/mtransit/commons/DateUtilsTest.kt @@ -1,17 +1,33 @@ package org.mtransit.commons import java.util.Date +import java.util.TimeZone +import kotlin.test.AfterTest +import kotlin.test.BeforeTest import kotlin.test.Test import kotlin.test.assertEquals class DateUtilsTest { + private var originalTimeZone: TimeZone = TimeZone.getDefault() + + @BeforeTest + fun setUp() { + originalTimeZone = TimeZone.getDefault() + TimeZone.setDefault(TimeZone.getTimeZone("UTC")) + } + + @AfterTest + fun tearDown() { + TimeZone.setDefault(originalTimeZone) + } + @Test fun test_getEndOfYear() { Date(1781570388_000L).let { // Monday, June 15, 2026 at 20:39:48 UTC-04:00 DST DateUtils.getEndOfYear(it) }.let { result -> - assertEquals(1798779599_999L, result.time) + assertEquals(1798761599_999L, result.time) } } }