blob: 351c1053ab9f0c4d26e4dd714d29083720eeb0eb [file] [log] [blame]
///////////////////////////////////////////////////////////////////////////////
// //
// 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: EPTF_Transport_PerfTest_Testcases
//
// Purpose:
// This module contains the performance test functions of generic EPTF Transport.
//
// Module depends on:
// <EPTF_CLL_TransportMessageBufferManager_Functions>
// <EPTF_CLL_FBQ_Functions>
// <EPTF_CLL_TransportRouting_Functions>
// <EPTF_CLL_TransportCommPortIPL4_Functions>
// <IPL4asp_Types>
// <EPTF_Transport_Test_Functions>
// <EPTF_Transport_Test_Definitions>
// <EPTF_CLL_Common_Definitions>
// <EPTF_CLL_Base_Functions>
// <TCCConversion_Functions>
// <EPTF_CLL_TransportCommPortIPL2_Definitions>
// <EPTF_CLL_TransportCommPortIPL2_Functions>
// <EPTF_CLL_Transport_Definitions>
// <EPTF_CLL_Transport_Functions>
// <EPTF_CLL_Transport_CommonDefinitions>
// <TCCFileIO_Functions>
// <TestResultGen>
// <ttcn_ericsson_se_TitanSim_Perftest>
//
// Current Owner:
// Jozsef Gyurusi (ETHJGI)
//
// Last Review Date:
// 2015-01-09
//
// Detailed Comments:
// -
//
///////////////////////////////////////////////////////////////
module EPTF_Transport_PerfTest_Testcases
{
//=========================================================================
// Import Part
//=========================================================================
import from IPL4asp_Types all;
import from EPTF_CLL_TransportMessageBufferManager_Functions all;
import from EPTF_CLL_TransportRouting_Functions all;
import from EPTF_CLL_TransportIPL4_Functions all;
import from EPTF_Transport_Test_Functions all;
import from EPTF_Transport_Test_Definitions all;
import from EPTF_CLL_Common_Definitions all;
import from EPTF_CLL_Base_Functions all;
import from TCCConversion_Functions all;
import from EPTF_CLL_TransportIPL2_Definitions all;
import from EPTF_CLL_TransportIPL2_Functions all;
import from EPTF_CLL_Transport_Functions all;
import from EPTF_CLL_Transport_CommonDefinitions all;
import from EPTF_CLL_TransportCommPortIPL4_Functions all
import from TCCFileIO_Functions all;
import from EPTF_CLL_Logging_Functions all;
import from TCCMaths_Functions all
import from TCCMaths_GenericTypes all;
import from EPTF_CLL_Variable_Functions all;
import from TestResultGen all;
import from ttcn_ericsson_se_TitanSim_Perftest all;
external function f_calc_internetChecksum(in integer len_udp, in octetstring src_addr, in octetstring dest_addr, in octetstring buff) return integer;
//=========================================================================
// Component Type
//=========================================================================
type component EPTF_Transport_PerfTest_CT extends TestResultGen_CT {
var Testresult v_testResult;
var integer v_iterations := 1000000;
var integer v_nofMeasurements := 100;
}
function f_EPTF_Transport_PerfTest_test_checksum(
in octetstring pl_srcaddr := '00000000'O,
in octetstring pl_dstaddr := '00000000'O,
in integer pl_srcport := 0,
in integer pl_dstport := 0,
in octetstring pl_payload := ''O,
in octetstring pl_expectedChecksum := 'FFDE'O
) {
var octetstring vl_result := f_EPTF_TransportIPL2_encodeUDPWithChecksum(
srcaddr := pl_srcaddr,
srcpotr := pl_srcport,
dstaddr := pl_dstaddr,
dstport := pl_dstport,
payload := pl_payload
)
var integer vl_srcport := 0;
var integer vl_dstport := 0;
var octetstring vl_payload := ''O;
if(not f_EPTF_TransportIPL2_decodeUDPWithChecksum(
srcaddr := pl_srcaddr,
dstaddr := pl_dstaddr,
udppdu := vl_result,
srcpotr := vl_srcport,
dstport := vl_dstport,
payload := vl_payload
) or (pl_srcport!=vl_srcport) or (pl_dstport!=vl_dstport) or (pl_payload!=vl_payload) ) {
setverdict(fail,"Cannot decode UDP, or decoded UDP is incorrect");
}
// if(not f_EPTF_TransportIPL2_verifyUDPChecksum(
// srcaddr := pl_srcaddr,
// dstaddr := pl_dstaddr,
// tcppdu := vl_result
// )) {
// setverdict(fail,"Checksum verification failed");
// }
//
// action(
// " srcaddr := ",pl_srcaddr,
// " srcport := ",pl_srcport,
// " dstaddr := ",pl_dstaddr,
// " dstport := ",pl_dstport,
// " payload := ",pl_payload
// );
var octetstring vl_calculatedChecksum := substr(vl_result,6,2);
action(" checksum: ", vl_calculatedChecksum, " vl_result: ", vl_result);
if (vl_calculatedChecksum != pl_expectedChecksum) {
setverdict(fail,"Incorrect checksum for srcaddr: ",pl_srcaddr," dstaddr: ",pl_dstaddr," UDP segment: ",vl_result,
" Expected checksum: ",pl_expectedChecksum, " Actual checksum: ", vl_calculatedChecksum);
}
var octetstring vl_buff := int2oct(pl_srcport,2)&int2oct(pl_dstport,2)&int2oct(lengthof(pl_payload)+8,2)&'0000'O&pl_payload; // whole UDP
action("checksum: ", int2oct(f_calc_internetChecksum(lengthof(vl_buff), pl_srcaddr, pl_dstaddr, vl_buff&'0000'O),2), "(",f_calc_internetChecksum(lengthof(vl_buff), pl_srcaddr, pl_dstaddr, vl_buff&'0000'O),")");
action("EXPECTED: ",pl_expectedChecksum);
action("----------------------------------------");
}
function f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(
in octetstring pl_srcaddr := '00000000'O,
in octetstring pl_dstaddr := '00000000'O,
in integer pl_srcport := 0,
in integer pl_dstport := 0,
in octetstring pl_payload := ''O,
in octetstring pl_expectedChecksum := 'FFDE'O
) runs on EPTF_Transport_PerfTest_CT {
timer t_measure := 1000000.0;
t_measure.start;
var octetstring vl_result;
var FloatList vl_correctedDurations;
for(var integer meas:=0; meas<v_nofMeasurements; meas:=meas+1) {
// control measurement to subtract the time of the for-cycle:
var float vl_controlStartTime := t_measure.read;
for(var integer i:=0; i<v_iterations; i:=i+1) {
};
var float vl_controlEndTime := t_measure.read;
var float vl_controlDuration := vl_controlEndTime-vl_controlStartTime;
// real measurement:
var float vl_startTime := t_measure.read;
for(var integer i:=0; i<v_iterations; i:=i+1) {
vl_result := f_EPTF_TransportIPL2_encodeUDPWithChecksum(
srcaddr := pl_srcaddr,
srcpotr := pl_srcport,
dstaddr := pl_dstaddr,
dstport := pl_dstport,
payload := pl_payload
);
};
var float vl_endTime := t_measure.read;
var float vl_duration := vl_endTime-vl_startTime;
var float vl_correctedDuration := vl_duration-vl_controlDuration;
vl_correctedDurations[meas] := vl_correctedDuration;
}
var float vl_averageDuration := f_averageFL(vl_correctedDurations);
var float vl_averageError := f_stdFL(vl_correctedDurations);
action("speed of encodeUDPWithChecksum: ",vl_averageDuration/int2float(v_iterations), " (=",vl_averageDuration,"/",v_iterations,") Error: ",100.0*vl_averageError/vl_averageDuration,"% (",vl_averageError,")");
var octetstring vl_calculatedChecksum := substr(vl_result,6,2);
if (vl_calculatedChecksum != pl_expectedChecksum) {
setverdict(fail,"Incorrect checksum for srcaddr: ",pl_srcaddr," dstaddr: ",pl_dstaddr," UDP segment: ",vl_result,
" Expected checksum: ",pl_expectedChecksum, " Actual checksum: ", vl_calculatedChecksum);
}
var integer vl_resultNum := sizeof(v_testResult.result_list);
v_testResult.result_list[vl_resultNum] := {
name := "Execution time (PDU length:"&log2str(lengthof(pl_payload))&")",
unit := "microsec",
base := log2str(vl_averageDuration/int2float(v_iterations)*1e6)&" +-"&log2str(100.0*vl_averageError/vl_averageDuration)&"%"
};
}
function f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(
in octetstring pl_srcaddr := '00000000'O,
in octetstring pl_dstaddr := '00000000'O,
in integer pl_srcport := 0,
in integer pl_dstport := 0,
in octetstring pl_payload := ''O,
in octetstring pl_expectedChecksum := 'FFDE'O
) runs on EPTF_Transport_PerfTest_CT {
var octetstring vl_result := f_EPTF_TransportIPL2_encodeUDPWithChecksum(
srcaddr := pl_srcaddr,
srcpotr := pl_srcport,
dstaddr := pl_dstaddr,
dstport := pl_dstport,
payload := pl_payload
)
var integer vl_srcport := 0;
var integer vl_dstport := 0;
var octetstring vl_payload := ''O;
timer t_measure := 1000000.0;
t_measure.start;
var FloatList vl_correctedDurations;
for(var integer meas:=0; meas<v_nofMeasurements; meas:=meas+1) {
var float vl_controlStartTime := t_measure.read;
for(var integer i:=0; i<v_iterations; i:=i+1) {
if(not i>-1 ) {
setverdict(fail,"Cannot decode UDP, or decoded UDP is incorrect");
}
};
var float vl_controlEndTime := t_measure.read;
var float vl_controlDuration := vl_controlEndTime-vl_controlStartTime;
var float vl_startTime := t_measure.read;
for(var integer i:=0; i<v_iterations; i:=i+1) {
if(not f_EPTF_TransportIPL2_decodeUDPWithChecksum(
srcaddr := pl_srcaddr,
dstaddr := pl_dstaddr,
udppdu := vl_result,
srcpotr := vl_srcport,
dstport := vl_dstport,
payload := vl_payload
)) {
setverdict(fail,"Cannot decode UDP, or decoded UDP is incorrect");
}
};
var float vl_endTime := t_measure.read;
var float vl_duration := vl_endTime-vl_startTime;
var float vl_correctedDuration := vl_duration-vl_controlDuration;
vl_correctedDurations[meas] := vl_correctedDuration;
}
var float vl_averageDuration := f_averageFL(vl_correctedDurations);
var float vl_averageError := f_stdFL(vl_correctedDurations);
action("speed of decodeUDPWithChecksum: ",vl_averageDuration/int2float(v_iterations), " (=",vl_averageDuration,"/",v_iterations,") Error: ",100.0*vl_averageError/vl_averageDuration,"% (",vl_averageError,")");
var octetstring vl_calculatedChecksum := substr(vl_result,6,2);
if (vl_calculatedChecksum != pl_expectedChecksum) {
setverdict(fail,"Incorrect checksum for srcaddr: ",pl_srcaddr," dstaddr: ",pl_dstaddr," UDP segment: ",vl_result,
" Expected checksum: ",pl_expectedChecksum, " Actual checksum: ", vl_calculatedChecksum);
}
var integer vl_resultNum := sizeof(v_testResult.result_list);
v_testResult.result_list[vl_resultNum] := {
name := "Execution time (PDU length:"&log2str(lengthof(pl_payload))&")",
unit := "microsec",
base := log2str(vl_averageDuration/int2float(v_iterations)*1e6)&" +-"&log2str(100.0*vl_averageError/vl_averageDuration)&"%"
};
}
// this is not a performance test. It just checks the checksum for several udp packets,
// and also using an independent checksum calculator function written in
// external function f_calc_internetChecksum
testcase tc_EPTF_Transport_PerfTest_UDPChecksum() runs on IPL4Demo_CT {
f_EPTF_Transport_PerfTest_test_checksum();
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(pl_payload := '0000'O, pl_expectedChecksum:='FFDA'O);
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(pl_payload := '00000000'O, pl_expectedChecksum:='FFD6'O);
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := '9801331b'O,
pl_dstaddr := '980e5e4b'O,
pl_srcport := 41103,
pl_dstport := 9876,
pl_payload := '6262'O,
pl_expectedChecksum:='14DE'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := 'FFFFFFFF'O,
pl_dstaddr := 'FFFFFFFF'O,
pl_srcport := 65535,
pl_dstport := 65535,
pl_payload := ''O,
pl_expectedChecksum:='FFDE'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := 'BBBBBBBB'O,
pl_dstaddr := 'BBBBBBBB'O,
pl_srcport := 48059,
pl_dstport := 48059,
pl_payload := ''O,
pl_expectedChecksum:='9978'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := 'FFFFFFFF'O,
pl_dstaddr := 'FFFFFFFF'O,
pl_srcport := 65535,
pl_dstport := 65535,
pl_payload := 'FFFF'O,
pl_expectedChecksum:='FFDA'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := 'FFFFFFFF'O,
pl_dstaddr := 'FFFFFFFF'O,
pl_srcport := 65535,
pl_dstport := 65535,
pl_payload := 'FFDA'O,
pl_expectedChecksum:='FFFF'O //<- '0000'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := 'FFFFFFFF'O,
pl_dstaddr := 'FFFFFFFF'O,
pl_srcport := 65535,
pl_dstport := 65535,
pl_payload := 'FFD6FFFF'O,
pl_expectedChecksum:='FFFF'O //<- '0000'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := 'FFFFFFFF'O,
pl_dstaddr := 'FFFFFFFF'O,
pl_srcport := 65535,
pl_dstport := 65535,
pl_payload := 'FFFFFFFF'O,
pl_expectedChecksum:='FFD6'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := 'FFFFFFFF'O,
pl_dstaddr := 'FFFFFFFF'O,
pl_srcport := 65535,
pl_dstport := 65535,
pl_payload := '00000000'O,
pl_expectedChecksum:='FFD6'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := '00000000'O,
pl_dstaddr := '00000000'O,
pl_srcport := 0,
pl_dstport := 0,
pl_payload := '00000000'O,
pl_expectedChecksum:='FFD6'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := '00000000'O,
pl_dstaddr := '00000000'O,
pl_srcport := 0,
pl_dstport := 0,
pl_payload := '0000000000'O,
pl_expectedChecksum:='FFD4'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := '00000000'O,
pl_dstaddr := '00000000'O,
pl_srcport := 0,
pl_dstport := 0,
pl_payload := 'BBBBBBBB'O,
pl_expectedChecksum:='885F'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := '00000000'O,
pl_dstaddr := '00000000'O,
pl_srcport := 0,
pl_dstport := 0,
pl_payload := 'FFFFFFD7'O, // BBBB441C
pl_expectedChecksum:='FFFE'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := '0adf1600'O,
pl_dstaddr := '0a150006'O,
pl_srcport := 20001,
pl_dstport := 5060,
// pl_payload := '5245474953544552207369703a73797374656d2e74657374205349502f322e300d0a43616c6c2d49443a5454434e335f32333732385f3235365f3235364031302e3232332e32322e300d0a436f6e746163743a3c7369703a616363657373315f746974616e31355f30353235374031302e3232332e32322e303a32303030313b7472616e73706f72743d7564703e3b657870697265733d3132300d0a436f6e74656e742d4c656e6774683a300d0a435365713a3533383130323438322052454749535445520d0a46726f6d3a7369703a616363657373315f746974616e31355f30353235374073797374656d2e746573743b7461673d343036383235360d0a4d61782d466f7277617264733a37300d0a546f3a7369703a616363657373315f746974616e31355f30353235374073797374656d2e746573740d0a5669613a5349502f322e302f5544502031302e3232332e32322e303a32303030313b6272616e63683d7a39684734624b38313535343732543030303235390d0a0d0a'O,
pl_payload := '5245474953544552207369703a73797374656d2e74657374205349502f322e300d0a43616c6c2d49443a5454434e335f32333732385f3235365f3235364031302e3232332e32322e300d0a436f6e746163743a3c7369703a616363657373315f746974616e31355f30353235374031302e3232332e32322e303a32303030313b7472616e73706f72743d7564703e3b657870697265733d3132300d0a436f6e74656e742d4c656e6774683a300d0a435365713a3533383130323438322052454749535445520d0a46726f6d3a7369703a616363657373315f746974616e31355f30353235374073797374656d2e746573743b7461673d343036383235360d0a4d61782d466f7277617264733a37300d0a546f3a7369703a616363657373315f746974616e31355f30353235374073797374656d2e746573740d0a5669613a5349502f322e302f5544502031302e3232332e32322e303a32303030313b6272616e63683d7a39684734624b38313535343732543030303235390d0a0d0a'O,
pl_expectedChecksum:='FFE0'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := '0adf1600'O,
pl_dstaddr := '0a150006'O,
pl_srcport := 20001,
pl_dstport := 5060,
pl_payload := '0000998E53544552207369703a73797374656d2e74657374205349502f322e300d0a43616c6c2d49443a5454434e335f32333732385f3235365f3235364031302e3232332e32322e300d0a436f6e746163743a3c7369703a616363657373315f746974616e31355f30353235374031302e3232332e32322e303a32303030313b7472616e73706f72743d7564703e3b657870697265733d3132300d0a436f6e74656e742d4c656e6774683a300d0a435365713a3533383130323438312052454749535445520d0a46726f6d3a7369703a616363657373315f746974616e31355f30353235374073797374656d2e746573743b7461673d3434333432333235360d0a4d61782d466f7277617264733a37300d0a546f3a7369703a616363657373315f746974616e31355f30353235374073797374656d2e746573740d0a5669613a5349502f322e302f5544502031302e3232332e32322e303a32303030313b6272616e63683d7a39684734624b33333238353037543030303235360d0a0d0a'O,
pl_expectedChecksum:='D2AF'O
)
//--------------------------------
f_EPTF_Transport_PerfTest_test_checksum(
pl_srcaddr := '0adf1600'O,
pl_dstaddr := '0a150006'O,
pl_srcport := 20001,
pl_dstport := 5060,
pl_payload := '5245474953544552207369703a73797374656d2e74657374205349502f322e300d0a43616c6c2d49443a5454434e335f32333732385f313030335f3235364031302e3232332e32322e300d0a436f6e746163743a3c7369703a616363657373315f746974616e31355f30353235374031302e3232332e32322e303a32303030313b7472616e73706f72743d7564703e3b657870697265733d3132300d0a436f6e74656e742d4c656e6774683a300d0a435365713a3632313233373537362052454749535445520d0a46726f6d3a7369703a616363657373315f746974616e31355f30353235374073797374656d2e746573743b7461673d3132333830383235360d0a4d61782d466f7277617264733a37300d0a546f3a7369703a616363657373315f746974616e31355f30353235374073797374656d2e746573740d0a5669613a5349502f322e302f5544502031302e3232332e32322e303a32303030313b6272616e63683d7a39684734624b38393137383631543030303537370d0a0d0a'O,
pl_expectedChecksum:='D06D'O
)
setverdict(pass);
}
// Tests the speed of f_EPTF_TransportIPL2_encodeUDPWithChecksum
// it executes the function v_iterations times and measures the time.
// It calculates the average and standard deviation by executing the above measurement v_nofMeasurements times
// to get v_nofMeasurements measurements.
// The test measures the speed for UDP packets with the following payload lengths:
// 0, 1,2, 3,4, 7,8, 15,16, 31,32, 63,64, 127,128, 255,256, 511,512, 1023,1024, 2047,2048
testcase tc_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum() runs on EPTF_Transport_PerfTest_CT {
// init v_testResult
v_testResult.name := "Encode UDP With Checksum";
v_testResult.purpose := "To measure the execution time of f_EPTF_TransportIPL2_encodeUDPWithChecksum for different UDP PDU lengths";
f_TestResultGen_getEnvironment(v_testResult.environment);
v_testResult.parameter_list := {
{name := "Number of iterations", unit := "-", base := log2str(v_iterations) },
{name := "Number of measurements", unit := "-", base := log2str(v_nofMeasurements) }
};
v_testResult.start_time := f_TestResultGen_getCurrentTime();
v_testResult.result_list := {};
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum();
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '00'O, pl_expectedChecksum:='FFDC'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '0000'O, pl_expectedChecksum:='FFDA'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '000000'O, pl_expectedChecksum:='FFD8'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '00000000'O, pl_expectedChecksum:='FFD6'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '00000000000000'O, pl_expectedChecksum:='FFD0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '0000000000000000'O, pl_expectedChecksum:='FFCE'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '000000000000000000000000000000'O, pl_expectedChecksum:='FFC0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000'O, pl_expectedChecksum:='FFBE'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000'O, pl_expectedChecksum:='FFA0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '0000000000000000000000000000000000000000000000000000000000000000'O, pl_expectedChecksum:='FF9E'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FF60'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FF5E'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FEE0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FEDE'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FDE0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FDDE'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FBE0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FBDE'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='F7E0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='F7DE'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='EFE0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum(pl_payload := '0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='EFDE'O);
v_testResult.end_time := f_TestResultGen_getCurrentTime();
f_TestResultGen_appendResult(%testcaseId&"_"&f_unichar2charstr(v_testResult.start_time)&".xml", v_testResult);
setverdict(pass);
}
// Tests the speed of f_EPTF_TransportIPL2_decodeUDPWithChecksum
// it executes the function v_iterations times and measures the time.
// It calculates the average and standard deviation by executing the above measurement v_nofMeasurements times
// to get v_nofMeasurements measurements.
// The test measures the speed for UDP packets with the following payload lengths:
// 0, 1,2, 3,4, 7,8, 15,16, 31,32, 63,64, 127,128, 255,256, 511,512, 1023,1024, 2047,2048
testcase tc_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum() runs on EPTF_Transport_PerfTest_CT {
// init v_testResult
v_testResult.name := "Decode UDP With Checksum";
v_testResult.purpose := "To measure the execution time of f_EPTF_TransportIPL2_decodeUDPWithChecksum for different UDP PDU lengths";
f_TestResultGen_getEnvironment(v_testResult.environment);
v_testResult.parameter_list := {
{name := "Number of iterations", unit := "-", base := log2str(v_iterations) },
{name := "Number of measurements", unit := "-", base := log2str(v_nofMeasurements) }
};
v_testResult.start_time := f_TestResultGen_getCurrentTime();
v_testResult.result_list := {};
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum();
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '00'O, pl_expectedChecksum:='FFDC'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '0000'O, pl_expectedChecksum:='FFDA'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '000000'O, pl_expectedChecksum:='FFD8'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '00000000'O, pl_expectedChecksum:='FFD6'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '00000000000000'O, pl_expectedChecksum:='FFD0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '0000000000000000'O, pl_expectedChecksum:='FFCE'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '000000000000000000000000000000'O, pl_expectedChecksum:='FFC0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000'O, pl_expectedChecksum:='FFBE'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000'O, pl_expectedChecksum:='FFA0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '0000000000000000000000000000000000000000000000000000000000000000'O, pl_expectedChecksum:='FF9E'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FF60'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FF5E'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FEE0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FEDE'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FDE0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FDDE'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FBE0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='FBDE'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='F7E0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='F7DE'O);
//--------------------------------
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='EFE0'O);
//---
f_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum(pl_payload := '0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'O,
pl_expectedChecksum:='EFDE'O);
v_testResult.end_time := f_TestResultGen_getCurrentTime();
f_TestResultGen_appendResult(%testcaseId&"_"&f_unichar2charstr(v_testResult.start_time)&".xml", v_testResult);
setverdict(pass);
}
control {
execute(tc_EPTF_Transport_PerfTest_UDPChecksum());
execute(tc_EPTF_Transport_PerfTest_testSpeed_encodeUDPWithChecksum());
execute(tc_EPTF_Transport_PerfTest_testSpeed_decodeUDPWithChecksum());
}
} // end of module