diff options
| author | Albin <albin@mullvad.net> | 2024-08-23 10:27:49 +0200 |
|---|---|---|
| committer | Albin <albin@mullvad.net> | 2024-08-23 10:27:49 +0200 |
| commit | 97ee66d64d9e5ef9265eae3fe74464d1fc807dd4 (patch) | |
| tree | 8506abc903055521c1110e0ec8cb428e1431c6ba /android/test | |
| parent | 67486d316b94262cb2e478765f4234b5d12afcba (diff) | |
| parent | 4c7a6fa7941519ea637345cf6521edd067a6aa3a (diff) | |
| download | mullvadvpn-97ee66d64d9e5ef9265eae3fe74464d1fc807dd4.tar.xz mullvadvpn-97ee66d64d9e5ef9265eae3fe74464d1fc807dd4.zip | |
Merge branch 'ensure-all-potential-grpc-errors-are-wrapped-droid-1170'
Diffstat (limited to 'android/test')
| -rw-r--r-- | android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/ManagementServiceTest.kt | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/ManagementServiceTest.kt b/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/ManagementServiceTest.kt new file mode 100644 index 0000000000..a649a3ac5d --- /dev/null +++ b/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/ManagementServiceTest.kt @@ -0,0 +1,31 @@ +package net.mullvad.mullvadvpn.test.arch + +import com.lemonappdev.konsist.api.Konsist +import com.lemonappdev.konsist.api.ext.list.modifierprovider.withPublicOrDefaultModifier +import com.lemonappdev.konsist.api.verify.assertTrue +import org.junit.jupiter.api.Test + +class ManagementServiceTest { + + @Test + fun `ensure all public functions are returning Either`() { + managementServiceClass() + .functions() + .withPublicOrDefaultModifier() + .filter { excludedFunctions().contains(it.name).not() } + .assertTrue { it.returnType?.name?.startsWith(EITHER_CLASS_NAME) == true } + } + + private fun managementServiceClass() = + Konsist.scopeFromProject().classes().first { it.name == MANAGEMENT_SERVICE_CLASS_NAME } + + private fun excludedFunctions() = setOf(START, STOP, ENTER_IDLE) + + companion object { + private const val MANAGEMENT_SERVICE_CLASS_NAME = "ManagementService" + private const val START = "start" + private const val STOP = "stop" + private const val ENTER_IDLE = "enterIdle" + private const val EITHER_CLASS_NAME = "Either" + } +} |
