From 4a98cf9609541f4535108ba196c1e56e54f0a242 Mon Sep 17 00:00:00 2001 From: Hannes Achleitner Date: Sun, 18 Jan 2026 10:47:08 +0100 Subject: [PATCH 1/2] Simplify MultiChart --- .../kotlin/info/appdev/chartexample/StartTest.kt | 2 +- .../appdev/chartexample/ListViewMultiChartActivity.kt | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/app/src/androidTest/kotlin/info/appdev/chartexample/StartTest.kt b/app/src/androidTest/kotlin/info/appdev/chartexample/StartTest.kt index c0969adc9..a963baf59 100644 --- a/app/src/androidTest/kotlin/info/appdev/chartexample/StartTest.kt +++ b/app/src/androidTest/kotlin/info/appdev/chartexample/StartTest.kt @@ -213,7 +213,7 @@ class StartTest { composeTestRule.waitForIdle() Thread.sleep(200) // Small delay for back navigation } catch (e: Exception) { - Timber.e("Error at #$index: '$optionMenu' - ${e.message}", e) + Timber.e("#$index/'${it.simpleName}': '$optionMenu' ${e.message}", e) onView(ViewMatchers.isRoot()) .perform(captureToBitmap { bitmap: Bitmap -> bitmap.writeToTestStorage( diff --git a/app/src/main/kotlin/info/appdev/chartexample/ListViewMultiChartActivity.kt b/app/src/main/kotlin/info/appdev/chartexample/ListViewMultiChartActivity.kt index 944209e2a..34e72c972 100644 --- a/app/src/main/kotlin/info/appdev/chartexample/ListViewMultiChartActivity.kt +++ b/app/src/main/kotlin/info/appdev/chartexample/ListViewMultiChartActivity.kt @@ -49,7 +49,7 @@ class ListViewMultiChartActivity : DemoBase() { list.add(LineChartItem(generateDataLine(i + 1), applicationContext)) } else if (i % 3 == 1) { list.add(BarChartItem(generateDataBar(i + 1), applicationContext)) - } else if (i % 3 == 2) { + } else { list.add(PieChartItem(generateDataPie(), applicationContext)) } } @@ -67,7 +67,7 @@ class ListViewMultiChartActivity : DemoBase() { override fun getItemViewType(position: Int): Int { // return the views type val ci = getItem(position) - return if (ci != null) ci.itemType else 0 + return ci?.itemType ?: 0 } override fun getViewTypeCount(): Int { @@ -98,7 +98,7 @@ class ListViewMultiChartActivity : DemoBase() { val values2 = ArrayList() for (i in 0.. Date: Sun, 18 Jan 2026 11:12:25 +0100 Subject: [PATCH 2/2] Rename --- .../info/appdev/chartexample/StartTest.kt | 24 +++++++++---------- .../ListViewMultiChartActivity.kt | 2 +- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/app/src/androidTest/kotlin/info/appdev/chartexample/StartTest.kt b/app/src/androidTest/kotlin/info/appdev/chartexample/StartTest.kt index a963baf59..092bd4351 100644 --- a/app/src/androidTest/kotlin/info/appdev/chartexample/StartTest.kt +++ b/app/src/androidTest/kotlin/info/appdev/chartexample/StartTest.kt @@ -67,8 +67,8 @@ class StartTest { var optionMenu = "" // iterate samples - only items with classes (not section headers) MainActivity.menuItems.forEachIndexed { index, contentItem -> - contentItem.clazz?.let { - Timber.d("Intended #${index} ${it.simpleName}: '${contentItem.name}'") + contentItem.clazz?.let { contentClass -> + Timber.d("Intended #${index} ${contentClass.simpleName}: '${contentItem.name}'") try { // Use description to uniquely identify items since names can be duplicated @@ -100,17 +100,17 @@ class StartTest { composeTestRule.waitForIdle() Thread.sleep(300) // Increased delay for activity transition - Intents.intended(hasComponent(it.name)) + Intents.intended(hasComponent(contentClass.name)) onView(ViewMatchers.isRoot()) .perform(captureToBitmap { bitmap: Bitmap -> bitmap.writeToTestStorage( - "${javaClass.simpleName}_${nameRule.methodName}-${index}-${it.simpleName}-${contentItem.name}-1SampleClick" + "${javaClass.simpleName}_${nameRule.methodName}-${index}-${contentClass.simpleName}-${contentItem.name}-1SampleClick" .replace(" ", "") ) }) // Test option menus based on activity type - if (DemoBase::class.java.isAssignableFrom(it)) { + if (DemoBase::class.java.isAssignableFrom(contentClass)) { // Test traditional ActionBar menu for DemoBase activities optionMenu = "" optionMenus.filter { plain -> plain.isNotEmpty() && Character.isDigit(plain.first()) }.forEach { filteredTitle -> @@ -119,13 +119,13 @@ class StartTest { openActionBarOverflowOrOptionsMenu(getInstrumentation().targetContext) Timber.d("screenshot optionMenu=$optionMenu") screenshotOfOptionMenu( - "${javaClass.simpleName}_${nameRule.methodName}-${index}-${it.simpleName}-${contentItem.name}", + "${javaClass.simpleName}_${nameRule.methodName}-${index}-${contentClass.simpleName}-${contentItem.name}", filteredTitle ) } - } else if (DemoBaseCompose::class.java.isAssignableFrom(it)) { + } else if (DemoBaseCompose::class.java.isAssignableFrom(contentClass)) { // Test Compose dropdown menu for DemoBaseCompose activities - Timber.d("Testing Compose menu for: ${it.simpleName}") + Timber.d("Testing Compose menu for: ${contentClass.simpleName}") optionMenu = "" try { @@ -165,7 +165,7 @@ class StartTest { onView(ViewMatchers.isRoot()) .perform(captureToBitmap { bitmap: Bitmap -> bitmap.writeToTestStorage( - "${javaClass.simpleName}_${nameRule.methodName}-${index}-${it.simpleName}-${contentItem.name}-${menuTitle}" + "${javaClass.simpleName}_${nameRule.methodName}-${index}-${contentClass.simpleName}-${contentItem.name}-${menuTitle}" .replace(" ", "") ) }) @@ -203,7 +203,7 @@ class StartTest { Timber.e("Error testing Compose menu: ${e.message}", e) } } else { - Timber.d("Unknown activity type: ${it.simpleName}") + Timber.d("Unknown activity type: ${contentClass.simpleName}") } //Thread.sleep(100) @@ -213,11 +213,11 @@ class StartTest { composeTestRule.waitForIdle() Thread.sleep(200) // Small delay for back navigation } catch (e: Exception) { - Timber.e("#$index/'${it.simpleName}': '$optionMenu' ${e.message}", e) + Timber.e("#$index/'${contentClass.simpleName}': '$optionMenu' ${e.message}", e) onView(ViewMatchers.isRoot()) .perform(captureToBitmap { bitmap: Bitmap -> bitmap.writeToTestStorage( - "${javaClass.simpleName}_${nameRule.methodName}-${index}-${it.simpleName}-Error" + "${javaClass.simpleName}_${nameRule.methodName}-${index}-${contentClass.simpleName}-Error" .replace(" ", "") ) }) diff --git a/app/src/main/kotlin/info/appdev/chartexample/ListViewMultiChartActivity.kt b/app/src/main/kotlin/info/appdev/chartexample/ListViewMultiChartActivity.kt index 34e72c972..ca7f75e02 100644 --- a/app/src/main/kotlin/info/appdev/chartexample/ListViewMultiChartActivity.kt +++ b/app/src/main/kotlin/info/appdev/chartexample/ListViewMultiChartActivity.kt @@ -59,7 +59,7 @@ class ListViewMultiChartActivity : DemoBase() { } /** adapter that supports 3 different item types */ - private class ChartDataAdapter(context: Context, objects: MutableList>) : ArrayAdapter>(context, 0, objects) { + private class ChartDataAdapter(context: Context, chartItems: MutableList>) : ArrayAdapter>(context, 0, chartItems) { override fun getView(position: Int, convertView: View?, parent: ViewGroup): View { return getItem(position)!!.getView(position, convertView, context)!! }