Kotlin: Have image test output generated image for reference.

Test: ImageTest
Bug: 425634197
Change-Id: Ie3b39bb5366cd571a33c77ceb7cc88049fd70aae
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/247314
Commit-Queue: Jim Blackler <jimblackler@google.com>
Reviewed-by: Alfie Baxter <alfiebaxter@google.com>
Reviewed-by: Loko Kung <lokokung@google.com>
diff --git a/tools/android/webgpu/build.gradle b/tools/android/webgpu/build.gradle
index 4c11d52..9e757ec 100644
--- a/tools/android/webgpu/build.gradle
+++ b/tools/android/webgpu/build.gradle
@@ -102,6 +102,8 @@
     androidTestImplementation 'androidx.test.ext:junit-ktx:1.2.1'
     androidTestImplementation 'androidx.test:runner:1.6.1'
     androidTestImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.4'
+
+    androidTestUtil 'androidx.test:orchestrator:1.5.1'
 }
 
 project.afterEvaluate {
diff --git a/tools/android/webgpu/src/androidTest/java/android/dawn/ImageTest.kt b/tools/android/webgpu/src/androidTest/java/android/dawn/ImageTest.kt
index 70438ee..c8dba87 100644
--- a/tools/android/webgpu/src/androidTest/java/android/dawn/ImageTest.kt
+++ b/tools/android/webgpu/src/androidTest/java/android/dawn/ImageTest.kt
@@ -2,9 +2,11 @@
 
 import android.dawn.helper.asString
 import android.dawn.helper.createBitmap
+import android.graphics.Bitmap
 import android.graphics.BitmapFactory
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.platform.app.InstrumentationRegistry
+import androidx.test.services.storage.TestStorage
 import junit.framework.TestCase.assertEquals
 import org.junit.Test
 import org.junit.runner.RunWith
@@ -85,11 +87,13 @@
 
             val bitmap = testTexture.createBitmap(device)
 
-            if (false) {
-                writeReferenceImage(bitmap)
+            // Write the generated bitmap to test storage for inspection in the event of test
+            // failures.
+            TestStorage(appContext.contentResolver).openOutputFile("generated_image.png").use {
+                bitmap.compress(Bitmap.CompressFormat.PNG, 100, it)
             }
 
-            val testAssets = InstrumentationRegistry.getInstrumentation().context.assets
+            val testAssets = appContext.assets
             val matched = testAssets.list("compare")!!.filter {
                 imageSimilarity(
                     bitmap,