From dbe64a88dcd43ec771b0a873b99b2f08dfface93 Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Tue, 2 Jun 2026 17:14:24 +0800 Subject: [PATCH] shared: Fix UI tests Signed-off-by: Aayush Gupta --- .../app/preview/LibraryPreviewProvider.kt | 28 +++++++++---------- .../composable/about/LibraryListItemTest.kt | 12 ++++---- .../app/screen/about/LicenseDialogTest.kt | 11 ++++++-- 3 files changed, 27 insertions(+), 24 deletions(-) diff --git a/shared/src/commonMain/kotlin/net/newpipe/app/preview/LibraryPreviewProvider.kt b/shared/src/commonMain/kotlin/net/newpipe/app/preview/LibraryPreviewProvider.kt index b3b1f82a5..ee0c6bacf 100644 --- a/shared/src/commonMain/kotlin/net/newpipe/app/preview/LibraryPreviewProvider.kt +++ b/shared/src/commonMain/kotlin/net/newpipe/app/preview/LibraryPreviewProvider.kt @@ -15,20 +15,18 @@ import net.newpipe.app.model.Library class LibraryPreviewProvider : PreviewParameterProvider { override val values: Sequence - get() = sequenceOf(library) - - companion object { - val library = Library( - id = "net.newpipe.extractor", - name = "NewPipe Extractor", - developers = listOf( - Developer( - name = "Team NewPipe", - organisationUrl = "https://newpipe.net/" - ) - ), - licenses = listOf("GPL-3.0-or-later"), - website = "https://github.com/TeamNewPipe/NewPipeExtractor/" + get() = sequenceOf( + Library( + id = "net.newpipe.extractor", + name = "NewPipe Extractor", + developers = listOf( + Developer( + name = "Team NewPipe", + organisationUrl = "https://newpipe.net/" + ) + ), + licenses = listOf("GPL-3.0-or-later"), + website = "https://github.com/TeamNewPipe/NewPipeExtractor/" + ) ) - } } diff --git a/shared/src/commonTest/kotlin/net/newpipe/app/composable/about/LibraryListItemTest.kt b/shared/src/commonTest/kotlin/net/newpipe/app/composable/about/LibraryListItemTest.kt index 90b87baec..73f8f9cae 100644 --- a/shared/src/commonTest/kotlin/net/newpipe/app/composable/about/LibraryListItemTest.kt +++ b/shared/src/commonTest/kotlin/net/newpipe/app/composable/about/LibraryListItemTest.kt @@ -10,10 +10,10 @@ import androidx.compose.ui.test.assertIsDisplayed import androidx.compose.ui.test.onNodeWithText import androidx.compose.ui.test.performClick import androidx.compose.ui.test.v2.runComposeUiTest +import net.newpipe.app.model.Developer import kotlin.test.Test import kotlin.test.assertTrue import net.newpipe.app.model.Library -import net.newpipe.app.model.License @OptIn(ExperimentalTestApi::class) class LibraryListItemTest { @@ -23,13 +23,13 @@ class LibraryListItemTest { val library = Library( id = "Test id", name = "Test name", - developer = "Test developer", - license = License( - type = License.Companion.TYPE.APACHE_2_0, - text = "" + developers = listOf( + Developer(name = "Test developer") ), + licenses = listOf("Apache-2.0"), website = "https://www.example.com" ) + val desc = "By ${library.developers.first().name} under ${library.licenses.first()}" var clicked = false setContent { LibraryListItem( @@ -41,7 +41,7 @@ class LibraryListItemTest { } onNodeWithText(library.name).assertIsDisplayed() - onNodeWithText("By ${library.developer} under ${library.license.spdxId}").apply { + onNodeWithText(desc).apply { assertIsDisplayed() performClick() assertTrue(clicked) diff --git a/shared/src/commonTest/kotlin/net/newpipe/app/screen/about/LicenseDialogTest.kt b/shared/src/commonTest/kotlin/net/newpipe/app/screen/about/LicenseDialogTest.kt index 04fab1a3e..89eb94a06 100644 --- a/shared/src/commonTest/kotlin/net/newpipe/app/screen/about/LicenseDialogTest.kt +++ b/shared/src/commonTest/kotlin/net/newpipe/app/screen/about/LicenseDialogTest.kt @@ -13,6 +13,7 @@ import androidx.compose.ui.test.onNodeWithText import androidx.compose.ui.test.performClick import androidx.compose.ui.test.performScrollToNode import androidx.compose.ui.test.v2.runComposeUiTest +import net.newpipe.app.model.License import kotlin.test.Test import kotlin.test.assertTrue import net.newpipe.app.preview.LibraryPreviewProvider @@ -26,16 +27,20 @@ class LicenseDialogTest { @Test fun testLicenseDialog() = runComposeUiTest { - val library = LibraryPreviewProvider.library + val license = License( + name = "NewPipe e.V.", + spdxID = "GPL-3.0-or-later", + website = "https://newpipe-ev.de/" + ) var websiteActionClicked = false setContent { LicenseDialog( - library = library, + license = license, onOpenWebsite = { websiteActionClicked = true } ) } - onNodeWithText(library.name).assertIsDisplayed() + onNodeWithText(license.name).assertIsDisplayed() onNodeWithTag(TEST_TAG_LICENSE_TEXT) .performScrollToNode(hasText("https://www.gnu.org/philosophy/why-not-lgpl.html", substring = true)) .assertIsDisplayed()