@@ -52,7 +52,7 @@ def self.call(task, ctx, exec_context:, application_ctx:, **)
5252 end
5353
5454 class ComputeBinarySignal
55- def self . compute_binary_signal ( ctx , value :, **)
55+ def self . call ( ctx , value :, **)
5656 signal = value ? Trailblazer ::Activity ::Right : Trailblazer ::Activity ::Left
5757
5858 ctx [ :signal ] = signal
@@ -64,17 +64,25 @@ def self.compute_binary_signal(ctx, value:, **)
6464 class Model___Input
6565 def self . call ( ctx , exec_context :, **)
6666 ctx = Trailblazer ::Context ( ctx )
67- ctx [ :exec_context ] = ComputeBinarySignal
68- ctx [ :original_exec_context ] = exec_context
67+ # ctx[:exec_context] = ComputeBinarySignal
68+ # ctx[:original_exec_context] = exec_context
6969
7070 return ctx , nil
7171 end
7272 end
7373
74+ class Model___Output
75+ def self . call ( ctx , signal :, **)
76+ ctx , _ = ctx . decompose
77+ return ctx , signal
78+ end
79+ end
80+
7481 model_pipe = [
75- [ :invoke_instance_method , :model , INVOKER___STEP_INTERFACE_ON_EXEC_CONTEXT , { task : :model } ] ,
7682 [ :input , Model___Input , INVOKER___CIRCUIT_INTERFACE ] ,
77- [ :compute_binary_signal , :compute_binary_signal , INVOKER___CIRCUIT_INTERFACE_ON_EXEC_CONTEXT ] ,
83+ [ :invoke_instance_method , :model , INVOKER___STEP_INTERFACE_ON_EXEC_CONTEXT , { task : :model } ] ,
84+ [ :compute_binary_signal , ComputeBinarySignal , INVOKER___CIRCUIT_INTERFACE ] ,
85+ [ :input , Model___Output , INVOKER___CIRCUIT_INTERFACE ] ,
7886 ]
7987
8088 # model_in_create_cfg = [
@@ -105,6 +113,7 @@ def model(ctx, params:, **)
105113 ctx , signal = Pipeline ::Processor . ( model_pipe , create_ctx )
106114
107115 assert_equal ctx [ :application_ctx ] , { :params => { :id => 1 } , :model => "Object 1" }
116+ assert_equal ctx . keys , [ :exec_context , :application_ctx ]
108117 assert_equal signal , Trailblazer ::Activity ::Right
109118end
110119
0 commit comments