Merge pull request #6016 from element-hq/feature/bma/fixFlakyTest

Attempt to fix flaky test.
This commit is contained in:
Benoit Marty 2026-01-19 14:13:17 +01:00 committed by GitHub
commit 157709b7c3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 19 additions and 0 deletions

View file

@ -60,4 +60,6 @@ dependencies {
testImplementation(projects.libraries.permissions.test)
testImplementation(projects.libraries.sessionStorage.test)
testImplementation(projects.libraries.wellknown.test)
testImplementation(libs.androidx.camera.camera2)
testImplementation(libs.androidx.camera.lifecycle)
}

View file

@ -9,9 +9,11 @@
package io.element.android.features.login.impl.screens.qrcode.scan
import androidx.activity.ComponentActivity
import androidx.camera.lifecycle.ProcessCameraProvider
import androidx.compose.ui.test.junit4.AndroidComposeTestRule
import androidx.compose.ui.test.junit4.createAndroidComposeRule
import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.platform.app.InstrumentationRegistry
import io.element.android.libraries.architecture.AsyncAction
import io.element.android.libraries.matrix.api.auth.qrlogin.MatrixQrCodeLoginData
import io.element.android.libraries.matrix.test.auth.qrlogin.FakeMatrixQrCodeLoginData
@ -20,6 +22,8 @@ import io.element.android.tests.testutils.EnsureNeverCalledWithParam
import io.element.android.tests.testutils.ensureCalledOnce
import io.element.android.tests.testutils.ensureCalledOnceWithParam
import io.element.android.tests.testutils.pressBackKey
import org.junit.After
import org.junit.Before
import org.junit.Rule
import org.junit.Test
import org.junit.rules.TestRule
@ -30,6 +34,19 @@ class QrCodeScanViewTest {
@get:Rule
val rule = createAndroidComposeRule<ComponentActivity>()
private var provider: ProcessCameraProvider? = null
@Before
fun setup() {
val context = InstrumentationRegistry.getInstrumentation().context
provider = ProcessCameraProvider.getInstance(context).get()
}
@After
fun teardown() {
provider?.unbindAll()
}
@Test
fun `on back pressed - calls the expected callback`() {
ensureCalledOnce { callback ->