Merge "Add Jacoco coverage report task for SpaLib"
diff --git a/packages/SettingsLib/Spa/tests/build.gradle b/packages/SettingsLib/Spa/tests/build.gradle
index 5971895..c4a17d8 100644
--- a/packages/SettingsLib/Spa/tests/build.gradle
+++ b/packages/SettingsLib/Spa/tests/build.gradle
@@ -56,6 +56,11 @@
     composeOptions {
         kotlinCompilerExtensionVersion jetpack_compose_compiler_version
     }
+    buildTypes {
+        debug {
+            testCoverageEnabled = true
+        }
+    }
 }
 
 dependencies {
@@ -63,3 +68,15 @@
     androidTestImplementation project(":testutils")
     androidTestImplementation "com.linkedin.dexmaker:dexmaker-mockito:2.28.1"
 }
+
+task coverageReport(type: JacocoReport, dependsOn: "connectedDebugAndroidTest") {
+    group = "Reporting"
+    description = "Generate Jacoco coverage reports after running tests."
+
+    sourceDirectories.from = files("../spa/src")
+    classDirectories.from = fileTree(
+            dir: "../spa/build/tmp/kotlin-classes/debug",
+            excludes: ["com/android/settingslib/spa/debug/**"],
+    )
+    executionData.from = fileTree(dir: "$buildDir/outputs/code_coverage/debugAndroidTest/connected")
+}