Use context parameter for the parentNode
This commit is contained in:
committed by
Benoit Marty
parent
566515ca88
commit
05c5f3c914
@@ -26,5 +26,6 @@ interface ForwardEntryPoint : FeatureEntryPoint {
|
||||
val timelineProvider: TimelineProvider,
|
||||
) : NodeInputs
|
||||
|
||||
fun createNode(parentNode: Node, buildContext: BuildContext, params: Params, callback: Callback): Node
|
||||
context(parentNode: Node)
|
||||
fun createNode(buildContext: BuildContext, params: Params, callback: Callback): Node
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@ import io.element.android.libraries.di.SessionScope
|
||||
|
||||
@ContributesBinding(SessionScope::class)
|
||||
class DefaultForwardEntryPoint : ForwardEntryPoint {
|
||||
override fun createNode(parentNode: Node, buildContext: BuildContext, params: ForwardEntryPoint.Params, callback: ForwardEntryPoint.Callback): Node {
|
||||
context(parentNode: Node)
|
||||
override fun createNode(buildContext: BuildContext, params: ForwardEntryPoint.Params, callback: ForwardEntryPoint.Callback): Node {
|
||||
return parentNode.createNode<ForwardMessagesNode>(
|
||||
buildContext = buildContext,
|
||||
plugins = listOf(
|
||||
|
||||
@@ -71,7 +71,6 @@ class ForwardMessagesNode(
|
||||
}
|
||||
|
||||
return roomSelectEntryPoint.createNode(
|
||||
parentNode = this,
|
||||
buildContext = buildContext,
|
||||
params = RoomSelectEntryPoint.Params(mode = RoomSelectMode.Forward),
|
||||
callback = callback,
|
||||
|
||||
@@ -39,8 +39,8 @@ class DefaultForwardEntryPointTest {
|
||||
plugins = plugins,
|
||||
presenterFactory = { _, _ -> createForwardMessagesPresenter() },
|
||||
roomSelectEntryPoint = object : RoomSelectEntryPoint {
|
||||
context(parentNode: Node)
|
||||
override fun createNode(
|
||||
parentNode: Node,
|
||||
buildContext: BuildContext,
|
||||
params: RoomSelectEntryPoint.Params,
|
||||
callback: RoomSelectEntryPoint.Callback,
|
||||
@@ -55,12 +55,13 @@ class DefaultForwardEntryPointTest {
|
||||
eventId = AN_EVENT_ID,
|
||||
timelineProvider = FakeTimelineProvider(),
|
||||
)
|
||||
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(ForwardMessagesNode::class.java)
|
||||
assertThat(result.plugins).contains(
|
||||
ForwardMessagesNode.Inputs(
|
||||
|
||||
Reference in New Issue
Block a user