Use context parameter for the parentNode

This commit is contained in:
Benoit Marty
2025-10-30 13:02:20 +01:00
committed by Benoit Marty
parent 566515ca88
commit 05c5f3c914
138 changed files with 450 additions and 375 deletions

View File

@@ -32,7 +32,8 @@ interface SecureBackupEntryPoint : FeatureEntryPoint {
data class Params(val initialElement: InitialTarget) : NodeInputs
fun createNode(parentNode: Node, buildContext: BuildContext, params: Params, callback: Callback): Node
context(parentNode: Node)
fun createNode(buildContext: BuildContext, params: Params, callback: Callback): Node
interface Callback : Plugin {
fun onDone()

View File

@@ -16,8 +16,8 @@ import io.element.android.libraries.architecture.createNode
@ContributesBinding(AppScope::class)
class DefaultSecureBackupEntryPoint : SecureBackupEntryPoint {
context(parentNode: Node)
override fun createNode(
parentNode: Node,
buildContext: BuildContext,
params: SecureBackupEntryPoint.Params,
callback: SecureBackupEntryPoint.Callback,

View File

@@ -37,12 +37,13 @@ class DefaultSecureBackupEntryPointTest {
override fun onDone() = lambdaError()
}
val params = SecureBackupEntryPoint.Params(SecureBackupEntryPoint.InitialTarget.ResetIdentity)
val result = entryPoint.createNode(
parentNode = parentNode,
buildContext = BuildContext.root(null),
params = params,
callback = callback,
)
val result = with(parentNode) {
entryPoint.createNode(
buildContext = BuildContext.root(null),
params = params,
callback = callback,
)
}
assertThat(result).isInstanceOf(SecureBackupFlowNode::class.java)
assertThat(result.plugins).contains(params)
assertThat(result.plugins).contains(callback)