summaryrefslogtreecommitdiff
path: root/java/tests
diff options
context:
space:
mode:
author Andrey Epin <ayepin@google.com> 2023-09-12 19:48:47 -0700
committer Andrey Epin <ayepin@google.com> 2023-09-12 19:57:02 -0700
commita7765dc1e6172a4b9a296c9788ebfa3be02ee230 (patch)
treeacc9cf0cf01f9fcd2a35b449d42ecfe546157597 /java/tests
parent42fbb1defed76e2f712195b088c34fdff12a764e (diff)
PreviewDataProvider to close content resolver's cursors
Fix: 300182416 Test: atest IntentResolverUnitTests:PreviewDataProviderTest Change-Id: If4ee654683ed3e58001c6c07840d86dc2e24a5fc
Diffstat (limited to 'java/tests')
-rw-r--r--java/tests/src/com/android/intentresolver/contentpreview/PreviewDataProviderTest.kt22
1 files changed, 20 insertions, 2 deletions
diff --git a/java/tests/src/com/android/intentresolver/contentpreview/PreviewDataProviderTest.kt b/java/tests/src/com/android/intentresolver/contentpreview/PreviewDataProviderTest.kt
index 6599baa9..4a8c1392 100644
--- a/java/tests/src/com/android/intentresolver/contentpreview/PreviewDataProviderTest.kt
+++ b/java/tests/src/com/android/intentresolver/contentpreview/PreviewDataProviderTest.kt
@@ -192,8 +192,9 @@ class PreviewDataProviderTest {
val uri = Uri.parse("content://org.pkg.app/test.pdf")
val targetIntent = Intent(Intent.ACTION_SEND).apply { putExtra(Intent.EXTRA_STREAM, uri) }
whenever(contentResolver.getType(uri)).thenReturn("application/pdf")
- whenever(contentResolver.query(uri, METADATA_COLUMNS, null, null))
- .thenReturn(MatrixCursor(columns).apply { addRow(values) })
+ val cursor = MatrixCursor(columns).apply { addRow(values) }
+ whenever(contentResolver.query(uri, METADATA_COLUMNS, null, null)).thenReturn(cursor)
+
val testSubject =
PreviewDataProvider(testScope, targetIntent, contentResolver, mimeTypeClassifier)
@@ -202,6 +203,23 @@ class PreviewDataProviderTest {
assertThat(testSubject.firstFileInfo?.uri).isEqualTo(uri)
assertThat(testSubject.firstFileInfo?.previewUri).isNotNull()
verify(contentResolver, times(1)).getType(any())
+ assertThat(cursor.isClosed).isTrue()
+ }
+
+ @Test
+ fun test_emptyQueryResult_cursorGetsClosed() {
+ val uri = Uri.parse("content://org.pkg.app/test.pdf")
+ val targetIntent = Intent(Intent.ACTION_SEND).apply { putExtra(Intent.EXTRA_STREAM, uri) }
+ whenever(contentResolver.getType(uri)).thenReturn("application/pdf")
+ val cursor = MatrixCursor(emptyArray())
+ whenever(contentResolver.query(uri, METADATA_COLUMNS, null, null)).thenReturn(cursor)
+
+ val testSubject =
+ PreviewDataProvider(testScope, targetIntent, contentResolver, mimeTypeClassifier)
+
+ assertThat(testSubject.previewType).isEqualTo(ContentPreviewType.CONTENT_PREVIEW_FILE)
+ verify(contentResolver, times(1)).query(uri, METADATA_COLUMNS, null, null)
+ assertThat(cursor.isClosed).isTrue()
}
@Test