Use Anvil KSP instead of the Square KAPT one (#3564)
* Use Anvil KSP instead of the Square KAPT one * Fix several configuration cache, lint and test issues * Allow incremental kotlin compilation in the CI * Workaround Robolectric + Compose issue that caused `AppNotIdleException` * Update the `enterprise` commit hash * Update screenshots --------- Co-authored-by: ElementBot <android@element.io>
This commit is contained in:
parent
5fcc80a383
commit
4a43fcb69a
54 changed files with 463 additions and 348 deletions
|
|
@ -9,7 +9,6 @@ package io.element.android.features.login.impl.di
|
|||
|
||||
import com.squareup.anvil.annotations.ContributesTo
|
||||
import com.squareup.anvil.annotations.MergeSubcomponent
|
||||
import dagger.Subcomponent
|
||||
import io.element.android.libraries.architecture.NodeFactoriesBindings
|
||||
import io.element.android.libraries.di.AppScope
|
||||
import io.element.android.libraries.di.SingleIn
|
||||
|
|
@ -17,7 +16,7 @@ import io.element.android.libraries.di.SingleIn
|
|||
@SingleIn(QrCodeLoginScope::class)
|
||||
@MergeSubcomponent(QrCodeLoginScope::class)
|
||||
interface QrCodeLoginComponent : NodeFactoriesBindings {
|
||||
@Subcomponent.Builder
|
||||
@MergeSubcomponent.Builder
|
||||
interface Builder {
|
||||
fun build(): QrCodeLoginComponent
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,15 +16,15 @@ import io.element.android.features.login.impl.qrcode.QrCodeLoginManager
|
|||
import io.element.android.libraries.architecture.AssistedNodeFactory
|
||||
import io.element.android.libraries.architecture.createNode
|
||||
|
||||
internal class FakeQrCodeLoginComponent(private val qrCodeLoginManager: QrCodeLoginManager) :
|
||||
QrCodeLoginComponent {
|
||||
internal class FakeMergedQrCodeLoginComponent(private val qrCodeLoginManager: QrCodeLoginManager) :
|
||||
MergedQrCodeLoginComponent {
|
||||
// Ignore this error, it does override a method once code generation is done
|
||||
override fun qrCodeLoginManager(): QrCodeLoginManager = qrCodeLoginManager
|
||||
|
||||
class Builder(private val qrCodeLoginManager: QrCodeLoginManager = FakeQrCodeLoginManager()) :
|
||||
QrCodeLoginComponent.Builder {
|
||||
override fun build(): QrCodeLoginComponent {
|
||||
return FakeQrCodeLoginComponent(qrCodeLoginManager)
|
||||
return FakeMergedQrCodeLoginComponent(qrCodeLoginManager)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -13,7 +13,7 @@ import com.bumble.appyx.core.modality.BuildContext
|
|||
import com.bumble.appyx.utils.customisations.NodeCustomisationDirectoryImpl
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.features.login.impl.DefaultLoginUserStory
|
||||
import io.element.android.features.login.impl.di.FakeQrCodeLoginComponent
|
||||
import io.element.android.features.login.impl.di.FakeMergedQrCodeLoginComponent
|
||||
import io.element.android.features.login.impl.screens.qrcode.confirmation.QrCodeConfirmationStep
|
||||
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
||||
import io.element.android.libraries.matrix.api.auth.qrlogin.QrCodeLoginStep
|
||||
|
|
@ -200,7 +200,7 @@ class QrCodeLoginFlowNodeTest {
|
|||
return QrCodeLoginFlowNode(
|
||||
buildContext = buildContext,
|
||||
plugins = emptyList(),
|
||||
qrCodeLoginComponentBuilder = FakeQrCodeLoginComponent.Builder(qrCodeLoginManager),
|
||||
qrCodeLoginComponentBuilder = FakeMergedQrCodeLoginComponent.Builder(qrCodeLoginManager),
|
||||
defaultLoginUserStory = defaultLoginUserStory,
|
||||
coroutineDispatchers = coroutineDispatchers,
|
||||
)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue