///////////////////////////////////////////////////////////////////////////////
//                                                                           //
// Copyright (c) 2000-2019 Ericsson Telecom AB                               //
//                                                                           //
// All rights reserved. This program and the accompanying materials          //
// are made available under the terms of the Eclipse Public License v2.0     //
// which accompanies this distribution, and is available at                  //
// https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html                                 //
///////////////////////////////////////////////////////////////////////////////
[MODULE_PARAMETERS]
tsp_EPTF_UIHandler_Authmsg := ""
EPTF_CLL_UIHandler_WidgetFunctions.tsp_xtdp_listen_addr := "127.0.0.1"
EPTF_CLL_UIHandler_WidgetFunctions.tsp_xtdp_listen_port := 11420
tsp_EPTF_GUI_Main_Window_Height := 780.0

EPTF_CLL_ExecCtrl_Definitions.tsp_ExecCtrl_manualControl := true

tsp_EPTF_ExecCtrlUIHandler_timeFormat := HH_MM_SS
tsp_EPTF_ExecCtrl_timeFormat := HH_MM_SS

tsp_EPTF_UIHandler_headlessmode := true
tsp_EPTF_UIHandler_udp_port := 3245
tsp_EPTF_UIHandler_servermode := false;

tsp_LGenBase_BustCalcMethod := cs;

tsp_EPTF_Base_maxWaitTime := 3.0;
tsp_debug_EPTF_ExecCtrl_Functions := true
tsp_debug_EPTF_ExecCtrl_UIHandler := false
tsp_debug_EPTF_ExecCtrlClient_Functions := false
tsp_EPTF_LGenBaseDebug := false
tsp_EPTF_LGenBaseDebugTraffic := false
tsp_EPTF_LGenBaseDebugTrafficVerbose := false
tsp_debug_QueueMgmt := false
tsp_debugVerbose_QueueMgmt := false
tsp_EPTF_Var_SyncInterval := 5.0
tsp_EPTF_LGenBase_CPS_minUpdateInterval := 1.0
tsp_EPTF_cpsUpdateInterval := 2.0
tsp_behaviorTypes := {
  {bName := "DUMMY_applib", eCount := 2000},
  {bName := "moreDUMMY_applib", eCount := 1500}
}

tsp_entityTypes := {
  {eType := "Entity_A", behaviors := {"DUMMY_applib"}},
  {eType := "Entity_B", behaviors :={"moreDUMMY_applib"}},
  {eType := "Entity_AB", behaviors :={"DUMMY_applib", "moreDUMMY_applib"}}
  }

/*tsp_EPTF_ExecCtrl_StartStopScenarioDisable := {
    {
        scIdName := {
            eGrpName := "grp0",
            scName := "scenario_0_declarator2"
        },
        disabled := true
    }
}
tsp_EPTF_ExecCtrl_StartStopTCDisable := {
  {
    tcIdName:= {eGrpName:="grp0",scName:="scenario_0_declarator2", tcName := "TC0_declarator2"},disabled:=true
  }
}*/
tsp_EPTF_ExecCtrl_TimeProfileDescrList := {
    {
        name := "monday",
        timeProfileData := {
            {
                time := 3.0,
                targetValue := 2.0
            },
            {
                time := 6.0,
                targetValue := 4.0
            },
            {
                time := 9.0,
                targetValue := 6.0
            },
            {
                time := 12.0,
                targetValue := 8.0
            }
        }
    },
    {
        name := "tuesday",
        timeProfileData := {
            {
                time := 16.0,
                targetValue := 2.0
            },
            {
                time := 20.0,
                targetValue := 4.0
            },
            {
                time := 24.0,
                targetValue := 6.0
            },
            {
                time := 28.0,
                targetValue := 8.0
            }
        }
    }
}

tsp_EPTF_ExecCtrl_TimeProfileList := {
    {
        name := "Days",
        timeProfileList := {
            {
                timeProfileDescrName := "monday",
                startTime := 0.0,
                periodOfRepetition := 0.0,
                nofRepetition := 0
            },
            {
                timeProfileDescrName := "tuesday",
                startTime := 0.0,
                periodOfRepetition := 0.0,
                nofRepetition := 0
            }
        }
    }
}

tsp_EPTF_ExecCtrl_TimeProfile2TcList := {
    {
        tcId := {
            eGrpName := "grp0",
            scName := "scenario_0_declarator2",
            tcName := "TC0_declarator2"
        },
        timeProfileName := "Days"
    }
}
tsp_EPTF_ExecCtrl_RegulatorNames := {
    "Regulator 1",
    "Regulator 2",
    "Regulator 3"
}// used to determine part of the total value

 tsp_EPTF_ExecCtrl_RegulatedItems := {
    {
        idName := {
            cps_TC := {
                eGrpName := "grp0",
                scName := "scenario_1_declarator2",
                tcName := "TC0_declarator2"
            }
        },
        weight := 0.5,
        enabled := true,
        regulatorName := "Regulator 1"
    },
  {
    idName := {
      cps_SC := {
        eGrpName := "grp1",
        scName := "scenario_0_declarator3"
      }
    },
    weight := 1.0,          // used to determine part of the total value
    enabled := true,       // regulation enabled
    regulatorName := "Regulator 2" // name in EPTF_ExecCtrl_Regulators: this regulator regulates this item
  }
}//tsp_debug_EPTF_SchedulerFunctions := true

tsp_LGenBase_EntityGrpDeclarators := {
    {
        name := "grp0",
        eType := "Entity_A",
        eCount := 300
    },
    {
        name := "grp1",
        eType := "Entity_A",
        eCount := 300
    },
    {
        name := "grp2",
        eType := "Entity_A",
        eCount := 300
    }
}
tsp_LGenBase_Scenarios2Grps := {
    {
        eGrpName := "grp0",
        scenarioNames := {
            "scenario_0_declarator2",
            "scenario_1_declarator2"
        }
    },
    {
        eGrpName := "grp1",
        scenarioNames := {
           "scenario_0_declarator3",
            "scenario_0"
        }
    },
    {
        eGrpName := "grp2",
        scenarioNames := {
           "SC_0"
          
        }
    }
}

