2828import modelengine .fit .waterflow .flowsengine .domain .flows .definitions .nodes .events .FlowEvent ;
2929import modelengine .fit .waterflow .flowsengine .domain .flows .definitions .nodes .jobers .FlowEchoJober ;
3030import modelengine .fit .waterflow .flowsengine .domain .flows .definitions .nodes .jobers .FlowGeneralJober ;
31+ import modelengine .fit .waterflow .flowsengine .domain .flows .enums .FlowDefinitionStatus ;
32+ import modelengine .fit .waterflow .flowsengine .domain .flows .enums .FlowJoberType ;
3133import modelengine .fit .waterflow .flowsengine .domain .flows .enums .FlowNodeTriggerMode ;
3234import modelengine .fit .waterflow .flowsengine .domain .flows .enums .FlowNodeType ;
3335import modelengine .fit .waterflow .flowsengine .domain .flows .parsers .FlowParser ;
@@ -534,21 +536,90 @@ public void testValidateStartNodeEventLessThan1Success() {
534536 WaterflowParamException exception = assertThrows (WaterflowParamException .class ,
535537 () -> flowNodeValidator .validate (flowDefinition ));
536538 assertEquals (INVALID_START_NODE_EVENT_SIZE .getErrorCode (), exception .getCode ());
539+
540+
537541 }
538542
539543 @ Test
540- @ DisplayName ("测试流程节点StartNodeEventGreatThan1校验成功 " )
544+ @ DisplayName ("测试流程节点StartNodeEventGreatThan1校验放开 " )
541545 public void testValidateStartNodeEventGreatThan1Success () {
542- Map <String , FlowNode > nodeMap = flowDefinition .getNodeMap ();
543- List <FlowEvent > events = new ArrayList <>();
544- events .add (new FlowEvent ());
545- events .add (new FlowEvent ());
546- nodeMap .get (START_ID ).setEvents (events );
547- flowDefinition .setNodeMap (nodeMap );
546+ FlowDefinition definition = new FlowDefinition ();
547+ definition .setMetaId ("apimckapimckapimckapimckapimckaa" );
548+ definition .setName ("testFlow" );
549+ definition .setVersion ("1.0.0" );
550+ definition .setTenant (TENANT );
551+ definition .setStatus (FlowDefinitionStatus .ACTIVE );
552+
553+ Map <String , FlowNode > nodeMap = new HashMap <>();
554+
555+ FlowStartNode startNode = new FlowStartNode ();
556+ startNode .setMetaId (START_ID );
557+ startNode .setName ("startNode" );
558+ startNode .setType (FlowNodeType .START );
559+ startNode .setTriggerMode (FlowNodeTriggerMode .AUTO );
560+ startNode .setProperties (new HashMap <>());
548561
549- WaterflowParamException exception = assertThrows (WaterflowParamException .class ,
550- () -> flowNodeValidator .validate (flowDefinition ));
551- assertEquals (INVALID_EVENT_CONFIG .getErrorCode (), exception .getCode ());
562+ List <FlowEvent > events = new ArrayList <>();
563+ FlowEvent event1 = new FlowEvent ();
564+ event1 .setMetaId ("event1" );
565+ event1 .setFrom (START_ID );
566+ event1 .setTo (STATE_ID );
567+ events .add (event1 );
568+
569+ FlowEvent event2 = new FlowEvent ();
570+ event2 .setMetaId ("event2" );
571+ event2 .setFrom (START_ID );
572+ event2 .setTo (THIRD_STATE_ID );
573+ events .add (event2 );
574+ startNode .setEvents (events );
575+
576+ FlowNode stateNode = new FlowNode () {};
577+ stateNode .setMetaId (STATE_ID );
578+ stateNode .setName ("stateNode" );
579+ stateNode .setType (FlowNodeType .STATE );
580+ stateNode .setTriggerMode (FlowNodeTriggerMode .AUTO );
581+ stateNode .setProperties (new HashMap <>());
582+ List <FlowEvent > stateEvents = new ArrayList <>();
583+ FlowEvent stateEvent = new FlowEvent ();
584+ stateEvent .setMetaId ("stateEvent" );
585+ stateEvent .setFrom (STATE_ID );
586+ stateEvent .setTo (END_ID );
587+ stateEvents .add (stateEvent );
588+ stateNode .setEvents (stateEvents );
589+ FlowEchoJober stateJober = new FlowEchoJober ();
590+ stateJober .setType (FlowJoberType .ECHO_JOBER );
591+ stateJober .setFitables (new java .util .HashSet <>());
592+ stateNode .setJober (stateJober );
593+ nodeMap .put (STATE_ID , stateNode );
594+ FlowNode thirdStateNode = new FlowNode () {};
595+ thirdStateNode .setMetaId (THIRD_STATE_ID );
596+ thirdStateNode .setName ("thirdStateNode" );
597+ thirdStateNode .setType (FlowNodeType .STATE );
598+ thirdStateNode .setTriggerMode (FlowNodeTriggerMode .AUTO );
599+ thirdStateNode .setProperties (new HashMap <>());
600+ List <FlowEvent > thirdStateEvents = new ArrayList <>();
601+ FlowEvent thirdStateEvent = new FlowEvent ();
602+ thirdStateEvent .setMetaId ("thirdStateEvent" );
603+ thirdStateEvent .setFrom (THIRD_STATE_ID );
604+ thirdStateEvent .setTo (END_ID );
605+ thirdStateEvents .add (thirdStateEvent );
606+ thirdStateNode .setEvents (thirdStateEvents );
607+ FlowEchoJober thirdStateJober = new FlowEchoJober ();
608+ thirdStateJober .setType (FlowJoberType .ECHO_JOBER );
609+ thirdStateJober .setFitables (new java .util .HashSet <>());
610+ thirdStateNode .setJober (thirdStateJober );
611+ nodeMap .put (THIRD_STATE_ID , thirdStateNode );
612+ FlowNode endNode = new FlowNode () {};
613+ endNode .setMetaId (END_ID );
614+ endNode .setName ("endNode" );
615+ endNode .setType (FlowNodeType .END );
616+ endNode .setTriggerMode (FlowNodeTriggerMode .AUTO );
617+ endNode .setProperties (new HashMap <>());
618+ endNode .setEvents (new ArrayList <>());
619+ nodeMap .put (END_ID , endNode );
620+ nodeMap .put (START_ID , startNode );
621+ definition .setNodeMap (nodeMap );
622+ assertDoesNotThrow (() -> flowNodeValidator .validate (definition ));
552623 }
553624
554625 @ Test
@@ -565,32 +636,41 @@ public void testValidateStartNodeJobberSuccess() {
565636 }
566637
567638 @ Test
568- @ DisplayName ("测试流程节点StateNodeEventLessThan1校验成功 " )
569- public void testValidateStateNodeEventLessThan1Success () {
639+ @ DisplayName ("测试流程节点StateNodeEventGreatThan1校验成功 " )
640+ public void testValidateStateNodeEventGreatThan1Success () {
570641 Map <String , FlowNode > nodeMap = flowDefinition .getNodeMap ();
571- nodeMap .get (STATE_ID ).setEvents (new ArrayList <>());
642+ List <FlowEvent > events = new ArrayList <>();
643+ FlowEvent event1 = new FlowEvent ();
644+ event1 .setMetaId ("event1" );
645+ event1 .setFrom (STATE_ID );
646+ event1 .setTo (END_ID );
647+ events .add (event1 );
648+
649+ FlowEvent event2 = new FlowEvent ();
650+ event2 .setMetaId ("event2" );
651+ event2 .setFrom (STATE_ID );
652+ event2 .setTo (END_ID );
653+ events .add (event2 );
654+
655+ nodeMap .get (STATE_ID ).setEvents (events );
572656 flowDefinition .setNodeMap (nodeMap );
573657
574- WaterflowParamException exception = assertThrows (WaterflowParamException .class ,
575- () -> flowNodeValidator .validate (flowDefinition ));
576- assertEquals (INVALID_STATE_NODE_EVENT_SIZE .getErrorCode (), exception .getCode ());
658+ assertDoesNotThrow (() -> flowNodeValidator .validate (flowDefinition ));
577659 }
578660
579661 @ Test
580- @ DisplayName ("测试流程节点StateNodeEventGreatThan1校验成功 " )
581- public void testValidateStateNodeEventGreatThan1Success () {
662+ @ DisplayName ("测试流程节点StateNodeEventLessThan1校验成功 " )
663+ public void testValidateStateNodeEventLessThan1Success () {
582664 Map <String , FlowNode > nodeMap = flowDefinition .getNodeMap ();
583- List <FlowEvent > events = new ArrayList <>();
584- events .add (new FlowEvent ());
585- events .add (new FlowEvent ());
586- nodeMap .get (STATE_ID ).setEvents (events );
665+ nodeMap .get (STATE_ID ).setEvents (new ArrayList <>());
587666 flowDefinition .setNodeMap (nodeMap );
588667
589668 WaterflowParamException exception = assertThrows (WaterflowParamException .class ,
590669 () -> flowNodeValidator .validate (flowDefinition ));
591- assertEquals ( INVALID_EVENT_CONFIG .getErrorCode (), exception .getCode ());
670+ assertEquals (INVALID_STATE_NODE_EVENT_SIZE .getErrorCode (), exception .getCode ());
592671 }
593672
673+
594674 @ Test
595675 @ DisplayName ("测试流程节点StateNodeJobber校验成功" )
596676 public void testValidateStateNodeJobberSuccess () {
0 commit comments