From 9e0755fe85a0f2ee7726c9e2a2b924ad6d8d05be Mon Sep 17 00:00:00 2001 From: alperozturk96 Date: Fri, 29 May 2026 09:58:34 +0300 Subject: [PATCH 1/2] fix(e2ee): version detection Signed-off-by: alperozturk96 --- .../lib/resources/status/E2EVersion.kt | 18 ++--- .../lib/resources/status/E2EVersionTests.kt | 72 +++++++++++++++++++ 2 files changed, 82 insertions(+), 8 deletions(-) create mode 100644 library/src/test/java/com/owncloud/android/lib/resources/status/E2EVersionTests.kt diff --git a/library/src/main/java/com/owncloud/android/lib/resources/status/E2EVersion.kt b/library/src/main/java/com/owncloud/android/lib/resources/status/E2EVersion.kt index c54175fe11..3ec1ffa63a 100644 --- a/library/src/main/java/com/owncloud/android/lib/resources/status/E2EVersion.kt +++ b/library/src/main/java/com/owncloud/android/lib/resources/status/E2EVersion.kt @@ -8,17 +8,19 @@ package com.owncloud.android.lib.resources.status enum class E2EVersion( - val value: String + val values: List ) { - V1_0("1.0"), - V1_1("1.1"), - V1_2("1.2"), - V2_0("2.0"), - V2_1("2.1"), - UNKNOWN(""); + V1_0(listOf("1", "1.0")), + V1_1(listOf("1.1")), + V1_2(listOf("1.2")), + V2_0(listOf("2", "2.0")), + V2_1(listOf("2.1")), + UNKNOWN(listOf("")); + + val value: String = values.last() companion object { @JvmStatic - fun fromValue(v: String): E2EVersion = entries.firstOrNull { it.value == v } ?: UNKNOWN + fun fromValue(v: String?): E2EVersion = entries.find { v in it.values } ?: UNKNOWN } } diff --git a/library/src/test/java/com/owncloud/android/lib/resources/status/E2EVersionTests.kt b/library/src/test/java/com/owncloud/android/lib/resources/status/E2EVersionTests.kt new file mode 100644 index 0000000000..154b4d562a --- /dev/null +++ b/library/src/test/java/com/owncloud/android/lib/resources/status/E2EVersionTests.kt @@ -0,0 +1,72 @@ +/* + * Nextcloud Android Library + * + * SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors + * SPDX-License-Identifier: MIT + */ +package com.owncloud.android.lib.resources.status + +import org.junit.Assert.assertEquals +import org.junit.Test + +class E2EVersionTests { + @Test + fun testFromValueWhenGiven1ShouldReturnTrue() { + assertEquals(E2EVersion.V1_0, E2EVersion.fromValue("1")) + } + + @Test + fun testFromValueWhenGiven1Dot0ShouldReturnTrue() { + assertEquals(E2EVersion.V1_0, E2EVersion.fromValue("1.0")) + } + + @Test + fun testFromValueWhenGiven1Dot1ShouldReturnTrue() { + assertEquals(E2EVersion.V1_1, E2EVersion.fromValue("1.1")) + } + + @Test + fun testFromValueWhenGiven1Dot2ShouldReturnTrue() { + assertEquals(E2EVersion.V1_2, E2EVersion.fromValue("1.2")) + } + + @Test + fun testFromValueWhenGiven2ShouldReturnTrue() { + assertEquals(E2EVersion.V2_0, E2EVersion.fromValue("2")) + } + + @Test + fun testFromValueWhenGiven2Dot0ShouldReturnTrue() { + assertEquals(E2EVersion.V2_0, E2EVersion.fromValue("2.0")) + } + + @Test + fun testFromValueWhenGiven2Dot1ShouldReturnTrue() { + assertEquals(E2EVersion.V2_1, E2EVersion.fromValue("2.1")) + } + + @Test + fun testFromValueWhenGivenEmptyShouldReturnTrue() { + assertEquals(E2EVersion.UNKNOWN, E2EVersion.fromValue("")) + } + + @Test + fun testFromValueWhenGivenUnknownShouldReturnTrue() { + assertEquals(E2EVersion.UNKNOWN, E2EVersion.fromValue("3")) + } + + @Test + fun testFromValueWhenGivenNullShouldReturnTrue() { + assertEquals(E2EVersion.UNKNOWN, E2EVersion.fromValue(null)) + } + + @Test + fun testValues() { + assertEquals(E2EVersion.V1_0.value, "1.0") + assertEquals(E2EVersion.V1_1.value, "1.1") + assertEquals(E2EVersion.V1_2.value, "1.2") + assertEquals(E2EVersion.V2_0.value, "2.0") + assertEquals(E2EVersion.V2_1.value, "2.1") + assertEquals(E2EVersion.UNKNOWN.value, "") + } +} From f1df19b52cfb508f9ac6db7587b0d5419f3c02fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alper=20=C3=96zt=C3=BCrk?= <67455295+alperozturk96@users.noreply.github.com> Date: Fri, 29 May 2026 10:00:43 +0300 Subject: [PATCH 2/2] Apply suggestion from @alperozturk96 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Alper Öztürk <67455295+alperozturk96@users.noreply.github.com> --- .../owncloud/android/lib/resources/status/E2EVersionTests.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library/src/test/java/com/owncloud/android/lib/resources/status/E2EVersionTests.kt b/library/src/test/java/com/owncloud/android/lib/resources/status/E2EVersionTests.kt index 154b4d562a..7a4fb9c7d8 100644 --- a/library/src/test/java/com/owncloud/android/lib/resources/status/E2EVersionTests.kt +++ b/library/src/test/java/com/owncloud/android/lib/resources/status/E2EVersionTests.kt @@ -1,7 +1,7 @@ /* * Nextcloud Android Library * - * SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors + * SPDX-FileCopyrightText: 2026 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: MIT */ package com.owncloud.android.lib.resources.status