tsp_LGenBase_ScenarioDeclarators := {
    {
        name := "scenario_0",
        tcList := {
            {
                tcName := "TC0",
                startDelay := 0.0,
                cpsToReach := 12.0,
                enableEntities := true,
                enable := true,
                ranges := { }
            },
            {
                tcName := "TC1",
                startDelay := 0.0,
                cpsToReach := 6.0,
                enableEntities := true,
                enable := false,
                ranges := { }
            }
        }
    }
}

tsp_LGenBase_tcTypeDeclarators := {
    {
        name := "TC0",
        fsmName := "DUMMY_FSM",
        entityType := "Entity_A",
        customEntitySucc := "",
        groupFinishConditions := {
            nrOfExecStart := omit,
            nrOfSuccesses := omit,
            nrOfFails := omit,
            nrOfGrpLoop := omit,
            nrOfRangeLoop := omit,
            execTime := omit,
            customFinishCondition := omit
        },
        entityFinishConditions := {
            nrOfExecStart := omit,
            nrOfSuccesses := omit,
            nrOfFails := omit,
            customFinishCondition := omit
        },
        groupFinishActions := {
            {
                enableTc := {
                    tcName := "TC1",
                    aMode := available
                }
            },
            {
                disableTc := {
                    tcName := "TC0"
                }
            },
            {
                enableAllTc := {
                    aMode := available
                }
            },
            {
                disableAllTc := {
                    aMode := enableIfPreviousSuccess
                }
            }
        },
        entityFinishActions := { },
        params := {
            {
                aName := "myApplication1",
                pName := "header",
                pValue := "$EXTPATH/sip_support/templates/deregister.header"
            },
            {
                aName := "myApplication2",
                pName := "boost",
                pValue := "true"
            }
        }
    },
    {
        name := "TC1",
        fsmName := "DUMMY_FSM2",
        entityType := "Entity_A",
        customEntitySucc := "",
        groupFinishConditions := {
            nrOfExecStart := omit,
            nrOfSuccesses := omit,
            nrOfFails := omit,
            nrOfGrpLoop := omit,
            nrOfRangeLoop := omit,
            execTime := omit,
            customFinishCondition := omit
        },
        entityFinishConditions := {
            nrOfExecStart := omit,
            nrOfSuccesses := omit,
            nrOfFails := omit,
            customFinishCondition := omit
        },
        groupFinishActions := { },
        entityFinishActions := { },
        params := { }
    }
}

tsp_LGenBase_TcMgmt_tcTypeDeclarators2 := {
    {
        name := "TC0_declarator2",
        fsmName := "DUMMY_FSM",
        entityType := "Entity_A",
        customEntitySucc := ""
    },
    {
        name := "TC1_declarator2",
        fsmName := "DUMMY_FSM2",
        entityType := "Entity_A",
        customEntitySucc := ""
    },
    {
        name := "TC2_declarator2",
        fsmName := "DUMMY_FSM2",
        entityType := "Entity_A",
        customEntitySucc := ""
    }
}

tsp_LGenBase_TcMgmt_ScenarioDeclarators2 := {
    {
        name := "scenario_0_declarator2",
        tcList := {
            {
                tcName := "TC0_declarator2",
                startDelay := 0.0,
                cpsToReach := 12.0,
                enableEntities := true,
                enable := true,
                ranges := {
                    {
                        name := "myRange_MSB",
                        enableSplit := true,
                        baseOffset := 10,
                        count := 30
                    },
                    {
                        name := "myRange_middle",
                        enableSplit := false,
                        baseOffset := 10,
                        count := 30
                    },
                    {
                        name := "myRange_LSB",
                        enableSplit := false,
                        baseOffset := 0,
                        count := 9
                    }
                },
                params := {
                    {
                        aName := "myApplication1",
                        pName := "header",
                        pValue := "$EXTPATH/sip_support/templates/deregister.header"
                    },
                    {
                        aName := "myApplication2",
                        pName := "boost",
                        pValue := "true"
                    }
                },
                groupFinishConditions := {
                    nrOfExecStart := omit,
                    nrOfSuccesses := omit,
                    nrOfFails := omit,
                    nrOfGrpLoop := omit,
                    nrOfRangeLoop := omit,
                    execTime := omit,
                    entitiesFinished := omit,
                    customFinishCondition := omit
                },
                entityFinishConditions := {
                    nrOfExecStart := omit,
                    nrOfSuccesses := omit,
                    nrOfFails := omit,
                    customFinishCondition := omit
                },
                tcFinishActions := { },
                entityFinishActions := { }
            }
        }
    },
    { 
    name := "scenario_1_declarator2",
    tcList := {
      {
        tcName := "TC0_declarator2",
        startDelay := 0.0,
        cpsToReach := 12.0,
        enableEntities := true,
        enable := true,
        ranges := {
          {name := "myRange_MSB", enableSplit := true, baseOffset := 100, count := 30},
          {name := "myRange_LSB", enableSplit := false, baseOffset := 10, count := 90}
        },
        params := {
          {aName := "myApplication1", pName := "header", pValue := "$EXTPATH/sip_support/templates/deregister.header"},
          {aName := "myApplication2", pName := "boost", pValue := "true"}
        },
        groupFinishConditions := {
          nrOfExecStart := omit,
          nrOfSuccesses := omit,
          nrOfFails := omit,
          nrOfGrpLoop := omit,
          nrOfRangeLoop := omit,
          execTime := omit,
          entitiesFinished := omit,
          customFinishCondition := omit
        },
        entityFinishConditions := {
          nrOfExecStart := omit,
          nrOfSuccesses := omit,
          nrOfFails := omit,
          customFinishCondition := omit
        },
        tcFinishActions := { {
          actionsType := onLaunchFinish,//onGroupFinishCondition,
          actions := {
              {enableTc := {tcName := "TC1_declarator2", aMode := available}},
              {disableTc := {tcName := "TC0_declarator2"}}//,
              //{enableAllTc := {aMode := enableIfPreviousSuccess}}//,
              //{disableAllTc := {aMode := enableIfPreviousSuccess}} //,
        //      {customFinishFunction := "myFunctionNameForGrpFinish"}
          }}
        },
        entityFinishActions := {
    //      {enableEntity4Tc := {tcName := "TC1", aMode := enableIfPreviousSuccess}},
    //      {disableEntity4Tc := {tcName := "TC0"}},
    //      {generateFsmEvent := {iIdx := -1}} //,
    //      {customFinishFunction := "myFunctionNameForEntityFinish"}
        }
      },
      {
        tcName := "TC1_declarator2",
        startDelay := 0.0,
        cpsToReach := 6.0,
        enableEntities := true,
        enable := false,
        ranges := {},
        params := {},
        groupFinishConditions := {
          nrOfExecStart := omit,
          nrOfSuccesses := omit,
          nrOfFails := omit,
          nrOfGrpLoop := omit,
          nrOfRangeLoop := omit,
          execTime := omit,
          entitiesFinished := omit,
          customFinishCondition := omit
        },
        entityFinishConditions := {
          nrOfExecStart := omit,
          nrOfSuccesses := omit,
          nrOfFails := omit,
          customFinishCondition := omit
        },
        tcFinishActions := {},
        entityFinishActions := {}
      }
    }  
  }
}

