From dca94898c52a72faba52e925ffd82e6a9404345c Mon Sep 17 00:00:00 2001 From: Torsten Grote Date: Tue, 31 Mar 2026 17:58:51 -0300 Subject: [PATCH] Add screenshot test for Settings screen --- .../org/fdroid/ui/settings/SettingsTest.kt | 42 +++++++++++++++++++ .../SettingsNightTest_58c50acd_0.png | 3 ++ .../SettingsTest_4fcdc4d2_0.png | 3 ++ 3 files changed, 48 insertions(+) create mode 100644 app/src/screenshotTest/kotlin/org/fdroid/ui/settings/SettingsTest.kt create mode 100644 app/src/screenshotTestBasicDefaultDebug/reference/org/fdroid/ui/settings/SettingsTestKt/SettingsNightTest_58c50acd_0.png create mode 100644 app/src/screenshotTestBasicDefaultDebug/reference/org/fdroid/ui/settings/SettingsTestKt/SettingsTest_4fcdc4d2_0.png diff --git a/app/src/screenshotTest/kotlin/org/fdroid/ui/settings/SettingsTest.kt b/app/src/screenshotTest/kotlin/org/fdroid/ui/settings/SettingsTest.kt new file mode 100644 index 000000000..609757239 --- /dev/null +++ b/app/src/screenshotTest/kotlin/org/fdroid/ui/settings/SettingsTest.kt @@ -0,0 +1,42 @@ +package org.fdroid.ui.settings + +import android.content.res.Configuration +import androidx.compose.runtime.Composable +import androidx.compose.ui.tooling.preview.Preview +import com.android.tools.screenshot.PreviewTest +import java.lang.System.currentTimeMillis +import java.util.concurrent.TimeUnit.HOURS +import kotlinx.coroutines.flow.MutableStateFlow +import me.zhanghai.compose.preference.MapPreferences +import org.fdroid.ui.ScreenshotTest + +@Composable +@PreviewTest +@Preview(showBackground = true, showSystemUi = true, heightDp = 1400) +fun SettingsTest() = + ScreenshotTest(showBottomBar = false) { + Settings(model = getSettingsModel(), isBigScreen = false, onSaveLogcat = {}, onBackClicked = {}) + } + +@Composable +@PreviewTest +@Preview( + showBackground = true, + showSystemUi = true, + uiMode = Configuration.UI_MODE_NIGHT_YES or Configuration.UI_MODE_TYPE_NORMAL, + heightDp = 1400, +) +fun SettingsNightTest() = + ScreenshotTest(showBottomBar = false) { + Settings(model = getSettingsModel(), isBigScreen = false, onSaveLogcat = {}, onBackClicked = {}) + } + +private fun getSettingsModel( + nextRepoUpdate: Long = currentTimeMillis() - HOURS.toMillis(12), + nextAppUpdate: Long = Long.MAX_VALUE, +) = + SettingsModel( + prefsFlow = MutableStateFlow(MapPreferences(emptyMap())), + nextRepoUpdateFlow = MutableStateFlow(nextRepoUpdate), + nextAppUpdateFlow = MutableStateFlow(nextAppUpdate), + ) diff --git a/app/src/screenshotTestBasicDefaultDebug/reference/org/fdroid/ui/settings/SettingsTestKt/SettingsNightTest_58c50acd_0.png b/app/src/screenshotTestBasicDefaultDebug/reference/org/fdroid/ui/settings/SettingsTestKt/SettingsNightTest_58c50acd_0.png new file mode 100644 index 000000000..1059e9767 --- /dev/null +++ b/app/src/screenshotTestBasicDefaultDebug/reference/org/fdroid/ui/settings/SettingsTestKt/SettingsNightTest_58c50acd_0.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71f406a178f4a466d27c9a1483046a249688370daeb95b15878729934ccee8af +size 235934 diff --git a/app/src/screenshotTestBasicDefaultDebug/reference/org/fdroid/ui/settings/SettingsTestKt/SettingsTest_4fcdc4d2_0.png b/app/src/screenshotTestBasicDefaultDebug/reference/org/fdroid/ui/settings/SettingsTestKt/SettingsTest_4fcdc4d2_0.png new file mode 100644 index 000000000..80bddd955 --- /dev/null +++ b/app/src/screenshotTestBasicDefaultDebug/reference/org/fdroid/ui/settings/SettingsTestKt/SettingsTest_4fcdc4d2_0.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ab1c8e0bdc1c1a148a287020d299b08d060dc8315068d3f9ca5fd412f21227e +size 235866