diff --git a/src/commonMain/kotlin/dev/inmo/krontab/internal/NearDateTimeCalculator.kt b/src/commonMain/kotlin/dev/inmo/krontab/internal/NearDateTimeCalculator.kt index 7983935..714a3f6 100644 --- a/src/commonMain/kotlin/dev/inmo/krontab/internal/NearDateTimeCalculator.kt +++ b/src/commonMain/kotlin/dev/inmo/krontab/internal/NearDateTimeCalculator.kt @@ -28,10 +28,10 @@ internal class CommonNearDateTimeCalculator( ): Pair? { val currentData = partGetter(relativelyTo) val greaterOrEquals = times.firstOrNull { it >= currentData } - val newDateTime = if (greaterOrEquals == null) { - partSetter(relativelyTo, times.first()) ?: return null - } else { - partSetter(relativelyTo, greaterOrEquals) ?: return null + val newDateTime = when (greaterOrEquals) { + null -> partSetter(relativelyTo, times.first()) ?: return null + currentData -> relativelyTo + else -> partSetter(relativelyTo, greaterOrEquals) ?: return null } return if (newDateTime == relativelyTo) { relativelyTo to false diff --git a/src/commonTest/kotlin/dev/inmo/krontab/utils/StringParseTest.kt b/src/commonTest/kotlin/dev/inmo/krontab/utils/StringParseTest.kt index 7eae687..64deafd 100644 --- a/src/commonTest/kotlin/dev/inmo/krontab/utils/StringParseTest.kt +++ b/src/commonTest/kotlin/dev/inmo/krontab/utils/StringParseTest.kt @@ -80,7 +80,7 @@ class StringParseTest { } @Test fun testThatTimezoneCorrectlyDeserialized() { - val now = DateTimeTz.nowLocal() + val now = DateTime.now().copy(milliseconds = 0).local runTest { for (i in 0 .. 1339) {