diff --git a/app/design-system/design-system-hedvig/build.gradle.kts b/app/design-system/design-system-hedvig/build.gradle.kts index f16115bca1..36dccbcb7b 100644 --- a/app/design-system/design-system-hedvig/build.gradle.kts +++ b/app/design-system/design-system-hedvig/build.gradle.kts @@ -51,6 +51,11 @@ kotlin { implementation(libs.media3.exoplayer.dash) implementation(libs.media3.ui) } + jvmTest.dependencies { + implementation(libs.jetbrains.compose.ui.test) + implementation(libs.kotlin.test) + implementation(org.jetbrains.compose.ComposePlugin.DesktopDependencies.currentOs) + } nativeMain.dependencies { implementation(libs.metro.viewmodel) implementation(libs.metro.viewmodel.compose) diff --git a/app/design-system/design-system-hedvig/src/jvmMain/kotlin/com/hedvig/android/design/system/hedvig/NotAvailableOnDesktop.kt b/app/design-system/design-system-hedvig/src/jvmMain/kotlin/com/hedvig/android/design/system/hedvig/NotAvailableOnDesktop.kt new file mode 100644 index 0000000000..2bcac2f704 --- /dev/null +++ b/app/design-system/design-system-hedvig/src/jvmMain/kotlin/com/hedvig/android/design/system/hedvig/NotAvailableOnDesktop.kt @@ -0,0 +1,25 @@ +package com.hedvig.android.design.system.hedvig + +import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.padding +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.unit.dp + +@Composable +fun NotAvailableOnDesktop(modifier: Modifier = Modifier) { + Box( + contentAlignment = Alignment.Center, + modifier = modifier.fillMaxSize().padding(16.dp), + ) { + HedvigText( + text = "Not available on desktop", + style = HedvigTheme.typography.bodySmall, + color = HedvigTheme.colorScheme.textSecondary, + textAlign = TextAlign.Center, + ) + } +} diff --git a/app/design-system/design-system-hedvig/src/jvmTest/kotlin/com/hedvig/android/design/system/hedvig/NotAvailableOnDesktopTest.kt b/app/design-system/design-system-hedvig/src/jvmTest/kotlin/com/hedvig/android/design/system/hedvig/NotAvailableOnDesktopTest.kt new file mode 100644 index 0000000000..85ff5fdea1 --- /dev/null +++ b/app/design-system/design-system-hedvig/src/jvmTest/kotlin/com/hedvig/android/design/system/hedvig/NotAvailableOnDesktopTest.kt @@ -0,0 +1,20 @@ +package com.hedvig.android.design.system.hedvig + +import androidx.compose.ui.test.ExperimentalTestApi +import androidx.compose.ui.test.assertIsDisplayed +import androidx.compose.ui.test.onNodeWithText +import androidx.compose.ui.test.v2.runComposeUiTest +import kotlin.test.Test + +@OptIn(ExperimentalTestApi::class) +class NotAvailableOnDesktopTest { + @Test + fun `shows the not available on desktop text`() = runComposeUiTest { + setContent { + HedvigTheme(darkTheme = false) { + NotAvailableOnDesktop() + } + } + onNodeWithText("Not available on desktop").assertIsDisplayed() + } +}