From 826936d3e69a4fccb56a5b1f7038d266f7ffb7bf Mon Sep 17 00:00:00 2001 From: Andrey Epin Date: Tue, 2 Jul 2024 09:35:27 -0700 Subject: Unified preview image loader. Replace ImagePreviewImageLoader and CachingPreviewImageLoader with the new class, PreviewImageLoader. Fix: 348665058 Fix: 343819590 Test: atest IntentResolver-tests-unit Test: atest IntentResolver-tests-activity Test: inject debugging logs for image requests, loadings, and cancellations and verify common scenarios. Flag: com.android.intentresolver.preview_image_loader Change-Id: Ib54ea0d538cd2cbaef6041f09eeb2b9eb6ada4cf --- .../intentresolver/contentpreview/FakeThumbnailLoader.kt | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'tests/shared/src') diff --git a/tests/shared/src/com/android/intentresolver/contentpreview/FakeThumbnailLoader.kt b/tests/shared/src/com/android/intentresolver/contentpreview/FakeThumbnailLoader.kt index d3fdf17d..33969eb7 100644 --- a/tests/shared/src/com/android/intentresolver/contentpreview/FakeThumbnailLoader.kt +++ b/tests/shared/src/com/android/intentresolver/contentpreview/FakeThumbnailLoader.kt @@ -18,18 +18,23 @@ package com.android.intentresolver.contentpreview import android.graphics.Bitmap import android.net.Uri +import android.util.Size /** Fake implementation of [ThumbnailLoader] for use in testing. */ -class FakeThumbnailLoader : ThumbnailLoader { +class FakeThumbnailLoader(private val defaultSize: Size = Size(100, 100)) : ThumbnailLoader { - val fakeInvoke = mutableMapOf Bitmap?>() + val fakeInvoke = mutableMapOf Bitmap?>() val invokeCalls = mutableListOf() var unfinishedInvokeCount = 0 - override suspend fun invoke(uri: Uri): Bitmap? { + override suspend fun loadThumbnail(uri: Uri): Bitmap? = getBitmap(uri, defaultSize) + + override suspend fun loadThumbnail(uri: Uri, size: Size): Bitmap? = getBitmap(uri, size) + + private suspend fun getBitmap(uri: Uri, size: Size): Bitmap? { invokeCalls.add(uri) unfinishedInvokeCount++ - val result = fakeInvoke[uri]?.invoke() + val result = fakeInvoke[uri]?.invoke(size) unfinishedInvokeCount-- return result } -- cgit v1.2.3-59-g8ed1b