/**
* In this case flowstate morphing is happening becasue the value dynamic FPD is favorable for morphing
*/
@Test
public void testPositiveStateFlowMorphingPositive() {
FlowActivityImpl fa1 = createFA("FA-1");
FlowPropertyDefinitionImpl morphFlowFPD = new FlowPropertyDefinitionImpl(FS_MORPH_FLOW, Boolean.class).initAutoCreate();
fa1.addPropertyDefinitions(morphFlowFPD);
FlowActivityImpl fa2 = createFA("FA-2");
FlowActivityImpl fa3 = createFA("FA-3");
FlowTestingUtils flowTestingUtils = new FlowTestingUtils();
flowTestingUtils.getFlowDefinitionsManager().addDefinitions(new FlowImpl(FIRST_FLOW, fa1,fa2,fa3));
FlowActivityImpl fa4 = createFA("FA-4");
FlowActivityImpl fa5 = createFA("FA-5");
flowTestingUtils.getFlowDefinitionsManager().addDefinitions(new FlowImpl(MORPHED_FLOW, fa2,fa4,fa5));
FlowManagement flowManagement = flowTestingUtils.getFlowManagement();
FlowState flowState = flowManagement.startFlowState(FIRST_FLOW, true, null, false);
assertEquals(flowState.getFlow().getFlowPropertyProviderName(), FIRST_FLOW);