diff options
| author | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2024-01-16 10:37:39 +0100 |
|---|---|---|
| committer | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2024-01-16 10:37:39 +0100 |
| commit | ee9597c4628773fcc6cc93306bab5e01ce2401f1 (patch) | |
| tree | b31dc3da5c2089430d887a2ea3662adfba364aca /android | |
| parent | 2ddea954bd1f4bfb351d9ae6e93440be000a17a6 (diff) | |
| parent | 90e0283595e61de703d93cdc8871d7b16ae5f80f (diff) | |
| download | mullvadvpn-ee9597c4628773fcc6cc93306bab5e01ce2401f1.tar.xz mullvadvpn-ee9597c4628773fcc6cc93306bab5e01ce2401f1.zip | |
Merge branch 'migrate-missed-junit4-test-and-try-to-prevent-junit4-for-droid-636'
Diffstat (limited to 'android')
7 files changed, 53 insertions, 20 deletions
diff --git a/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/SplitTunnelingScreenTest.kt b/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/SplitTunnelingScreenTest.kt index dc1362ad37..12e06b009d 100644 --- a/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/SplitTunnelingScreenTest.kt +++ b/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/SplitTunnelingScreenTest.kt @@ -14,7 +14,7 @@ import net.mullvad.mullvadvpn.applist.AppData import net.mullvad.mullvadvpn.applist.ApplicationsIconManager import net.mullvad.mullvadvpn.compose.setContentWithTheme import net.mullvad.mullvadvpn.compose.state.SplitTunnelingUiState -import org.junit.After +import org.junit.jupiter.api.AfterEach import org.junit.jupiter.api.BeforeEach import org.junit.jupiter.api.Test import org.junit.jupiter.api.extension.RegisterExtension @@ -41,7 +41,7 @@ class SplitTunnelingScreenTest { loadKoinModules(testModule) } - @After + @AfterEach fun tearDown() { unloadKoinModules(testModule) unmockkAll() diff --git a/android/gradle/verification-metadata.xml b/android/gradle/verification-metadata.xml index 407f9ac4ae..eb02dba16a 100644 --- a/android/gradle/verification-metadata.xml +++ b/android/gradle/verification-metadata.xml @@ -925,6 +925,11 @@ <sha256 value="33193135a64fe21fa2c35eec6688f1a76e512606c0fc83dc1b689e37add7732a" origin="Generated by Gradle"/> </artifact> </component> + <component group="androidx.lifecycle" name="lifecycle-common" version="2.0.0"> + <artifact name="lifecycle-common-2.0.0.jar"> + <sha256 value="7bad7a188804adea6fa1f35d5ef99b705f20bd93ecadde484760ff86b535fefc" origin="Generated by Gradle"/> + </artifact> + </component> <component group="androidx.lifecycle" name="lifecycle-common" version="2.3.1"> <artifact name="lifecycle-common-2.3.1.jar"> <sha256 value="15848fb56db32f4c7cdc72b324003183d52a4884d6bf09be708ac7f587d139b5" origin="Generated by Gradle"/> @@ -1323,6 +1328,11 @@ <sha256 value="c0754928effe1968c3a9a7b55d1dfc7ceb1e1e7c9f3f09f98afd42431f712492" origin="Generated by Gradle"/> </artifact> </component> + <component group="androidx.test" name="core" version="1.4.0"> + <artifact name="core-1.4.0.aar"> + <sha256 value="671284e62e393f16ceae1a99a3a9a07bf1aacda29f8fe7b6b884355ef34c09cf" origin="Generated by Gradle"/> + </artifact> + </component> <component group="androidx.test" name="core" version="1.5.0"> <artifact name="core-1.5.0.aar"> <sha256 value="2c06715c0d0843cee2143ab8bb322bb3f34d5247630402fc8c1b6a0eafa15b9f" origin="Generated by Gradle"/> @@ -3592,11 +3602,6 @@ <sha256 value="870d35fd266b2daf64c1080fe51824d3c368f7995384a8d7c5fc2fdc40eb7b3a" origin="Generated by Gradle"/> </artifact> </component> - <component group="org.jetbrains.kotlin" name="kotlin-stdlib-jdk7" version="1.6.20"> - <artifact name="kotlin-stdlib-jdk7-1.6.20.jar"> - <sha256 value="aa2fa2e81355c4d98dd97da2169bf401f842261378f5b1cbea1aa11855d67620" origin="Generated by Gradle"/> - </artifact> - </component> <component group="org.jetbrains.kotlin" name="kotlin-stdlib-jdk7" version="1.6.21"> <artifact name="kotlin-stdlib-jdk7-1.6.21.jar"> <sha256 value="f1b0634dbb94172038463020bb2dd45ca26849f8ce29d625acb0f1569d11dbee" origin="Generated by Gradle"/> @@ -3642,11 +3647,6 @@ <sha256 value="ab0547c495953214a5f2b28150014f4e02133678d52b77d76375ea235e443dbd" origin="Generated by Gradle"/> </artifact> </component> - <component group="org.jetbrains.kotlin" name="kotlin-stdlib-jdk8" version="1.6.20"> - <artifact name="kotlin-stdlib-jdk8-1.6.20.jar"> - <sha256 value="fdab1bf120e2b5e7ab6d7888e9ebc024ec6b8ca729361296395dab634b213695" origin="Generated by Gradle"/> - </artifact> - </component> <component group="org.jetbrains.kotlin" name="kotlin-stdlib-jdk8" version="1.6.21"> <artifact name="kotlin-stdlib-jdk8-1.6.21.jar"> <sha256 value="dab45489b47736d59fce44b80676f1947a9b6bcab10fd60e878a83bd82a6954c" origin="Generated by Gradle"/> diff --git a/android/lib/ipc/build.gradle.kts b/android/lib/ipc/build.gradle.kts index 85b15dacaf..35fa3c4f1e 100644 --- a/android/lib/ipc/build.gradle.kts +++ b/android/lib/ipc/build.gradle.kts @@ -2,6 +2,7 @@ plugins { id(Dependencies.Plugin.androidLibraryId) id(Dependencies.Plugin.kotlinAndroidId) id(Dependencies.Plugin.kotlinParcelizeId) + id(Dependencies.Plugin.junit5) version Versions.Plugin.junit5 } android { @@ -33,6 +34,8 @@ dependencies { implementation(Dependencies.Kotlin.stdlib) implementation(Dependencies.KotlinX.coroutinesAndroid) + androidTestImplementation(Dependencies.junitApi) + androidTestImplementation(Dependencies.junitEngine) androidTestImplementation(Dependencies.AndroidX.testRunner) androidTestImplementation(Dependencies.Kotlin.test) } diff --git a/android/lib/ipc/src/androidTest/kotlin/net/mullvad/mullvadvpn/lib/ipc/HandlerFlowTest.kt b/android/lib/ipc/src/androidTest/kotlin/net/mullvad/mullvadvpn/lib/ipc/HandlerFlowTest.kt index e3ad447cc2..a125af6059 100644 --- a/android/lib/ipc/src/androidTest/kotlin/net/mullvad/mullvadvpn/lib/ipc/HandlerFlowTest.kt +++ b/android/lib/ipc/src/androidTest/kotlin/net/mullvad/mullvadvpn/lib/ipc/HandlerFlowTest.kt @@ -9,7 +9,7 @@ import kotlinx.coroutines.flow.take import kotlinx.coroutines.flow.toList import kotlinx.coroutines.runBlocking import kotlinx.parcelize.Parcelize -import org.junit.Test +import org.junit.jupiter.api.Test class HandlerFlowTest { val looper by lazy { Looper.getMainLooper() } diff --git a/android/test/arch/build.gradle.kts b/android/test/arch/build.gradle.kts index 18503fa362..2665083cb0 100644 --- a/android/test/arch/build.gradle.kts +++ b/android/test/arch/build.gradle.kts @@ -1,6 +1,7 @@ plugins { id(Dependencies.Plugin.androidLibraryId) id(Dependencies.Plugin.kotlinAndroidId) + id(Dependencies.Plugin.junit5) version Versions.Plugin.junit5 } android { @@ -28,6 +29,8 @@ androidComponents { } dependencies { + testRuntimeOnly(Dependencies.junitEngine) + testImplementation(Dependencies.Compose.uiToolingAndroidPreview) testImplementation(Dependencies.AndroidX.appcompat) testImplementation(Dependencies.junitApi) diff --git a/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/JUnitTests.kt b/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/JUnitTests.kt new file mode 100644 index 0000000000..bce85d8f8a --- /dev/null +++ b/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/JUnitTests.kt @@ -0,0 +1,30 @@ +package net.mullvad.mullvadvpn.test.arch + +import com.lemonappdev.konsist.api.Konsist +import com.lemonappdev.konsist.api.verify.assertEmpty +import org.junit.jupiter.api.Test + +class JUnitTests { + + @Test + fun `ensure only junit5 annotations are used for functions`() = + Konsist.scopeFromProject() + .functions() + .filter { + it.annotations.any { annotation -> + annotation.fullyQualifiedName.matches(Regex("org.junit((?!jupiter).)*\$")) + } + } + .assertEmpty() + + @Test + fun `ensure only junit5 annotations are used for classes`() = + Konsist.scopeFromProject() + .classes() + .filter { + it.annotations.any { annotation -> + annotation.fullyQualifiedName.matches(Regex("org.junit((?!jupiter).)*\$")) + } + } + .assertEmpty() +} diff --git a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/LogoutTest.kt b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/LogoutTest.kt index 8552b8a238..95ad9c22f5 100644 --- a/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/LogoutTest.kt +++ b/android/test/e2e/src/main/kotlin/net/mullvad/mullvadvpn/test/e2e/LogoutTest.kt @@ -1,18 +1,15 @@ package net.mullvad.mullvadvpn.test.e2e -import androidx.test.runner.AndroidJUnit4 import androidx.test.uiautomator.By -import junit.framework.Assert.assertNotNull import net.mullvad.mullvadvpn.test.common.extension.findObjectWithTimeout import net.mullvad.mullvadvpn.test.e2e.misc.CleanupAccountTestRule -import org.junit.Rule -import org.junit.Test -import org.junit.runner.RunWith +import org.junit.jupiter.api.Assertions.assertNotNull +import org.junit.jupiter.api.Test +import org.junit.jupiter.api.extension.RegisterExtension -@RunWith(AndroidJUnit4::class) class LogoutTest : EndToEndTest() { - @Rule @JvmField val cleanupAccountTestRule = CleanupAccountTestRule() + @RegisterExtension @JvmField val cleanupAccountTestRule = CleanupAccountTestRule() @Test fun testLogout() { |
