From 13ffe0d9a8123806b0f24121b634206c7f5b4be8 Mon Sep 17 00:00:00 2001 From: "maarten.vercruysse" Date: Fri, 15 Dec 2023 23:13:28 +0100 Subject: [PATCH] Fix lint --- .../it/vercruysse/lemmyapi/dto/CustomDataTypes.kt | 15 ++++----------- app/src/commonTest/kotlin/utils/UtilTest.kt | 10 ++++++++++ 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt index c6e8e83..1f7ea00 100644 --- a/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt +++ b/app/src/commonMain/kotlin/it/vercruysse/lemmyapi/dto/CustomDataTypes.kt @@ -4,6 +4,7 @@ package it.vercruysse.lemmyapi.dto import io.github.z4kn4fein.semver.Version import io.github.z4kn4fein.semver.toVersion +import io.github.z4kn4fein.semver.withoutSuffixes import it.vercruysse.lemmyapi.MINIMUM_API_VERSION import it.vercruysse.lemmyapi.V0_18_0 import it.vercruysse.lemmyapi.V0_19_0 @@ -176,21 +177,13 @@ inline fun getSupportedEntries(instanceVersion: String): List whe * @return A list of supported entries */ inline fun getSupportedEntries(instanceVersion: Version): List where T : Enum, T : VersionTracker { + val ignorePreReleaseVersion = instanceVersion.withoutSuffixes() return enumValues().filter { val max = it.maximumVersion if (max == null) { - instanceVersion >= it.minimumVersion + ignorePreReleaseVersion >= it.minimumVersion } else { - isBetweenVersions(instanceVersion, it.minimumVersion, max) + isBetweenVersions(ignorePreReleaseVersion, it.minimumVersion, max) } } } - -fun main() { - val siteVersion = "0.18.0" - - val supportedEntries = getSupportedEntries(siteVersion) - println(supportedEntries) -} - -// TODO check order of enums diff --git a/app/src/commonTest/kotlin/utils/UtilTest.kt b/app/src/commonTest/kotlin/utils/UtilTest.kt index 0bb7106..42f4d4a 100644 --- a/app/src/commonTest/kotlin/utils/UtilTest.kt +++ b/app/src/commonTest/kotlin/utils/UtilTest.kt @@ -1,5 +1,7 @@ package utils +import it.vercruysse.lemmyapi.dto.SortType +import it.vercruysse.lemmyapi.dto.getSupportedEntries import it.vercruysse.lemmyapi.utils.constructBaseUrl import it.vercruysse.lemmyapi.utils.isBetweenVersions import kotlin.test.Test @@ -34,4 +36,12 @@ class UtilTest { assertEquals("https://211.80.65.20", constructBaseUrl("211.80.65.20")) assertEquals("https://211.80.65.20:8888", constructBaseUrl("211.80.65.20:8888")) } + + @Test + fun shouldIgnorePreReleaseTags() { + val supportedEntries = getSupportedEntries("0.19.0-rc.1") + assertTrue { supportedEntries.contains(SortType.Scaled) } + + assertFalse { getSupportedEntries("0.18.5").contains(SortType.Scaled) } + } }