diff --git a/AndroidXCI/lib/src/main/kotlin/dev/androidx/ci/testRunner/TestRunnerService.kt b/AndroidXCI/lib/src/main/kotlin/dev/androidx/ci/testRunner/TestRunnerService.kt index 292734e..11a9351 100644 --- a/AndroidXCI/lib/src/main/kotlin/dev/androidx/ci/testRunner/TestRunnerService.kt +++ b/AndroidXCI/lib/src/main/kotlin/dev/androidx/ci/testRunner/TestRunnerService.kt @@ -347,6 +347,11 @@ interface TestRunnerService { * Test case log files produced by the test. */ val testCaseArtifacts: Map> + + /** + * Crash report if module encountered a crash + */ + val crashReport: ResultFileResource? } data class TestCaseArtifact( diff --git a/AndroidXCI/lib/src/main/kotlin/dev/androidx/ci/testRunner/TestRunnerServiceImpl.kt b/AndroidXCI/lib/src/main/kotlin/dev/androidx/ci/testRunner/TestRunnerServiceImpl.kt index 0c70f8e..7ffdf4f 100644 --- a/AndroidXCI/lib/src/main/kotlin/dev/androidx/ci/testRunner/TestRunnerServiceImpl.kt +++ b/AndroidXCI/lib/src/main/kotlin/dev/androidx/ci/testRunner/TestRunnerServiceImpl.kt @@ -214,6 +214,8 @@ internal class TestRunnerServiceImpl internal constructor( "LOGCAT" ) } + } else if (fileName.contains(CRASH_REPORT_FILE_NAME)) { + getTestResultFiles(visitor).crashReport = ResultFileResourceImpl(visitor) } } // remove this if block when b/299975596 is fixed @@ -342,6 +344,7 @@ internal class TestRunnerServiceImpl internal constructor( private const val TEST_RESULT_XML_PREFIX = "test_result_" private const val TEST_RESULT_XML_SUFFIX = ".xml" private const val INSTRUMENTATION_RESULTS_FILE_NAME = "instrumentation.results" + private const val CRASH_REPORT_FILE_NAME = "crash" } class ResultFileResourceImpl( private val blobVisitor: BlobVisitor @@ -372,6 +375,8 @@ internal class TestRunnerServiceImpl internal constructor( override val xmlResults: List = xmlResultBlobs override val testCaseArtifacts: Map> = testCaseArtifactBlobs override val deviceRun: DeviceRun = DeviceRun.create(fullDeviceId) + override var crashReport: TestRunnerService.ResultFileResource? = null + internal set internal fun addXmlResult(resultFileResource: TestRunnerService.ResultFileResource) { xmlResultBlobs.add(resultFileResource)