tsp_LGenBase_TcMgmt_WeightedScenarioDeclarators := {
    {
        name := "scenario_0_declarator3",
        enabled := true,
        cpsToReach := 6.0,
        lockCPS := false,
        weightedScData := {
            deterministicMix := true
        },
        tcList := {
            {
                tcName := "TC0_declarator2",
                tcWeight := 1.0,
                enableEntities := true,
                enable := true,
                ranges := {
                    {
                        name := "myRange_MSB",
                        enableSplit := true,
                        baseOffset := 10,
                        count := 30
                    },
                    {
                        name := "myRange_middle",
                        enableSplit := false,
                        baseOffset := 10,
                        count := 30
                    },
                    {
                        name := "myRange_LSB",
                        enableSplit := false,
                        baseOffset := 0,
                        count := 9
                    }
                },
                params := {
                    {
                        aName := "myApplication1",
                        pName := "header",
                        pValue := "$EXTPATH/sip_support/templates/deregister.header"
                    },
                    {
                        aName := "myApplication2",
                        pName := "boost",
                        pValue := "true"
                    }
                },
                groupFinishConditions := {
                    nrOfExecStart := omit,
                    nrOfSuccesses := omit,
                    nrOfFails := omit,
                    nrOfGrpLoop := omit,
                    nrOfRangeLoop := omit,
                    execTime := omit,
                    entitiesFinished := omit,
                    customFinishCondition := omit
                },
                entityFinishConditions := {
                    nrOfExecStart := omit,
                    nrOfSuccesses := omit,
                    nrOfFails := omit,
                    customFinishCondition := omit
                },
                tcFinishActions := {
                    {
                        actionsType := onGroupFinishCondition,
                        actions := {
                            /*{
                                enableTc := {
                                    tcName := "TC1_declarator2",
                                    aMode := enableIfPreviousSuccess
                                }
                            },*/
                            {
                                disableTc := {
                                    tcName := "TC0_declarator2"
                                }
                            }/*,
                            {
                                enableAllTc := {
                                    aMode := available
                                }
                            },
                            {
                                disableAllTc := {
                                    aMode := enableIfPreviousSuccess
                                }
                            }*/
                        }
                    }
                },
                entityFinishActions := { }
            },
            {
                tcName := "TC1_declarator2",
                tcWeight := 1.0,
                enableEntities := true,
                enable := true,
                ranges := { },
                params := { },
                groupFinishConditions := {
                    nrOfExecStart := omit,
                    nrOfSuccesses := omit,
                    nrOfFails := omit,
                    nrOfGrpLoop := omit,
                    nrOfRangeLoop := omit,
                    execTime := omit,
                    entitiesFinished := omit,
                    customFinishCondition := omit
                },
                entityFinishConditions := {
                    nrOfExecStart := omit,
                    nrOfSuccesses := omit,
                    nrOfFails := omit,
                    customFinishCondition := omit
                },
                tcFinishActions := { },
                entityFinishActions := { }
            }
        }
    }
}
tsp_LGenBase_TcMgmt_ScenarioDeclarators3 :=
{
{
    name := "SC_0",
    tcList := {
      {
        tcName := "TC0_declarator2",
        tcParamsList := {
          {startDelay := 0.0},
          {target := { cpsToReach := 1.0 }},
          {scheduler := {preDefinedName := orig}},
          {enableEntitiesAtStart := true},
          {enabledAtStart := true},
          {ranges := {}},
          {params := {}},
          {trafficStartFinish := {
         
            }
          }
        }
      },
      {
        tcName := "TC1_declarator2",
        tcParamsList := {
          {startDelay := 0.0},
          {target := { cpsToReach := 2.0 }},
//          {scheduler := {preDefinedName := imst}},
          {scheduler := {preDefinedName := cs}},
          {entitySelection := random},
          {enableEntitiesAtStart := true},
          {enabledAtStart := true},
          {trafficStartFinish := {
         
            }
          }
        }
      },
      {
        tcName := "TC2_declarator2",
        tcParamsList := {
          {startDelay := 0.0},
          {target := { cpsToReach := 2.0 }},
          {scheduler := {preDefinedName := cs}},
          {entitySelection := random},
          {enableEntitiesAtStart := true},
          {enabledAtStart := true},
          {trafficStartFinish := {

            }
          }
        }
      }
    },
    scParamsList := {}
  }/*,
  {
    name := "SC_PH_0",
    tcList := {
      {
        tcName := "TC1_declarator2",
        tcParamsList := {
          {startDelay := 0.0},
          {target := { cpsToReach := 1.0 }},
          {scheduler := {preDefinedName := poisson}},
          {enableEntitiesAtStart := true},
          {enabledAtStart := true},
          {ranges := {
              {name := "myRange_MSB", enableSplit := true, baseOffset := 10, count := 30},
              {name := "myRange_middle", enableSplit := false, baseOffset := 10, count := 30},
              {name := "myRange_LSB", enableSplit := false, baseOffset := 0, count := 9} 
            }
          },
          {params := {
              {aName := "myApplication1", pName := "header", pValue := "$EXTPATH/sip_support/templates/deregister.header"},
              {aName := "myApplication2", pName := "boost", pValue := "true"}
            }
          },
          {trafficStartFinish := {
              {nrOfExecStart := {count := 5, actions := {}}},
              {nrOfSuccesses := {count := 5,actions := {}}},
              //{nrOfGrpLoop := {count := 1,actions := {}}},
              {execTime := {time := 12.3,actions := {}}},
              {anythingFinished := {actions := {
                    {enableTc := {tcName := "TC0_declarator2", aMode := available}},
                    {disableTc := {tcName := "TC1_declarator2"}}
                  }}}
            }
          }
        }
      },
      {
        tcName := "TC0_declarator2",
        tcParamsList := {
          {startDelay := 0.0},
          {target := { cpsToReach := 2.0 }},
          {scheduler := {preDefinedName := imst2}},
          {entitySelection := random},
          {enableEntitiesAtStart := true},
          {enabledAtStart := false},
          {trafficStartFinish := {
              {nrOfExecStart := {count := 5,actions := {}}},
              {execTime := {time := 15.0,actions := {}}}
            }
          }
        }
      }
    },
    scParamsList := {
      {enabled := true},
      {phaseListName := "BasicPhase"},
      {phaseFinishConditions := {
          {
            phase := "preamble",
            conditions := {
              {
                tcStopped := "TC0_declarator2"
              }
            }
          }
        }
      },
      {phaseStateChangeActions := {
          {
            phase := "preamble",
            state := RUNNING,
            actions := {
              {
                startScenario := "This should have been implemented :)"
              }
            }
          },
          {
            phase := "preamble",
            state := STOPPING,
            actions := {
              {
                stopTc := "TC0_declarator2"
              }
            }
          }
        }
      }
    }
  },
  {
    name := "SC_PH_1",
    tcList := {
      {
        tcName := "TC0_declarator2",
        tcParamsList := {
          {target := { cpsToReach := 1.0 }},
          {scheduler := {preDefinedName := imst}},
          {enableEntitiesAtStart := true},
          {enabledAtStart := true},
          {ranges := {
              {name := "myRange_MSB", enableSplit := true, baseOffset := 10, count := 30},
              {name := "myRange_middle", enableSplit := false, baseOffset := 10, count := 30},
              {name := "myRange_LSB", enableSplit := false, baseOffset := 0, count := 9}
            }},
          {params := {
              {aName := "myApplication1", pName := "header", pValue := "$EXTPATH/sip_support/templates/deregister.header"},
              {aName := "myApplication2", pName := "boost", pValue := "true"}
            }},
          {trafficStartFinish := {
              {nrOfExecStart := {count := 5,actions := {}}},
              {execTime := {time := 12.3,actions := {}}},
              {nrOfSuccesses := {count := 5,actions := {}}},
              //nrOfGrpLoop := 1,
              {anythingFinished := {actions := {
                    {enableTc := {tcName := "TC1_declarator2", aMode := enableIfPreviousSuccess}},
                    {disableTc := {tcName := "TC0_declarator2"}},
                    {enableAllTc := {aMode := available}},
                    {disableAllTc := {aMode := enableIfPreviousSuccess}}
                  }}}
            }}
        }
      },
      {
        tcName := "TC1_declarator2",
        tcParamsList := {
          {target := { cpsToReach := 2.0 }},
          {scheduler := {preDefinedName := orig}},
          {enableEntitiesAtStart := true},
          {enabledAtStart := true}
        }
      }
    },
    scParamsList := {
      {phaseListName := "BasicPhase"},
      {phaseFinishConditions := {
          {
            phase := "preamble",
            conditions := {
              {
                tcStopped := "TC0_declarator2"
              }
            }
          }
        }
      },
      {phaseStateChangeActions := {
          {
            phase := "preamble",
            state := RUNNING,
            actions := {
              {
                startScenario := "This should have been implemented :)"
              }
            }
          },
          {
            phase := "preamble",
            state := STOPPING,
            actions := {
              {
                stopTc := "TC0_declarator2"
              }
            }
          }
        }
      }
    }
  }*/
}

