uber-go / cadence-client

Framework for authoring workflows and activities running on top of the Cadence orchestration engine.
https://cadenceworkflow.io
MIT License
345 stars 131 forks source link

`TestWorkflowEnvironment` doesn't invoke interceptors in the context of child workflows #1125

Closed seiffert closed 7 months ago

seiffert commented 3 years ago

Describe the bug TestWorkflowEnvironments with custom interceptors don't seem to execute them on child workflows at the moment. I can see the ExecuteWorkflow hook of my interceptor being called for the tested main workflow, but if that workflow calls workflow.ExecuteChildWorkflow internally, the interceptor's ExecuteWorkflow hook isn't called in the context of the child workflow.

In production code, I can observe how when calling ExecuteChildWorkflow the identically-named interceptor method is called and then once the child workflow was scheduled, the interceptor's ExecuteWorkflow is called in the context of the child workflow.

To Reproduce Is the issue reproducible? Yes

Steps to reproduce the behavior:

Expected behavior Workflow Interceptors' ExecuteWorkflow method is also invoked for child-workflows.

Additional context