Quintiq file version 2.0 #parent: #root Method PTF_ExecuteAction () id:Method_LibPTF_pnlTestRunner_PTF_ExecuteAction { #keys: '[105690.0.203956224]' Body: [* // Determines the status of an executing action and run through the script curraction := this.PTF_GetCurrentAction(); action := ''; mintimerinterval := this.PTF_GetMinTimerInterval(); if( curraction = '' ) { this.PTF_EndExecution(); if( vhAutoClose.Value() = 'true' ) { this.PTF_WriteLogForStartEndClient( true ); this.Application().Close(); } } else { parameters := construct( Strings ); action := this.PTF_GetActionAndParameters( curraction, ¶meters ); if( not action = LibPTF_StandardAction::Wait() ) { gtPTF.Interval( mintimerinterval ); } if( action = LibPTF_StandardAction::Wait() ) { this.PTF_SetCurrentAction(); targetdelayinsecond := 0.0; if( parameters.Size() = 1 ) { targetdelayinsecond := [Real]parameters.Element( 0 ); } else { targetdelayinsecond := Real::Random( [Real]parameters.Element( 0 ), [Real]parameters.Element( 1 ) ); } targetdelayinmillis := [Number]( targetdelayinsecond * 1000 ) ; // Set next action to be executed from the script this.PTF_SetNextAction(); this.PTF_DebugInfoAction( action, [String]targetdelayinmillis ); if ( targetdelayinmillis <= mintimerinterval ) { gtPTF.Interval( mintimerinterval ); } else { gtPTF.Interval( targetdelayinmillis ); } } else if( not chkLoggedStartMarker.Checked() ) { this.PTF_SetCurrentAction(); this.vhLogStart().Value( this.PTF_GetCurrentDatetime() + '|' + [String]OS::PrecisionCounter() ); chkLoggedStartMarker.Checked( true ); } else if( not chkActionDone.Checked() ) { this.PTF_DoAction( curraction ); chkActionDone.Checked( true ); } else { this.PTF_WriteLogForAction( curraction ); this.PTF_SetNextAction(); chkLoggedStartMarker.Checked( false ); chkActionDone.Checked( false ); } } *] }