Skip to content

Commit

Permalink
Grab function_name from kwargs if present
Browse files Browse the repository at this point in the history
  • Loading branch information
moonbox3 committed Jan 21, 2025
1 parent 71e5040 commit 5e9061d
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,9 @@ def send_event_to(
)

if isinstance(target, ProcessStepBuilder):
target = ProcessFunctionTargetBuilder(step=target, parameter_name=kwargs.get("parameter_name"))
target = ProcessFunctionTargetBuilder(
step=target, parameter_name=kwargs.get("parameter_name"), function_name=kwargs.get("function_name")
)

self.target = target
self.source.link_to(self.event_id, self)
Expand Down
23 changes: 23 additions & 0 deletions python/tests/unit/processes/test_process_step_edge_builder.py
Original file line number Diff line number Diff line change
Expand Up @@ -133,3 +133,26 @@ def test_build_missing_target():
# Act & Assert
with pytest.raises(ValueError, match="Target must be provided"):
edge_builder.build()


def test_send_event_to_step_builder_with_function_name():
# Arrange
source = MagicMock(spec=ProcessStepBuilder)
source.link_to = MagicMock()

target = MagicMock(spec=ProcessStepBuilder)
target.resolve_function_target = MagicMock(
return_value=MagicMock(function_name="mock_function_name", parameter_name="mock_parameter_name")
)

event_id = "event_007"
edge_builder = ProcessStepEdgeBuilder(source=source, event_id=event_id)

# Act
edge_builder.send_event_to(target, parameter_name="mock_parameter_name", function_name="mock_function_name")

# Assert
assert edge_builder.target.step == target
assert edge_builder.target.parameter_name == "mock_parameter_name"
assert edge_builder.target.function_name == "mock_function_name"
source.link_to.assert_called_once_with(event_id, edge_builder)

0 comments on commit 5e9061d

Please sign in to comment.