From f5bc2ebb593f819e842448726dae2e427dfeabf1 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Sat, 27 Feb 2021 19:01:58 +0530 Subject: [PATCH 1/8] Initial draft of screenshot testing setup Signed-off-by: Harsh Shandilya --- app/build.gradle.kts | 3 +- app/src/androidTest/AndroidManifest.xml | 6 ++++ .../lobsters/ui/posts/LobstersItemTest.kt | 32 +++++++++++++++++++ app/src/main/AndroidManifest.xml | 3 +- buildSrc/build.gradle.kts | 1 + buildSrc/src/main/java/Dependencies.kt | 1 + 6 files changed, 44 insertions(+), 2 deletions(-) create mode 100644 app/src/androidTest/AndroidManifest.xml create mode 100644 app/src/androidTest/java/dev/msfjarvis/lobsters/ui/posts/LobstersItemTest.kt diff --git a/app/build.gradle.kts b/app/build.gradle.kts index a2743738..41aece73 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -3,6 +3,7 @@ plugins { kotlin("android") kotlin("kapt") id("dagger.hilt.android.plugin") + id("shot") `versioning-plugin` `lobsters-plugin` `core-library-desugaring` @@ -18,7 +19,7 @@ repositories { android { defaultConfig { applicationId = "dev.msfjarvis.lobsters" - testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" + testInstrumentationRunner = "com.karumi.shot.ShotTestRunner" } buildFeatures.compose = true diff --git a/app/src/androidTest/AndroidManifest.xml b/app/src/androidTest/AndroidManifest.xml new file mode 100644 index 00000000..a82a05b3 --- /dev/null +++ b/app/src/androidTest/AndroidManifest.xml @@ -0,0 +1,6 @@ + + + + diff --git a/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/posts/LobstersItemTest.kt b/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/posts/LobstersItemTest.kt new file mode 100644 index 00000000..9439b282 --- /dev/null +++ b/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/posts/LobstersItemTest.kt @@ -0,0 +1,32 @@ +package dev.msfjarvis.lobsters.ui.posts + +import androidx.compose.ui.graphics.asAndroidBitmap +import androidx.compose.ui.test.captureToImage +import androidx.compose.ui.test.junit4.createComposeRule +import androidx.compose.ui.test.onRoot +import com.karumi.shot.ScreenshotTest +import dev.msfjarvis.lobsters.ui.theme.LobstersTheme +import org.junit.Rule +import org.junit.Test + +class LobstersItemTest : ScreenshotTest { + + @get:Rule + val composeTestRule = createComposeRule() + + @Test + fun postsAreRenderedCorrectlyOnScreen() { + composeTestRule.setContent { + LobstersTheme { + LobstersItem( + post = TEST_POST, + onClick = { /*TODO*/ }, + onLongClick = { /*TODO*/ }, + onSaveButtonClick = { /*TODO*/ }, + isSaved = true, + ) + } + } + compareScreenshot(composeTestRule.onRoot().captureToImage().asAndroidBitmap()) + } +} diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 53f2e72d..0e9e7dbf 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,6 +1,7 @@ + package="dev.msfjarvis.lobsters" + android:sharedUserId="${applicationId}.uid"> diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index ac32817f..fcf191cd 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -34,5 +34,6 @@ dependencies { implementation(Plugins.jsemver) implementation(Plugins.lintModel) implementation(Plugins.kotlin) + implementation(Plugins.shot) implementation(Plugins.sqldelight) } diff --git a/buildSrc/src/main/java/Dependencies.kt b/buildSrc/src/main/java/Dependencies.kt index 4bd295a5..dc36436b 100644 --- a/buildSrc/src/main/java/Dependencies.kt +++ b/buildSrc/src/main/java/Dependencies.kt @@ -11,6 +11,7 @@ object Plugins { const val hilt = "com.google.dagger:hilt-android-gradle-plugin:${DAGGER_HILT_VERSION}" const val kotlin = "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.30" const val jsemver = "com.github.zafarkhaja:java-semver:0.9.0" + const val shot = "com.karumi:shot:5.8.0" const val sqldelight = "com.squareup.sqldelight:gradle-plugin:1.4.4" } From ce7abc7afbe9df437fa82c8966630a2f8e306557 Mon Sep 17 00:00:00 2001 From: Aditya Wasan Date: Sat, 27 Feb 2021 20:32:29 +0530 Subject: [PATCH 2/8] test: add screenshot test for LobstersBottomNav Signed-off-by: Aditya Wasan --- ...t_bottomNavIsRenderedCorrectlyOnScreen.png | Bin 0 -> 5680 bytes ...Test_postsAreRenderedCorrectlyOnScreen.png | Bin 0 -> 32182 bytes .../ui/navigation/LobstersBottomNavTest.kt | 32 ++++++++++++++++++ 3 files changed, 32 insertions(+) create mode 100644 app/screenshots/debug/dev.msfjarvis.lobsters.ui.navigation.LobstersBottomNavTest_bottomNavIsRenderedCorrectlyOnScreen.png create mode 100644 app/screenshots/debug/dev.msfjarvis.lobsters.ui.posts.LobstersItemTest_postsAreRenderedCorrectlyOnScreen.png create mode 100644 app/src/androidTest/java/dev/msfjarvis/lobsters/ui/navigation/LobstersBottomNavTest.kt diff --git a/app/screenshots/debug/dev.msfjarvis.lobsters.ui.navigation.LobstersBottomNavTest_bottomNavIsRenderedCorrectlyOnScreen.png b/app/screenshots/debug/dev.msfjarvis.lobsters.ui.navigation.LobstersBottomNavTest_bottomNavIsRenderedCorrectlyOnScreen.png new file mode 100644 index 0000000000000000000000000000000000000000..5017f571a8d0fc13490afeecefb28ab1bab071df GIT binary patch literal 5680 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 Date: Sat, 27 Feb 2021 20:37:39 +0530 Subject: [PATCH 3/8] Revert "github: disable unneeded emulator runner" This reverts commit 5d74c6787fdba3cf966ebfa46bea57a37b666639. --- .github/workflows/pull_request.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 257b71e1..a6f9eceb 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -21,16 +21,16 @@ jobs: with: arguments: test --stacktrace -# - name: Run instrumentation tests -# uses: reactivecircus/android-emulator-runner@08b092e904025fada32a01b711af1e7ff7b7a4a3 -# with: -# api-level: 23 -# target: default -# script: | -# adb shell settings put global animator_duration_scale 0 -# adb shell settings put global transition_animation_scale 0 -# adb shell settings put global window_animation_scale 0 -# ./gradlew :app:connectedDebugAndroidTest + - name: Run instrumentation tests + uses: reactivecircus/android-emulator-runner@08b092e904025fada32a01b711af1e7ff7b7a4a3 + with: + api-level: 23 + target: default + script: | + adb shell settings put global animator_duration_scale 0 + adb shell settings put global transition_animation_scale 0 + adb shell settings put global window_animation_scale 0 + ./gradlew :app:connectedDebugAndroidTest - name: (Fail-only) upload test report if: failure() From 9185c0e36b88ab14ac4223c8a8f3424f8cf66b9b Mon Sep 17 00:00:00 2001 From: Aditya Wasan Date: Sat, 27 Feb 2021 20:40:09 +0530 Subject: [PATCH 4/8] chore: fix formatting Signed-off-by: Aditya Wasan --- .../msfjarvis/lobsters/ui/navigation/LobstersBottomNavTest.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/navigation/LobstersBottomNavTest.kt b/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/navigation/LobstersBottomNavTest.kt index b18d4a30..c714390f 100644 --- a/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/navigation/LobstersBottomNavTest.kt +++ b/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/navigation/LobstersBottomNavTest.kt @@ -29,4 +29,4 @@ class LobstersBottomNavTest : ScreenshotTest { compareScreenshot(composeTestRule.onRoot().captureToImage().asAndroidBitmap()) } -} \ No newline at end of file +} From 9a79f3ba403c5fb0cbf53fe8f57cfd71b79c81da Mon Sep 17 00:00:00 2001 From: Aditya Wasan Date: Sat, 27 Feb 2021 23:24:59 +0530 Subject: [PATCH 5/8] test: add more bottom nav tests Signed-off-by: Aditya Wasan --- ...t_bottomNavIsRenderedCorrectlyOnScreen.png | Bin 5680 -> 5765 bytes ...ottomNavTest_bottomNavUpdatesCorrectly.png | Bin 0 -> 6379 bytes ...Test_postsAreRenderedCorrectlyOnScreen.png | Bin 32182 -> 34120 bytes .../java/dev/msfjarvis/lobsters/ui/Theme.kt | 22 ++++++++++++ .../ui/navigation/LobstersBottomNavTest.kt | 34 +++++++++++++++++- .../lobsters/ui/posts/LobstersItemTest.kt | 4 +-- .../msfjarvis/lobsters/ui/main/LobstersApp.kt | 1 + 7 files changed, 58 insertions(+), 3 deletions(-) create mode 100644 app/screenshots/debug/dev.msfjarvis.lobsters.ui.navigation.LobstersBottomNavTest_bottomNavUpdatesCorrectly.png create mode 100644 app/src/androidTest/java/dev/msfjarvis/lobsters/ui/Theme.kt diff --git a/app/screenshots/debug/dev.msfjarvis.lobsters.ui.navigation.LobstersBottomNavTest_bottomNavIsRenderedCorrectlyOnScreen.png b/app/screenshots/debug/dev.msfjarvis.lobsters.ui.navigation.LobstersBottomNavTest_bottomNavIsRenderedCorrectlyOnScreen.png index 5017f571a8d0fc13490afeecefb28ab1bab071df..a40d7ce0d094cce6f9ef90a5577676247d99f0a0 100644 GIT binary patch literal 5765 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 Ah5!Hn literal 5680 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 literal 0 HcmV?d00001 diff --git a/app/screenshots/debug/dev.msfjarvis.lobsters.ui.posts.LobstersItemTest_postsAreRenderedCorrectlyOnScreen.png b/app/screenshots/debug/dev.msfjarvis.lobsters.ui.posts.LobstersItemTest_postsAreRenderedCorrectlyOnScreen.png index b67cc6c5c4939fa9b9219de3cba132094a177f0f..bc13682e48dc1f4a69e8c4469579907c26437f73 100644 GIT binary patch literal 34120 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 Unit) { + MaterialTheme( + colors = lightColors, + content = children, + ) +} + +@Composable +fun DarkTestTheme(children: @Composable () -> Unit) { + MaterialTheme( + colors = darkColors, + content = children, + ) +} diff --git a/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/navigation/LobstersBottomNavTest.kt b/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/navigation/LobstersBottomNavTest.kt index c714390f..6860b3db 100644 --- a/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/navigation/LobstersBottomNavTest.kt +++ b/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/navigation/LobstersBottomNavTest.kt @@ -1,10 +1,18 @@ package dev.msfjarvis.lobsters.ui.navigation +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue import androidx.compose.ui.graphics.asAndroidBitmap +import androidx.compose.ui.test.assertHasClickAction import androidx.compose.ui.test.captureToImage import androidx.compose.ui.test.junit4.createComposeRule +import androidx.compose.ui.test.onNodeWithTag import androidx.compose.ui.test.onRoot +import androidx.compose.ui.test.performClick import com.karumi.shot.ScreenshotTest +import dev.msfjarvis.lobsters.ui.DarkTestTheme import dev.msfjarvis.lobsters.ui.main.LobstersBottomNav import dev.msfjarvis.lobsters.ui.theme.LobstersTheme import org.junit.Rule @@ -18,7 +26,7 @@ class LobstersBottomNavTest : ScreenshotTest { @Test fun bottomNavIsRenderedCorrectlyOnScreen() { composeTestRule.setContent { - LobstersTheme { + DarkTestTheme { LobstersBottomNav( currentDestination = Destination.startDestination, navigateToDestination = { /*TODO*/ }, @@ -29,4 +37,28 @@ class LobstersBottomNavTest : ScreenshotTest { compareScreenshot(composeTestRule.onRoot().captureToImage().asAndroidBitmap()) } + + @Test + fun bottomNavUpdatesCorrectly() { + composeTestRule.setContent { + DarkTestTheme { + var destination by remember { mutableStateOf(Destination.startDestination) } + + LobstersBottomNav( + currentDestination = destination, + navigateToDestination = { newDestination -> destination = newDestination }, + jumpToIndex = { /*TODO*/ } + ) + } + } + + selectNode(Destination.Saved.name) + + compareScreenshot(composeTestRule.onRoot().captureToImage().asAndroidBitmap()) + } + + private fun selectNode(testTag: String) = composeTestRule + .onNodeWithTag(testTag) + .assertHasClickAction() + .performClick() } diff --git a/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/posts/LobstersItemTest.kt b/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/posts/LobstersItemTest.kt index 9439b282..f14380eb 100644 --- a/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/posts/LobstersItemTest.kt +++ b/app/src/androidTest/java/dev/msfjarvis/lobsters/ui/posts/LobstersItemTest.kt @@ -5,7 +5,7 @@ import androidx.compose.ui.test.captureToImage import androidx.compose.ui.test.junit4.createComposeRule import androidx.compose.ui.test.onRoot import com.karumi.shot.ScreenshotTest -import dev.msfjarvis.lobsters.ui.theme.LobstersTheme +import dev.msfjarvis.lobsters.ui.DarkTestTheme import org.junit.Rule import org.junit.Test @@ -17,7 +17,7 @@ class LobstersItemTest : ScreenshotTest { @Test fun postsAreRenderedCorrectlyOnScreen() { composeTestRule.setContent { - LobstersTheme { + DarkTestTheme { LobstersItem( post = TEST_POST, onClick = { /*TODO*/ }, diff --git a/app/src/main/java/dev/msfjarvis/lobsters/ui/main/LobstersApp.kt b/app/src/main/java/dev/msfjarvis/lobsters/ui/main/LobstersApp.kt index 5453ee0a..958108ab 100644 --- a/app/src/main/java/dev/msfjarvis/lobsters/ui/main/LobstersApp.kt +++ b/app/src/main/java/dev/msfjarvis/lobsters/ui/main/LobstersApp.kt @@ -100,6 +100,7 @@ fun LobstersBottomNav( }, label = { Text(stringResource(id = screen.labelRes)) }, selected = currentDestination == screen, + modifier = Modifier.testTag(screen.name), alwaysShowLabel = false, onClick = { if (screen != currentDestination) { From d6bda5c3d7ca51e6ab8d7a283040ccea5f162435 Mon Sep 17 00:00:00 2001 From: Aditya Wasan Date: Sat, 27 Feb 2021 23:28:32 +0530 Subject: [PATCH 6/8] ci: use api level 30 Signed-off-by: Aditya Wasan --- .github/workflows/pull_request.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index a6f9eceb..35cc160c 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -24,7 +24,7 @@ jobs: - name: Run instrumentation tests uses: reactivecircus/android-emulator-runner@08b092e904025fada32a01b711af1e7ff7b7a4a3 with: - api-level: 23 + api-level: 30 target: default script: | adb shell settings put global animator_duration_scale 0 From 8427cc52d89d01217ac5e3143af632a1201a4bad Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Sat, 27 Feb 2021 23:29:03 +0530 Subject: [PATCH 7/8] github: remove unnecessary animation control The action does it for us. Signed-off-by: Harsh Shandilya --- .github/workflows/pull_request.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 35cc160c..5e6db75f 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -27,9 +27,6 @@ jobs: api-level: 30 target: default script: | - adb shell settings put global animator_duration_scale 0 - adb shell settings put global transition_animation_scale 0 - adb shell settings put global window_animation_scale 0 ./gradlew :app:connectedDebugAndroidTest - name: (Fail-only) upload test report From 4418404a71762eb3155c10e1d33efc82cb34c224 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Sat, 27 Feb 2021 23:37:18 +0530 Subject: [PATCH 8/8] github: use google_apis variant of emulator image Signed-off-by: Harsh Shandilya --- .github/workflows/pull_request.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 5e6db75f..f2f7394e 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -25,7 +25,7 @@ jobs: uses: reactivecircus/android-emulator-runner@08b092e904025fada32a01b711af1e7ff7b7a4a3 with: api-level: 30 - target: default + target: google_apis script: | ./gradlew :app:connectedDebugAndroidTest