summaryrefslogtreecommitdiffhomepage
path: root/android
diff options
context:
space:
mode:
authorDavid Göransson <david.goransson90@gmail.com>2023-09-29 20:10:05 +0200
committerDavid Göransson <david.goransson90@gmail.com>2023-10-02 16:06:03 +0200
commit469e0efbec57ce256973d1329f5a616e2234e742 (patch)
tree719c5caa56eef54ef5b49d55322098f4d0f9905a /android
parent5052cdea50ce6d00a444dfd4c3811cf1dadaeb25 (diff)
downloadmullvadvpn-469e0efbec57ce256973d1329f5a616e2234e742.tar.xz
mullvadvpn-469e0efbec57ce256973d1329f5a616e2234e742.zip
Add test ensure all composables are in compose package
Diffstat (limited to 'android')
-rw-r--r--android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/classes/DataClassTests.kt17
-rw-r--r--android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/compose/ComposeTests.kt17
2 files changed, 34 insertions, 0 deletions
diff --git a/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/classes/DataClassTests.kt b/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/classes/DataClassTests.kt
new file mode 100644
index 0000000000..248eef5a10
--- /dev/null
+++ b/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/classes/DataClassTests.kt
@@ -0,0 +1,17 @@
+package net.mullvad.mullvadvpn.test.arch.classes
+
+import com.lemonappdev.konsist.api.ext.list.modifierprovider.withDataModifier
+import com.lemonappdev.konsist.api.verify.assert
+import net.mullvad.mullvadvpn.test.arch.extensions.projectScope
+import org.junit.Ignore
+import org.junit.Test
+
+class DataClasses {
+ @Ignore("Code needs clean up")
+ @Test
+ fun `data classes use only immutable parameters`() {
+ projectScope().classes(includeNested = true).withDataModifier().assert {
+ it.properties(includeNested = true).all { property -> property.hasValModifier }
+ }
+ }
+}
diff --git a/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/compose/ComposeTests.kt b/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/compose/ComposeTests.kt
new file mode 100644
index 0000000000..970174d269
--- /dev/null
+++ b/android/test/arch/src/test/kotlin/net/mullvad/mullvadvpn/test/arch/compose/ComposeTests.kt
@@ -0,0 +1,17 @@
+package net.mullvad.mullvadvpn.test.arch.compose
+
+import androidx.compose.runtime.Composable
+import com.lemonappdev.konsist.api.Konsist
+import com.lemonappdev.konsist.api.ext.list.withAllAnnotationsOf
+import com.lemonappdev.konsist.api.verify.assert
+import org.junit.Test
+
+class ComposeTests {
+ @Test
+ fun `all app composables are in the compose packages`() {
+ allAppComposeFunctions().assert { it.resideInPackage("net.mullvad.mullvadvpn.compose..") }
+ }
+
+ private fun allAppComposeFunctions() =
+ Konsist.scopeFromProduction("app").functions().withAllAnnotationsOf(Composable::class)
+}