tsp_EPTF_LGenBase_PhaseList_Declarators :=
{
  {
    name := "BasicPhase",
    phases := 
    {
      { name := "preamble", enabled := true },
      { name := "loadgen" , enabled := true },
      { name := "postamble",enabled := true }
    }
  },
  {
    name := "AdvancedPhases",
    phases := 
    {
      { name := "init",     enabled := true },
      { name := "preamble", enabled := true },
      { name := "loadgen" , enabled := true },
      { name := "postamble",enabled := true },
      { name := "delete",   enabled := true }
    }
  }
}

/*tsp_EPTF_ExecCtrl_ScenarioGroup_Declarators :=
{
  {
    name := "ScGroup1",
    execMode := AUTOMATIC,
    scenarioNames := {"grp2.SC_PH_0"},
    phaseListName := "BasicPhases"
  }
}*/

tsp_EPTF_ExecCtrl_LGenPool_Declarators := {
  {
    name := "Pool_1",
    lgenPoolItems := {
      {
        hostname := "rhea",
        num := 3,
        createFunctionName := "CreateLgen"
      },
      {
        hostname := "rhea",
        num := 1,
        createFunctionName := "ExecCtrlUIHandler_Demo.f_EPTF_myCreateLGenB"
      },
      {
        hostname := "rhea", // this host is already in pool, but now different creator fn:
        num := 3,
        createFunctionName := "ExecCtrlUIHandler_Demo.f_EPTF_myCreateExitingLGen" // these LGens will exit
      }
    }
  },
  {
    name := "Pool_2",
    lgenPoolItems := {
      {
        hostname := "rhea",
        num := 1,
        createFunctionName := "f_lgenCreatorB" // same as "ExecCtrlUIHandler_Demo.f_EPTF_myCreateLGenB"
      },
      {
        hostname := "localhost",
        num := 3,
        createFunctionName := "ExecCtrlUIHandler_Demo.f_EPTF_myCreateExitingLGen" // these LGens will exit
      }
    }
  },
  {
    name := "Pool_3",
    lgenPoolItems := {
      {
        hostname := "127.0.0.1",
        num := 10,
        createFunctionName := "f_noSuchFunction" // this function is not registered
      }
    }
  },
  {
    name := "Pool_Empty",
    lgenPoolItems := {
      {
        hostname := "rhea",
        num := 1,
        createFunctionName := "f_lgenCreatorEmpty" // same as "ExecCtrlUIHandler_Demo.f_EPTF_myCreateLGenEmpty"
      }
    }
  },
  {
    name := "Pool_null", // this pool cannot be created
    lgenPoolItems := {
      {
        hostname := "rhea",
        num := 3,
        createFunctionName := "ExecCtrlUIHandler_Demo.f_EPTF_myCreateLGenNull"
      }
    }
  }
}

