Quintiq file version 2.0
|
#parent: #root
|
Method PTF_ExecuteTest (
|
structured[LibPTF_TestScript] testscripts
|
) id:Method_LibPTF_pnlTestController_PTF_ExecuteTest
|
{
|
#keys: '[105690.0.201964467]'
|
Body:
|
[*
|
// Execute the selected test scripts
|
rowDelimiter := LibPTF_Util::StringListRowDelimiter();
|
columnDelimiter := LibPTF_Util::StringListColumnDelimiter();
|
|
validtestscripts := selectset( testscripts,
|
Elements,
|
script,
|
true,
|
script.IsScriptValid()
|
);
|
|
nrtotal := testscripts.Size();
|
nrvalid := validtestscripts.Size();
|
nrinvalid := nrtotal - nrvalid;
|
message := "There are " + [String]nrinvalid + " invalid test script(s)." + String::NewLine() + String::NewLine()
|
+ "Do you want to execute the other " + [String]nrvalid + " valid test script(s)?";
|
|
// If all scripts valid or user continues to execute other valid scripts
|
if( nrvalid = nrtotal
|
or MessageBox::Warning( this, message, '&Yes|&No', 1 ) = 0 )
|
{
|
//Logs a line in log file as an indication of the beginning of a PTF run
|
LibPTF::LogRunStarted();
|
|
resultLogFileName := this.PTF_GetResultLogFileName();
|
|
this.vhResultLogFolder().Value( resultLogFileName )
|
OS::CreateDirectory( LibPTF_pnlTestController.PTF_GetResultLogPath() );
|
this.gt().Enabled( true );
|
|
//execute only valid testscript
|
ts := validtestscripts.Copy();
|
dhSelectedScripts.Data( &ts );
|
|
str := "";
|
|
traverse( dhSelectedScripts.Data(), Elements, script )
|
{
|
str := str + script.User() + columnDelimiter
|
+ [String]script.TotalNrOfSessions() + columnDelimiter
|
+ [String]script.NrOfSimultaneousSessions() + columnDelimiter
|
+ "0" + columnDelimiter
|
+ "0" + columnDelimiter
|
+ [String]script.TotalNrOfSessions() + columnDelimiter
|
+ "N/A" + columnDelimiter
|
+ "N/A" + columnDelimiter
|
+ "N/A" + columnDelimiter
|
+ [String]script.Offset() + rowDelimiter ;
|
}
|
|
lstExecutionTestScript.Strings( str.SubString( 0, str.Length() - 1 ) );
|
|
|
|
// Set labels text in panel test controller (start,end,duration)
|
now := DateTime::Now();
|
nowAsString := LibPTF_pnlTestController.PTF_ConvertDateTimeToString( now );
|
lblStartTime.Text( nowAsString );
|
lblEndTime.Text( "N/A" );
|
lblDurationTime.Text( "N/A" );
|
|
LibPTF_pnlTestController.PTF_GenerateBatchFile();
|
|
// Assign LastTestStartTime attribute and current client timezone offset and timezone ID labels
|
// Purpose: For update datetime string value when client timezone is changed (ONLY for timezone mode)
|
LibPTF_pnlTestController.PTF_GetPTF().LastTestStartTime( now );
|
lblClientTimezoneOffset.Text( LibPTF_pnlTestController.PTF_GetClientTimeZoneOffset() );
|
lblLastClientTimeZone.Text( Application::SessionTimeZone().ID() );
|
}
|
*]
|
}
|