summaryrefslogtreecommitdiffhomepage
path: root/android/test
diff options
context:
space:
mode:
authorJonatan Rhodin <jonatan.rhodin@mullvad.net>2025-08-05 09:42:55 +0200
committerJonatan Rhodin <jonatan.rhodin@mullvad.net>2025-08-05 09:42:55 +0200
commit25d23887cc7f4fdd2e11cb39366489d49f33eab7 (patch)
tree75a71833287de24104ee99b4e19b5a90f74bb3e2 /android/test
parent828e49361078e7b617774af92390b4d276711a5b (diff)
downloadmullvadvpn-25d23887cc7f4fdd2e11cb39366489d49f33eab7.tar.xz
mullvadvpn-25d23887cc7f4fdd2e11cb39366489d49f33eab7.zip
Add konsist test to ensure all view model test uses TestCoroutineRule
Diffstat (limited to 'android/test')
-rw-r--r--android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/classes/ClassTest.kt18
1 files changed, 18 insertions, 0 deletions
diff --git a/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/classes/ClassTest.kt b/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/classes/ClassTest.kt
index c7e3cc54ed..4e8de563fd 100644
--- a/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/classes/ClassTest.kt
+++ b/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/classes/ClassTest.kt
@@ -27,4 +27,22 @@ class ClassTest {
it.packagee?.name?.startsWith("net.mullvad.mullvadvpn") ?: false
}
.assertTrue { it.hasNameEndingWith("Test") }
+
+ @Test
+ fun `ensure that all view model test classes are annotated with TestCoroutineRule`() =
+ Konsist.scopeFromTest()
+ .classes(includeNested = false)
+ .filter {
+ // Only include classes that are view model tests
+ // We want to ignore the class "ViewModelTest" which contains konsist tests
+ it.name.contains(".+ViewModelTest".toRegex())
+ }
+ .assertTrue {
+ it.hasAnnotation { annotation ->
+ annotation.name == "ExtendWith" &&
+ annotation.arguments.any { argument ->
+ argument.value == "TestCoroutineRule::class"
+ }
+ }
+ }
}