tsp_EPTF_ExecCtrl_EntityGroup2LGenPool_List := {
 /* {
    eGrpName := "grp2",
    lgenPoolName := "Pool_1"
  },
  {
    eGrpName := "grpB_on_Pool_2",
    lgenPoolName := "Pool_2"
  },
  {
    eGrpName := "grpA_on_Pool_2",
    lgenPoolName := "Pool_2"
  },
  {
    eGrpName := "grpA2_on_Pool_2",
    lgenPoolName := "Pool_2"
  },
  {
    eGrpName := "grp0_onPoolEmpty",
    lgenPoolName := "Pool_Empty"
  },
  {
    eGrpName := "grp0_onPoolNull",
    lgenPoolName := "Pool_null"
  }*/
}

// phase dependent regulation test config:
  tsp_ExecCtrl_Test_phaseRegulationConfig := {
    eGroups := {
      {name := "eGroup", eType := "Entity_A", eCount := 100},
      {name := "eGroupNoReg", eType := "Entity_A", eCount := 100}
    },
    sc2eGroups := {
      {eGrpName:="eGroup", scenarioNames:={"Sc", "WSc"}},
      {eGrpName:="eGroupNoReg", scenarioNames:={"Sc", "WSc"}}
    },
    tcTypes := {
      {name := "TcType", fsmName := "DUMMY_FSM", entityType := "Entity_A", customEntitySucc := ""}
    },
    scTypes := {
      {
        name := "Sc",
        tcList := {
          {
            tcName := "Tc1",
            tcParamsList := {
              {tcTypeName := "TcType"},
              {target := { cpsToReach := 1.0 }},
              {enableEntitiesAtStart := true},
              {trafficStartFinish := {
                  {execTime := {time := 10.0,actions := {}}}
                }
              }
            }
          },
          {
            tcName := "Tc2",
            tcParamsList := {
              {tcTypeName := "TcType"},
              {target := { cpsToReach := 1.0 }},
              {enableEntitiesAtStart := true},
              {trafficStartFinish := {
                  {execTime := {time := 10.0,actions := {}}}
                }
              }
            }
          },
          {
            tcName := "Tc3",
            tcParamsList := {
              {tcTypeName := "TcType"},
              {target := { cpsToReach := 14.0 }},
              {enableEntitiesAtStart := true},
              {trafficStartFinish := {
                  {execTime := {time := 10.0,actions := {}}}
                }
              }
            }
          },
          {
            tcName := "Tc4",
            tcParamsList := {
              {tcTypeName := "TcType"},
              {target := { cpsToReach := 1.0 }},
              {enableEntitiesAtStart := true}
            }
          },
          {
            tcName := "Tc5",
            tcParamsList := {
              {tcTypeName := "TcType"},
              {target := { cpsToReach := 1.0 }},
              {enableEntitiesAtStart := true}
            }
          }
        },
        scParamsList := {
          {phaseListName := "thePhases"},
          {phaseFinishConditions := {
              {
                phase := "phase1",
                conditions := {
                  { tcFinished := "Tc1" }
                }
              },
              {
                phase := "phase2",
                conditions := {
                  { tcFinished := "Tc2" }
                }
              },
              {
                phase := "phase3",
                conditions := {
                  { tcFinished := "Tc3" }
                }
              }
            }
          },
          {phaseStateChangeActions := {
              {
                phase := "phase1",
                state := RUNNING,
                actions := {
                  { startScenario:="Sc" },
                  { startTc := "Tc1" },
                  { startTc := "Tc4" },
                  { startTc := "Tc5" }
                }
              },
              {
                phase := "phase2",
                state := RUNNING,
                actions := {
                  { startTc := "Tc2" }
                }
              },
              {
                phase := "phase3",
                state := RUNNING,
                actions := {
                  { startTc := "Tc3" }
                }
              },
              {
                phase := "phase3",
                state := FINISHED,
                actions := {
                  { stopTc := "Tc4" },
                  { stopTc := "Tc5" },
                  { customAction:="phaseRegTestEnd" }
                }
              }
            }
          }
        }
      },
      {
        name := "WSc",
        tcList := {
          {
            tcName := "Tc1",
            tcParamsList := {
              {tcTypeName := "TcType"},
              {target := { trafficWeight := 1.0 }},
              {enableEntitiesAtStart := true},
              {trafficStartFinish := {
                  {execTime := {time := 10.0,actions := {}}}
                }
              }
            }
          },
          {
            tcName := "Tc2",
            tcParamsList := {
              {tcTypeName := "TcType"},
              {target := { trafficWeight := 1.0 }},
              {enableEntitiesAtStart := true},
              {trafficStartFinish := {
                  {execTime := {time := 10.0,actions := {}}}
                }
              }
            }
          },
          {
            tcName := "Tc3",
            tcParamsList := {
              {tcTypeName := "TcType"},
              {target := { trafficWeight := 1.0 }},
              {enableEntitiesAtStart := true},
              {trafficStartFinish := {
                  {execTime := {time := 10.0,actions := {}}}
                }
              }
            }
          }
        },
        scParamsList := {
          {weightedScData := {
              cpsToReach := 1.0,
              lockCPS := false,
              deterministicMix := true,
              scheduler := omit
            }
          },
          {phaseListName := "thePhases"},
          {phaseFinishConditions := {
              {
                phase := "phase1",
                conditions := {
                  { tcFinished := "Tc1" }
                }
              },
              {
                phase := "phase2",
                conditions := {
                  { tcFinished := "Tc2" }
                }
              },
              {
                phase := "phase3",
                conditions := {
                  { tcFinished := "Tc3" }
                }
              }
            }
          },
          {phaseStateChangeActions := {
              {
                phase := "phase1",
                state := RUNNING,
                actions := {
                  { startScenario:="Sc" },
                  { startTc := "Tc1" }
                }
              },
              {
                phase := "phase2",
                state := RUNNING,
                actions := {
                  { startTc := "Tc2" }
                }
              },
              {
                phase := "phase3",
                state := RUNNING,
                actions := {
                  { startTc := "Tc3" }
                }
              },
              {
                phase := "phase3",
                state := FINISHED,
                actions := {
                  { customAction:="phaseRegTestEnd" }
                }
              }
            }
          }
        }
      }
    },
    phases := {
      {
        name := "thePhases",
        phases :=
        {
          { name := "phase1", enabled := true },
          { name := "phase2" , enabled := true },
          { name := "phase3",enabled := true }
        }
      }
    },
    scGroups := {
      {
        name := "scGroup",
        execMode := AUTOMATIC,
        scenarioNames := { "eGroup.Sc", "eGroup.WSc", "eGroupNoReg.Sc", "eGroupNoReg.WSc" },
        phaseListName := "thePhases"
      }
    },
    phaseRegulators := {
      {
        regulatorName := "Regulator1",
        targetValue := 5.0
      },
      {
        regulatorName := "Regulator2",
        targetValue := 10.0
      },
      {
        regulatorName := "Regulator4",
        targetValue := 2.0
      },
      {
        regulatorName := "Regulator5a",
        targetValue := 3.3
      },
      {
        regulatorName := "Regulator5b",
        targetValue := 4.4
      },
      {
        regulatorName := "RegulatorW",
        targetValue := 7.0
      }
    },
    regulatedItems := {
      {
        idName := {
          cps_TCInPhase := {
            eGrpName := "eGroup",
            scName := "Sc",
            tcName := "Tc1",
            phase := "phase1"
          }
        },
        weight := 1.0,
        enabled := true,
        regulatorName := "Regulator1"
      },
      {
        idName := {
          cps_TCInPhase := {
            eGrpName := "eGroup",
            scName := "Sc",
            tcName := "Tc2",
            phase := "phase2"
          }
        },
        weight := 1.0,
        enabled := true,
        regulatorName := "Regulator2"
      },
      {
        idName := {
          cps_TCInPhase := {
            eGrpName := "eGroup",
            scName := "Sc",
            tcName := "Tc4",
            phase := "phase2"
          }
        },
        weight := 1.0,
        enabled := true,
        regulatorName := "Regulator4"
      },
      {
        idName := {
          cps_TCInPhase := {
            eGrpName := "eGroup",
            scName := "Sc",
            tcName := "Tc5",
            phase := "phase1"
          }
        },
        weight := 1.0,
        enabled := true,
        regulatorName := "Regulator5a"
      },
      {
        idName := {
          cps_TCInPhase := {
            eGrpName := "eGroup",
            scName := "Sc",
            tcName := "Tc5",
            phase := "phase2"
          }
        },
        weight := 1.0,
        enabled := true,
        regulatorName := "Regulator5b"
      },
      {
        idName := {
          cps_SCInPhase := {
            eGrpName := "eGroup",
            scName := "WSc",
            phase := "phase2"
          }
        },
        weight := 1.0,
        enabled := true,
        regulatorName := "RegulatorW"
      }
    }
  }
