@@ -71,18 +71,20 @@ func TestSimpleWorkflow(t *testing.T) {
7171 var prevNode workflow.Task = wflow .Start
7272 var currentNode workflow.Task
7373 for ! end {
74- switch prevNode .(type ) {
74+ switch pn := prevNode .(type ) {
7575 case * workflow.StartTask :
76- nextNodeId := prevNode .GetNext ()
76+ nextNodeId := pn .GetNext ()
7777 currentNode , _ = wflow .Find (nextNodeId )
78- u .AssertEquals (t , prevNode .GetNext (), currentNode .GetId ())
78+ u .AssertEquals (t , pn .GetNext (), currentNode .GetId ())
7979 case * workflow.EndTask :
8080 end = true
81- default : // currentNode = simple node
82- nextNodeId := prevNode .GetNext ()
81+ case workflow. UnaryTask :
82+ nextNodeId := pn .GetNext ()
8383 currentNode , _ = wflow .Find (nextNodeId )
84- u .AssertEquals (t , prevNode .GetNext (), currentNode .GetId ())
84+ u .AssertEquals (t , pn .GetNext (), currentNode .GetId ())
8585 u .AssertTrue (t , prevNode .(* workflow.FunctionTask ).Func == f .Name )
86+ default :
87+ t .Fatalf ("unknown type %T" , pn )
8688 }
8789 prevNode = currentNode
8890 }
@@ -124,11 +126,15 @@ func TestChoiceWorkflow(t *testing.T) {
124126 for _ , n := range wflow .Tasks {
125127 switch n .(type ) {
126128 case * workflow.ChoiceTask :
127- u .AssertEquals (t , len (choice .Conditions ), len (choice .AlternativeNextTasks ))
128- for _ , s := range choice .AlternativeNextTasks {
129+ u .AssertEquals (t , len (choice .Conditions ), len (choice .GetAlternatives () ))
130+ for _ , s := range choice .GetAlternatives () {
129131 simple , foundS := wflow .Find (s )
132+ unary := simple .(* workflow.FunctionTask )
133+ if unary == nil {
134+ t .Fail ()
135+ }
130136 u .AssertTrue (t , foundS )
131- u .AssertEquals (t , simple .GetNext (), wflow .End .GetId ())
137+ u .AssertEquals (t , unary .GetNext (), wflow .End .GetId ())
132138 }
133139 case * workflow.FunctionTask :
134140 u .AssertTrue (t , n .(* workflow.FunctionTask ).Func == f .Name )
@@ -204,7 +210,7 @@ func TestWorkflowBuilder(t *testing.T) {
204210 f , err := initializeExamplePyFunction ()
205211 u .AssertNil (t , err )
206212 wflow , err := workflow .NewBuilder ().
207- AddSimpleNode (f ).
213+ AddFunctionTask (f ).
208214 AddChoiceNode (workflow .NewEqCondition (1 , 4 ), workflow .NewDiffCondition (1 , 4 )).
209215 NextBranch (CreateSequenceWorkflow (f )).
210216 NextBranch (CreateSequenceWorkflow (f )).
@@ -241,23 +247,22 @@ func TestVisit(t *testing.T) {
241247 f , err := initializeExamplePyFunction ()
242248 u .AssertNil (t , err )
243249 complexWorkflow , err := workflow .NewBuilder ().
244- AddSimpleNode (f ).
250+ AddFunctionTask (f ).
245251 AddChoiceNode (workflow .NewEqCondition (1 , 4 ), workflow .NewDiffCondition (1 , 4 )).
246252 NextBranch (CreateSequenceWorkflow (f )).
247253 NextBranch (CreateSequenceWorkflow (f , f )).
248254 EndChoiceAndBuild ()
249255 u .AssertNil (t , err )
250256
251- startNext , _ := complexWorkflow .Find (complexWorkflow .Start .GetNext ())
252-
253- choice := startNext .GetNext ()
254-
255257 visitedNodes := workflow .Visit (complexWorkflow , complexWorkflow .Start .Id , false )
256258 u .AssertEquals (t , len (complexWorkflow .Tasks ), len (visitedNodes ))
257259
258260 visitedNodes = workflow .Visit (complexWorkflow , complexWorkflow .Start .Id , true )
259261 u .AssertEquals (t , len (complexWorkflow .Tasks )- 1 , len (visitedNodes ))
260262
263+ startNext , _ := complexWorkflow .Find (complexWorkflow .Start .GetNext ())
264+ choice := startNext .(workflow.UnaryTask ).GetNext ()
265+
261266 visitedNodes = workflow .Visit (complexWorkflow , choice , false )
262267 u .AssertEquals (t , 5 , len (visitedNodes ))
263268
0 commit comments