diff options
| author | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2025-08-05 09:42:55 +0200 |
|---|---|---|
| committer | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2025-08-05 09:42:55 +0200 |
| commit | 25d23887cc7f4fdd2e11cb39366489d49f33eab7 (patch) | |
| tree | 75a71833287de24104ee99b4e19b5a90f74bb3e2 /android | |
| parent | 828e49361078e7b617774af92390b4d276711a5b (diff) | |
| download | mullvadvpn-25d23887cc7f4fdd2e11cb39366489d49f33eab7.tar.xz mullvadvpn-25d23887cc7f4fdd2e11cb39366489d49f33eab7.zip | |
Add konsist test to ensure all view model test uses TestCoroutineRule
Diffstat (limited to 'android')
| -rw-r--r-- | android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/classes/ClassTest.kt | 18 |
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" + } + } + } } |