// end of phase dependent regulation test config

tsp_ExecCtrl_Test_HL20955Config := {
    eGroups := {
      {name := "eGrpHL20955", eType := "Entity_A", eCount := 100}
    },
    sc2eGroups := {
      {eGrpName:="eGrpHL20955", scenarioNames:={"ScHL20955", "WScHL20955"}}
    },
    tcTypes := {
      {name := "TcTypeHL20955", fsmName := "DUMMY_FSM", entityType := "Entity_A", customEntitySucc := ""}
    },
    scTypes := {
      {
        name := "ScHL20955",
        tcList := {
          {
            tcName := "Tc1",
            tcParamsList := {
              {tcTypeName := "TcTypeHL20955"},
              {target := { cpsToReach := 1.0 }},
              {enableEntitiesAtStart := true},
              {enabledAtStart := true},
              {trafficStartFinish := {
                  {nrOfSuccesses := {count := 100,actions := {
                    // this condition becomes true if traffic is restared after CPS is set to zero
                    // The nrOfSuccesses will be 1CPS*5sec+10CPS*5sec = 55 calls
                    // after the restart another 55 calls will be generated => condition should fire (110 > 100)
                    //{customFinishFunction := "f_EPTF_ExecCtrlClient_Test_HL20955_pass"}
                  }}}//,
                  //{execTime := {time := 30.0,actions := {
                    // this condition will not fire because of the HL20955 bug
                    //{customFinishFunction := "f_EPTF_ExecCtrlClient_Test_HL20955_fail"}
                  //}}}
                }
              },
              {trafficFinishedActions := {
                //{testFinished := {}},
                {customFinishFunction := "f_EPTF_ExecCtrlClient_Test_HL20955_pass"}
              }}
            }
          }
        },
        scParamsList := {
        }
      },
      {
        name := "WScHL20955",
        tcList := {
          {
            tcName := "Tc1",
            tcParamsList := {
              {tcTypeName := "TcTypeHL20955"},
              {target := { trafficWeight := 1.0 }},
              {enableEntitiesAtStart := true},
              {enabledAtStart := true},
              {trafficStartFinish := {
                  {nrOfSuccesses := {count := 100,actions := {
                    //{customFinishFunction := "f_EPTF_ExecCtrlClient_Test_HL20955_pass"}
                  }}}//,
                  //{execTime := {time := 30.0,actions := {
                    //{customFinishFunction := "f_EPTF_ExecCtrlClient_Test_HL20955_fail"}
                  //}}}
                }
              },
              {trafficFinishedActions := {
                //{testFinished := {}},
                {customFinishFunction := "f_EPTF_ExecCtrlClient_Test_HL20955_pass"}
              }}
            }
          }
        },
        scParamsList := {
          {weightedScData := {
              cpsToReach := 1.0,
              lockCPS := false,
              deterministicMix := true,
              scheduler := omit
            }
          }
        }
      }
    },
    timeProfileDescrList := {
      {
        name := "ZeroCPSDescr",
        timeProfileData := {
            {
                time := 5.0,
                targetValue := 10.0
            },
            {
                time := 10.0,
                targetValue := 0.0
            },
            {
                time := 15.0,
                targetValue := 11.0
            },
            {
                time := 20.0,
                targetValue := 0.0
            }
        }
      }
    },
    timeProfileList := {
      {
        name := "ZeroCPS",
        timeProfileList := {
            {
                timeProfileDescrName := "ZeroCPSDescr",
                startTime := 0.0,
                periodOfRepetition := 0.0,
                nofRepetition := 0
            }
        }
      }
    },
    timeProfile2TcList := {
      {
        tcId := {
            eGrpName := "eGrpHL20955",
            scName := "ScHL20955",
            tcName := "Tc1"
        },
        timeProfileName := "ZeroCPS"
      },
      {
        tcId := {
            eGrpName := "eGrpHL20955",
            scName := "WScHL20955",
            tcName := "Tc1"
        },
        timeProfileName := "ZeroCPS"
      }
    }
}

