Depend on api not impl module.

This commit is contained in:
Benoit Marty 2026-04-08 18:04:46 +02:00
parent 5eeaa4ca72
commit 035e527101
3 changed files with 20 additions and 5 deletions

View file

@ -19,7 +19,6 @@ dependencies {
api(projects.libraries.matrix.api)
api(libs.coroutines.core)
implementation(libs.coroutines.test)
implementation(projects.libraries.matrix.impl)
implementation(projects.services.analytics.api)
implementation(projects.tests.testutils)
implementation(libs.kotlinx.collections.immutable)

View file

@ -8,8 +8,12 @@
package io.element.android.libraries.matrix.test.mxc
import io.element.android.libraries.matrix.api.mxc.MxcTools
import io.element.android.libraries.matrix.impl.mxc.DefaultMxcTools
import io.element.android.tests.testutils.lambda.lambdaError
class FakeMxcTools(
private val delegate: MxcTools = DefaultMxcTools()
) : MxcTools by delegate
private val mxcUri2FilePathResult: (String) -> String? = { lambdaError() }
) : MxcTools {
override fun mxcUri2FilePath(mxcUri: String): String? {
return mxcUri2FilePathResult(mxcUri)
}
}

View file

@ -32,6 +32,9 @@ class DefaultVoiceMessageMediaRepoTest {
val repo = createDefaultVoiceMessageMediaRepo(
temporaryFolder = temporaryFolder,
matrixMediaLoader = matrixMediaLoader,
mxcUri2FilePathResult = {
"matrix.org/1234567890abcdefg"
},
)
repo.getMediaFile().let { result ->
@ -76,6 +79,9 @@ class DefaultVoiceMessageMediaRepoTest {
val repo = createDefaultVoiceMessageMediaRepo(
temporaryFolder = temporaryFolder,
matrixMediaLoader = matrixMediaLoader,
mxcUri2FilePathResult = {
"matrix.org/1234567890abcdefg"
},
)
repo.getMediaFile().let { result ->
@ -98,6 +104,9 @@ class DefaultVoiceMessageMediaRepoTest {
val repo = createDefaultVoiceMessageMediaRepo(
temporaryFolder = temporaryFolder,
matrixMediaLoader = matrixMediaLoader,
mxcUri2FilePathResult = {
"matrix.org/1234567890abcdefg"
},
)
repo.getMediaFile().let { result ->
@ -128,10 +137,13 @@ class DefaultVoiceMessageMediaRepoTest {
private fun createDefaultVoiceMessageMediaRepo(
temporaryFolder: TemporaryFolder,
matrixMediaLoader: MatrixMediaLoader = FakeMatrixMediaLoader(),
mxcUri2FilePathResult: (String) -> String? = { null },
mxcUri: String = MXC_URI,
) = DefaultVoiceMessageMediaRepo(
cacheDir = temporaryFolder.root,
mxcTools = FakeMxcTools(),
mxcTools = FakeMxcTools(
mxcUri2FilePathResult = mxcUri2FilePathResult,
),
matrixMediaLoader = matrixMediaLoader,
mediaSource = MediaSource(
url = mxcUri,