tsp_ExecCtrl_Test_ExecTimeForSmallCPSConfig := {
    eGroups := {
      {name := "eGrpHL20955", eType := "Entity_A", eCount := 100}
    },
    sc2eGroups := {
      {eGrpName:="eGrpHL20955", scenarioNames:={"ScHL20955"}}
    },
    tcTypes := {
      {name := "TcTypeHL20955", fsmName := "DUMMY_FSM", entityType := "Entity_A", customEntitySucc := ""}
    },
    scTypes := {
      {
        name := "ScHL20955",
        tcList := {
          {
            tcName := "Tc1",
            tcParamsList := {
              {tcTypeName := "TcTypeHL20955"},
              {target := { cpsToReach := 1.0 }},
              {enableEntitiesAtStart := true},
              {enabledAtStart := true},
              {trafficStartFinish := {
                  //{nrOfSuccesses := {count := 100,actions := {
                    // this condition becomes true if traffic is restared after CPS is set to zero
                    // The nrOfSuccesses will be 1CPS*5sec+10CPS*5sec = 55 calls
                    // after the restart another 55 calls will be generated => condition should fire (110 > 100)
                    //{customFinishFunction := "f_EPTF_ExecCtrlClient_Test_HL20955_pass"}
                  //}}},
                  {execTime := {time := 30.0,actions := {
                    // this condition will not fire because of the HL20955 bug
                    //{customFinishFunction := "f_EPTF_ExecCtrlClient_Test_HL20955_fail"}
                  }}}
                }
              },
              {trafficFinishedActions := {
                {customFinishFunction := "f_EPTF_ExecCtrlClient_Test_execTime"},
                {testFinished := {}}
              }}
            }
          }
        },
        scParamsList := {
        }
      }
    },
    timeProfileDescrList := {
      {
        name := "ZeroCPSDescr",
        timeProfileData := {
            {
                time := 5.0,
                targetValue := 10.0
            },
            {
                time := 10.0,
                targetValue := 0.04 // if this is smaller than 1/(30-10) = 0.05 then execTime will fire too early
            }
        }
      }
    },
    timeProfileList := {
      {
        name := "ZeroCPS",
        timeProfileList := {
            {
                timeProfileDescrName := "ZeroCPSDescr",
                startTime := 0.0,
                periodOfRepetition := 0.0,
                nofRepetition := 0
            }
        }
      }
    },
    timeProfile2TcList := {
      {
        tcId := {
            eGrpName := "eGrpHL20955",
            scName := "ScHL20955",
            tcName := "Tc1"
        },
        timeProfileName := "ZeroCPS"
      },
      {
        tcId := {
            eGrpName := "eGrpHL20955",
            scName := "WScHL20955",
            tcName := "Tc1"
        },
        timeProfileName := "ZeroCPS"
      }
    }
}

tsp_ExecCtrl_Test_ExecTimeForZeroCPSConfig := {
    eGroups := {
      {name := "eGrpHL20955", eType := "Entity_A", eCount := 100}
    },
    sc2eGroups := {
      {eGrpName:="eGrpHL20955", scenarioNames:={"ScHL20955"}}
    },
    tcTypes := {
      {name := "TcTypeHL20955", fsmName := "DUMMY_FSM", entityType := "Entity_A", customEntitySucc := ""}
    },
    scTypes := {
      {
        name := "ScHL20955",
        tcList := {
          {
            tcName := "Tc1",
            tcParamsList := {
              {tcTypeName := "TcTypeHL20955"},
              {target := { cpsToReach := 1.0 }},
              {enableEntitiesAtStart := true},
              {enabledAtStart := true},
              {trafficStartFinish := {
                  //{nrOfSuccesses := {count := 100,actions := {
                    // this condition becomes true if traffic is restared after CPS is set to zero
                    // The nrOfSuccesses will be 1CPS*5sec+10CPS*5sec = 55 calls
                    // after the restart another 55 calls will be generated => condition should fire (110 > 100)
                    //{customFinishFunction := "f_EPTF_ExecCtrlClient_Test_HL20955_pass"}
                  //}}},
                  {execTime := {time := 30.0,actions := {
                    // this condition will not fire because of the HL20955 bug
                    //{customFinishFunction := "f_EPTF_ExecCtrlClient_Test_HL20955_fail"}
                  }}}
                }
              },
              {trafficFinishedActions := {
                {customFinishFunction := "f_EPTF_ExecCtrlClient_Test_execTime"},
                {testFinished := {}}
              }}
            }
          }
        },
        scParamsList := {
        }
      }
    },
    timeProfileDescrList := {
      {
        name := "ZeroCPSDescr",
        timeProfileData := {
            {
                time := 5.0,
                targetValue := 10.0
            },
            {
                time := 10.0,
                targetValue := 0.0
            },
            {
                time := 15.0,
                targetValue := 11.0
            },
            {
                time := 20.0,
                targetValue := 0.0 // if this is 0.0 then execTime will not fire at all
            }
        }
      }
    },
    timeProfileList := {
      {
        name := "ZeroCPS",
        timeProfileList := {
            {
                timeProfileDescrName := "ZeroCPSDescr",
                startTime := 0.0,
                periodOfRepetition := 0.0,
                nofRepetition := 0
            }
        }
      }
    },
    timeProfile2TcList := {
      {
        tcId := {
            eGrpName := "eGrpHL20955",
            scName := "ScHL20955",
            tcName := "Tc1"
        },
        timeProfileName := "ZeroCPS"
      },
      {
        tcId := {
            eGrpName := "eGrpHL20955",
            scName := "WScHL20955",
            tcName := "Tc1"
        },
        timeProfileName := "ZeroCPS"
      }
    }
}

[LOGGING]
// do not use LOG_ALL, because may run out of disc quota
FileMask := TTCN_TESTCASE | TTCN_STATISTICS | TTCN_ERROR | TTCN_ACTION | TTCN_VERDICTOP | TTCN_DEBUG
//| DEBUG
ConsoleMask := TTCN_TESTCASE | TTCN_STATISTICS | TTCN_ERROR | TTCN_ACTION
LogFile := "%c@%h-%n-%r.log"
LogEventTypes := Yes
SourceInfoFormat := Stack
LogEntityName := Yes

[EXECUTE]
EPTF_ExecCtrl_Test_Testcases.control
EPTF_ExecCtrl_CLITest_TestCases.control

[MAIN_CONTROLLER]
KillTimer := 30.0

[TESTPORT_PARAMETERS]
*.EPTF_pinger.localPort := "0"
*.EPTF_guiPortIf.socket_debugging := "no"
*.EPTF_guiPortIf.server_mode := "NO"
*.EPTF_guiPortIf.halt_on_connection_reset := "NO"
*.EPTF_guiPortIf.packet_hdr_length_offset := "0"
*.EPTF_guiPortIf.packet_hdr_nr_bytes_in_length := "4"
*.EPTF_guiPortIf.packet_hdr_byte_order := "MSB"
*.EPTF_guiPortIf.use_connection_ASPs := "yes"
# EPTF CLL CLI TELNET interface
*.EPTF_CLI_TELNET_PCO.CTRL_PORTNUM := "3457"
*.EPTF_CLI_TELNET_PCO.CTRL_LOGIN_SKIPPED := "yes"
*.EPTF_CLI_TELNET_PCO.CTRL_USERNAME_CLIENT := "ttcn"
*.EPTF_CLI_TELNET_PCO.CTRL_PASSWORD_CLIENT := "ttcn"
*.EPTF_CLI_TELNET_PCO.CTRL_SERVER_PROMPT := "TTCN> "
*.EPTF_CLI_TELNET_PCO.CTRL_MODE := "server"
*.EPTF_CLI_displayTELNET_PCO.CTRL_PORTNUM := "3458"
*.EPTF_CLI_displayTELNET_PCO.CTRL_LOGIN_SKIPPED := "yes"
*.EPTF_CLI_displayTELNET_PCO.CTRL_USERNAME_CLIENT := "ttcn"
*.EPTF_CLI_displayTELNET_PCO.CTRL_PASSWORD_CLIENT := "ttcn"
*.EPTF_CLI_displayTELNET_PCO.CTRL_SERVER_PROMPT := "TTCN> "
*.EPTF_CLI_displayTELNET_PCO.CTRL_MODE := "server"

// Used in testcase tc_EPTF_UIHandler_Test_HL37208:
*.CLI_PCO.CTRL_HOSTNAME := "localhost"
*.CLI_PCO.CTRL_PORTNUM := "3457"
*.CLI_PCO.CTRL_LOGIN_SKIPPED := "yes"
*.CLI_PCO.CTRL_USERNAME_CLIENT := "ttcn"
*.CLI_PCO.CTRL_PASSWORD_CLIENT := "ttcn"
*.CLI_PCO.PROMPT1 := "TTCN> "
*.CLI_PCO.CTRL_MODE := "client"
*.Disp_PCO.CTRL_HOSTNAME := "localhost"
*.Disp_PCO.CTRL_PORTNUM := "3458"
*.Disp_PCO.CTRL_LOGIN_SKIPPED := "yes"
*.Disp_PCO.CTRL_USERNAME_CLIENT := "ttcn"
*.Disp_PCO.CTRL_PASSWORD_CLIENT := "ttcn"
*.Disp_PCO.PROMPT1 := "TTCN> "
*.Disp_PCO.CTRL_MODE := "client"
