Loading ttcn/dPMR_Templates.ttcn +1 −1 Original line number Diff line number Diff line Loading @@ -470,7 +470,7 @@ template HeaderInformation mw_headerInformationTx ( MsAddress p_calledId , MsAddress p_ownId, template CommunicationsMode p_commMode, CommsFormat p_commFormat template CommsFormat p_commFormat ) := { headerType := e_commStartHeader, calledId := p_calledId, Loading ttcn/dPMR_TestCases.ttcn +398 −36 Original line number Diff line number Diff line Loading @@ -27,9 +27,9 @@ module dPMR_TestCases { import from dPMR_Pixits all; import from dPMR_Pics all; group IsfCsfCommon { group IsfCsfCommon { // Clause 5.1 group AllCall { group AllCall { // Clause 5.1.1 /** * @param p_cc The colour code (channel) used Loading Loading @@ -86,7 +86,10 @@ module dPMR_TestCases { } // end group AllCall group Framing { group ChannelAccess { // Clause 5.1.2 } // end group ChannelAccess group Framing {// Clause 5.1.3 /** * @param p_cc The colour code (channel) used Loading Loading @@ -139,7 +142,14 @@ module dPMR_TestCases { //Test body v_mse.start(f_TC_connectionRequestTx_MS01(p_cc)); v_ut.start(f_TC_msMakeManualConnectionRequest_UT(p_cc)); v_ut.start(f_TC_msCommandConfirm(m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress , e_makeManualConnectionRequest))); //TODO remove v_ut.start(f_TC_msMakeManualConnectionRequest_UT(p_cc)); // // v_ret := f_handshake_Ut(m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), // c_defaultPeerToPeerAddress , // e_makeManualConnectionRequest)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); Loading @@ -163,7 +173,12 @@ module dPMR_TestCases { //Test body v_mse.start(f_TC_voiceWithAutomaticConnectionRequestTx_MS01(p_cc)); v_ut.start(f_TC_msVoiceWithAutomaticConnectionRequest_UT(p_cc)); v_ut.start(f_TC_msCommandConfirm(m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress , e_makeVoiceWithAutmaticConnectionRequest))); // TODOremove v_ut.start(f_TC_msVoiceWithAutomaticConnectionRequest_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); Loading Loading @@ -238,7 +253,12 @@ module dPMR_TestCases { //Test body v_mse.start(f_TC_disconnectionRequestTx_MS01(p_cc)); v_ut.start(f_TC_msMakeManualDisconnectionRequest_UT(p_cc)); v_ut.start(f_TC_msCommandConfirm( m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress , e_makeManualDisconnectionRequest))); // Todod Remove v_ut.start(f_TC_msMakeManualDisconnectionRequest_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); Loading @@ -262,7 +282,14 @@ module dPMR_TestCases { //Test body v_mse.start(f_TC_T1DataWithAutomaticDisconnectionRequestTx_MS01(p_cc)); v_ut.start(f_TC_msT1DataWithAutomaticDisconnectionRequest_UT(p_cc)); v_ut.start(f_TC_msCommandConfirm( m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress , e_makeT1DataWithAutomaticDisconnectionRequest))); // TODO remove v_ut.start(f_TC_msT1DataWithAutomaticDisconnectionRequest_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); Loading @@ -286,7 +313,11 @@ module dPMR_TestCases { //Test body v_mse.start(f_TC_voiceTx_MS01(p_cc)); v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc)); v_ut.start(f_TC_msCommandConfirm(m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultCallGroup, omit , e_pressPtt))); //TODO remove v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); Loading @@ -296,9 +327,95 @@ module dPMR_TestCases { } // end TC_PMR_0811_01 group SuperFrame { group HeaderFrames { // Clause 5.1.3.2 /** * @param p_cc The colour code (channel) used */ testcase TC_PMR_0816_01( ColourCode p_cc ) runs on ServerSyncComp system TestAdapter { var Mse v_mse; var Ut v_ut; var FncRetCode v_ret := e_success; //Configuration Up f_cfMseUp(v_mse, v_ut); //Test body v_mse.start(f_TC_T3DataHeaderTx_MS01(p_cc)); v_ut.start(f_TC_msCommandConfirm(m_sendSomeT3Data_utRequest(f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress, e_testToneReceived))); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); // Configuration Down f_cfMseDown(v_mse, v_ut); } // end TC_PMR_0816_01 }// end group HeaderFrames group GroupSuperFrame { // Clause 5.1.3.4 group typeT1Data { // Clause 5.1.3.4.1 group Voice { testcase TC_PMR_0807_01( ColourCode p_cc ) runs on ServerSyncComp system TestAdapter { var Mse v_mse; var Ut v_ut; var FncRetCode v_ret := e_success; //Configuration Up f_cfMseUp(v_mse, v_ut); //Test body v_mse.start(f_TC_T1DataHeaderTx_MS01(p_cc)); v_ut.start(f_TC_msCommandConfirm( m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress , e_makeT1DataCall))); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); // Configuration Down f_cfMseDown(v_mse, v_ut); } // end TC_PMR_0807_01 } // end group typeT1Data group typeT2Data { // Clause 5.1.3.4.1 testcase TC_PMR_0806_01( ColourCode p_cc ) runs on ServerSyncComp system TestAdapter { var Mse v_mse; var Ut v_ut; var FncRetCode v_ret := e_success; //Configuration Up f_cfMseUp(v_mse, v_ut); //Test body v_mse.start(f_TC_T2DataHeaderTx_MS01(p_cc)); v_ut.start(f_TC_msCommandConfirm( m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress , e_makeT2DataCall))); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); // Configuration Down f_cfMseDown(v_mse, v_ut); } // end TC_PMR_0806_01 } // end group typeT2Data group Voice { // Clause 5.1.3.4.3 /** * @param p_cc The colour code (channel) used Loading @@ -315,7 +432,23 @@ module dPMR_TestCases { //Test body v_mse.start(f_TC_voiceTx_MS01(p_cc)); v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc)); if (PIC_ISF_OR_CSF == e_isf) { v_ut.start(f_TC_msCommandConfirm( m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), omit , c_defaultCommonId, e_pressPtt))); } else { v_ut.start(f_TC_msCommandConfirm( m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultCallGroup, omit , e_pressPtt))); } //TODO remove v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); Loading @@ -326,16 +459,52 @@ module dPMR_TestCases { } // end group Voice group LateEntry { // Clause 5.1.4 } // end group SuperFrame /** * @param p_cc The colour code (channel) used */ testcase TC_PMR_0802_01( ColourCode p_cc ) runs on ServerSyncComp system TestAdapter { var Mse v_mse; var Ut v_ut; var FncRetCode v_ret := e_success; } // end group Framing group HeaderFrames { //Configuration Up f_cfMseUp(v_mse, v_ut); //Test body v_mse.start(f_TC_voiceTx_MS01(p_cc)); // TODO Check if change needed!! if (PIC_ISF_OR_CSF == e_isf) { v_ut.start(f_TC_msCommandConfirm( m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), omit , c_defaultCommonId, e_pressPtt))); } else { v_ut.start(f_TC_msCommandConfirm( m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultCallGroup, omit , e_pressPtt))); } //TODO remove v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); // Configuration Down f_cfMseDown(v_mse, v_ut); } // end TC_PMR_0802_01 /** * @param p_cc The colour code (channel) used */ testcase TC_PMR_0816_01( ColourCode p_cc ) testcase TC_PMR_0802_02( ColourCode p_cc ) runs on ServerSyncComp system TestAdapter { var Mse v_mse; Loading @@ -346,17 +515,38 @@ module dPMR_TestCases { f_cfMseUp(v_mse, v_ut); //Test body v_mse.start(f_TC_T3DataHeaderTx_MS01(p_cc)); v_ut.start(f_TC_msCommandConfirm(m_sendSomeT3Data_utRequest(f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress, e_testToneReceived))); v_mse.start(f_TC_voiceTx_MS01(p_cc)); // TODO Check if change needed!! if (PIC_ISF_OR_CSF == e_isf) { v_ut.start(f_TC_msCommandConfirm( m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), omit , c_defaultCommonId, e_pressPtt))); } else { v_ut.start(f_TC_msCommandConfirm( m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultCallGroup, omit , e_pressPtt))); } //TODO remove v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); // Configuration Down f_cfMseDown(v_mse, v_ut); } // end TC_PMR_0816_01 } // end TC_PMR_0802_02 } // end group LateEntry }// end group IsfCsfCommon } // end group GroupSuperFrame } // end group Framing } // end group HeaderFrames Loading Loading @@ -641,6 +831,75 @@ module dPMR_TestCases { } // end function f_TC_voiceTx_MS01 /** * @desc Check that a voice transmission from the MS (IUT) consists of a Header Frame, a list of * Super Frames, and an End Frame, Check the Communicationsmode and the Communications Format * in the PayloadFrames * @param p_cc Colour Code */ function f_TC_voiceTxCheckCommsModeandCommsFormatIn_MS01 ( ColourCode p_cc ) runs on Mse{ // Variables var FncRetCode v_ret := e_success; var HeaderFrame v_headerFrame; var SuperFrame v_superFrame; var default v_defvar; //Test System Parameters f_initMse(); //Default v_defvar := activate(a_dftMse(p_cc,e_voice)); //Preamble f_clientSyncAndVerdict(c_prDone, v_ret); //Test Body tc_ac.start ; alt { [] dp1Port.receive( m_headerFrame( mw_headerInformationTx( vc_mse.testerId, vc_mse.iutId, e_voice, ?), p_cc)) // TODO JP-> v_headerFrame { alt { [] dp1Port.receive( m_superFrame( mw_frame1Voice(vc_mse.testerIdUP ), mw_frame2Voice(vc_mse.testerIdLP, p_cc), mw_frame3Voice(vc_mse.iutIdUP), mw_frame4Voice(vc_mse.iutIdLP,p_cc))) // TODO JP-> v_superFrame { //TODO JP v_headerFrame repeat; } [] dp1Port.receive(m_endFrame(mw_endInformation(e_noAckReq))) { // received correctly tc_ac.stop ; setverdict(pass); } [] tc_ac.timeout { log("**** f_TC_voiceTx_MS01: Timeout: TC Timer expiration before reception of complete Voice transmission ****"); setverdict(fail); } } // end alt } [] tc_ac.timeout { log("**** f_TC_voiceTx_MS01: Timeout: TC Timer expiration before reception of complete Voice transmission ****"); setverdict(fail); } } // end alt f_clientSyncAndVerdict(c_tbDone, v_ret); deactivate; } // end function f_TC_voiceTx_MS01 Loading Loading @@ -815,6 +1074,108 @@ module dPMR_TestCases { } // end function f_TC_T1DataWithAutomaticDisconnectionRequestTx_MS01 /** * @desc Check that a data on T1 transmission from the MS (IUT) consists of * a Header Frame containing the Communication Mode set to '010b' * @param p_cc Colour Code */ function f_TC_T1DataHeaderTx_MS01 ( ColourCode p_cc ) runs on Mse { // Variables var FncRetCode v_ret := e_success; var UInt16 v_sfCount := 0; var default v_defvar; //Test System Parameters f_initMse(); //Default v_defvar := activate(a_dftMse(p_cc,e_dataT1)); //Preamble f_clientSyncAndVerdict(c_prDone, v_ret); //Test Body tc_ac.start ; alt { [] dp1Port.receive( m_headerFrame( m_headerInformation( e_commStartHeader, vc_mse.testerId, vc_mse.iutId, e_dataT1, // this is '010b' as in TP e_p2p), p_cc)) { // received correctly tc_ac.stop ; setverdict(pass); } [] tc_ac.timeout { log("**** f_TC_T1DataWithAutomaticDisconnectionRequestTx_MS01: Timeout: TC Timer expiration before reception of complete Voice transmission ****"); setverdict(fail); } } // end alt f_clientSyncAndVerdict(c_tbDone, v_ret); deactivate; } // end function f_TC_T1DataHeaderTx_MS01 /** * @desc Check that a data on T1 transmission from the MS (IUT) consists of * a Header Frame containing the Communication Mode set to '010b' * @param p_cc Colour Code */ function f_TC_T2DataHeaderTx_MS01 ( ColourCode p_cc ) runs on Mse { // Variables var FncRetCode v_ret := e_success; var UInt16 v_sfCount := 0; var default v_defvar; //Test System Parameters f_initMse(); //Default v_defvar := activate(a_dftMse(p_cc,e_dataT1)); //Preamble f_clientSyncAndVerdict(c_prDone, v_ret); //Test Body tc_ac.start ; alt { [] dp1Port.receive( m_headerFrame( m_headerInformation( e_commStartHeader, vc_mse.testerId, vc_mse.iutId, e_dataT2, // this is '011b' as in TP e_p2p), p_cc)) { // received correctly tc_ac.stop ; setverdict(pass); } [] tc_ac.timeout { log("**** f_TC_T1DataWithAutomaticDisconnectionRequestTx_MS01: Timeout: TC Timer expiration before reception of complete Voice transmission ****"); setverdict(fail); } } // end alt f_clientSyncAndVerdict(c_tbDone, v_ret); deactivate; } // end function f_TC_T2DataHeaderTx_MS01 /** * @desc Check that a manual Connection Request is sent from the IUT * Loading Loading @@ -1076,6 +1437,7 @@ module dPMR_TestCases { * @desc This function commands Tester to press PTT and then dekey PTT. * @param p_cc Colour Code */ //TODO remove! function f_TC_msPressPttThenDekeyPtt_UT(ColourCode p_cc) runs on Ut{ //Variables Loading Loading @@ -1118,7 +1480,7 @@ module dPMR_TestCases { /** * @desc This function commands Tester to make manual Connection Request. * @param p_cc Colour Code */ *///TODOremove! function f_TC_msMakeManualConnectionRequest_UT(ColourCode p_cc) runs on Ut{ //Variables Loading ttcn/dPMR_Types.ttcn +3 −1 Original line number Diff line number Diff line Loading @@ -596,7 +596,9 @@ module dPMR_Types { e_makeManualConnectionRequest (4), // Make a manual Connection Request e_makeVoiceWithAutmaticConnectionRequest (5), // Make a voice with Automatic Connection Request e_makeManualDisconnectionRequest (6), // Make a manual Disconnection Request e_makeT1DataWithAutomaticDisconnectionRequest (7) // Make a T1 data with Automatic Disconnection Request e_makeT1DataWithAutomaticDisconnectionRequest (7), // Make a T1 data with Automatic Disconnection Request e_makeT1DataCall (8), // Make a T1 data call e_makeT2DataCall (9) // Make a T2 data call } /** Loading Loading
ttcn/dPMR_Templates.ttcn +1 −1 Original line number Diff line number Diff line Loading @@ -470,7 +470,7 @@ template HeaderInformation mw_headerInformationTx ( MsAddress p_calledId , MsAddress p_ownId, template CommunicationsMode p_commMode, CommsFormat p_commFormat template CommsFormat p_commFormat ) := { headerType := e_commStartHeader, calledId := p_calledId, Loading
ttcn/dPMR_TestCases.ttcn +398 −36 Original line number Diff line number Diff line Loading @@ -27,9 +27,9 @@ module dPMR_TestCases { import from dPMR_Pixits all; import from dPMR_Pics all; group IsfCsfCommon { group IsfCsfCommon { // Clause 5.1 group AllCall { group AllCall { // Clause 5.1.1 /** * @param p_cc The colour code (channel) used Loading Loading @@ -86,7 +86,10 @@ module dPMR_TestCases { } // end group AllCall group Framing { group ChannelAccess { // Clause 5.1.2 } // end group ChannelAccess group Framing {// Clause 5.1.3 /** * @param p_cc The colour code (channel) used Loading Loading @@ -139,7 +142,14 @@ module dPMR_TestCases { //Test body v_mse.start(f_TC_connectionRequestTx_MS01(p_cc)); v_ut.start(f_TC_msMakeManualConnectionRequest_UT(p_cc)); v_ut.start(f_TC_msCommandConfirm(m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress , e_makeManualConnectionRequest))); //TODO remove v_ut.start(f_TC_msMakeManualConnectionRequest_UT(p_cc)); // // v_ret := f_handshake_Ut(m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), // c_defaultPeerToPeerAddress , // e_makeManualConnectionRequest)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); Loading @@ -163,7 +173,12 @@ module dPMR_TestCases { //Test body v_mse.start(f_TC_voiceWithAutomaticConnectionRequestTx_MS01(p_cc)); v_ut.start(f_TC_msVoiceWithAutomaticConnectionRequest_UT(p_cc)); v_ut.start(f_TC_msCommandConfirm(m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress , e_makeVoiceWithAutmaticConnectionRequest))); // TODOremove v_ut.start(f_TC_msVoiceWithAutomaticConnectionRequest_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); Loading Loading @@ -238,7 +253,12 @@ module dPMR_TestCases { //Test body v_mse.start(f_TC_disconnectionRequestTx_MS01(p_cc)); v_ut.start(f_TC_msMakeManualDisconnectionRequest_UT(p_cc)); v_ut.start(f_TC_msCommandConfirm( m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress , e_makeManualDisconnectionRequest))); // Todod Remove v_ut.start(f_TC_msMakeManualDisconnectionRequest_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); Loading @@ -262,7 +282,14 @@ module dPMR_TestCases { //Test body v_mse.start(f_TC_T1DataWithAutomaticDisconnectionRequestTx_MS01(p_cc)); v_ut.start(f_TC_msT1DataWithAutomaticDisconnectionRequest_UT(p_cc)); v_ut.start(f_TC_msCommandConfirm( m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress , e_makeT1DataWithAutomaticDisconnectionRequest))); // TODO remove v_ut.start(f_TC_msT1DataWithAutomaticDisconnectionRequest_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); Loading @@ -286,7 +313,11 @@ module dPMR_TestCases { //Test body v_mse.start(f_TC_voiceTx_MS01(p_cc)); v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc)); v_ut.start(f_TC_msCommandConfirm(m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultCallGroup, omit , e_pressPtt))); //TODO remove v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); Loading @@ -296,9 +327,95 @@ module dPMR_TestCases { } // end TC_PMR_0811_01 group SuperFrame { group HeaderFrames { // Clause 5.1.3.2 /** * @param p_cc The colour code (channel) used */ testcase TC_PMR_0816_01( ColourCode p_cc ) runs on ServerSyncComp system TestAdapter { var Mse v_mse; var Ut v_ut; var FncRetCode v_ret := e_success; //Configuration Up f_cfMseUp(v_mse, v_ut); //Test body v_mse.start(f_TC_T3DataHeaderTx_MS01(p_cc)); v_ut.start(f_TC_msCommandConfirm(m_sendSomeT3Data_utRequest(f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress, e_testToneReceived))); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); // Configuration Down f_cfMseDown(v_mse, v_ut); } // end TC_PMR_0816_01 }// end group HeaderFrames group GroupSuperFrame { // Clause 5.1.3.4 group typeT1Data { // Clause 5.1.3.4.1 group Voice { testcase TC_PMR_0807_01( ColourCode p_cc ) runs on ServerSyncComp system TestAdapter { var Mse v_mse; var Ut v_ut; var FncRetCode v_ret := e_success; //Configuration Up f_cfMseUp(v_mse, v_ut); //Test body v_mse.start(f_TC_T1DataHeaderTx_MS01(p_cc)); v_ut.start(f_TC_msCommandConfirm( m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress , e_makeT1DataCall))); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); // Configuration Down f_cfMseDown(v_mse, v_ut); } // end TC_PMR_0807_01 } // end group typeT1Data group typeT2Data { // Clause 5.1.3.4.1 testcase TC_PMR_0806_01( ColourCode p_cc ) runs on ServerSyncComp system TestAdapter { var Mse v_mse; var Ut v_ut; var FncRetCode v_ret := e_success; //Configuration Up f_cfMseUp(v_mse, v_ut); //Test body v_mse.start(f_TC_T2DataHeaderTx_MS01(p_cc)); v_ut.start(f_TC_msCommandConfirm( m_commandCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress , e_makeT2DataCall))); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); // Configuration Down f_cfMseDown(v_mse, v_ut); } // end TC_PMR_0806_01 } // end group typeT2Data group Voice { // Clause 5.1.3.4.3 /** * @param p_cc The colour code (channel) used Loading @@ -315,7 +432,23 @@ module dPMR_TestCases { //Test body v_mse.start(f_TC_voiceTx_MS01(p_cc)); v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc)); if (PIC_ISF_OR_CSF == e_isf) { v_ut.start(f_TC_msCommandConfirm( m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), omit , c_defaultCommonId, e_pressPtt))); } else { v_ut.start(f_TC_msCommandConfirm( m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultCallGroup, omit , e_pressPtt))); } //TODO remove v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); Loading @@ -326,16 +459,52 @@ module dPMR_TestCases { } // end group Voice group LateEntry { // Clause 5.1.4 } // end group SuperFrame /** * @param p_cc The colour code (channel) used */ testcase TC_PMR_0802_01( ColourCode p_cc ) runs on ServerSyncComp system TestAdapter { var Mse v_mse; var Ut v_ut; var FncRetCode v_ret := e_success; } // end group Framing group HeaderFrames { //Configuration Up f_cfMseUp(v_mse, v_ut); //Test body v_mse.start(f_TC_voiceTx_MS01(p_cc)); // TODO Check if change needed!! if (PIC_ISF_OR_CSF == e_isf) { v_ut.start(f_TC_msCommandConfirm( m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), omit , c_defaultCommonId, e_pressPtt))); } else { v_ut.start(f_TC_msCommandConfirm( m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultCallGroup, omit , e_pressPtt))); } //TODO remove v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); // Configuration Down f_cfMseDown(v_mse, v_ut); } // end TC_PMR_0802_01 /** * @param p_cc The colour code (channel) used */ testcase TC_PMR_0816_01( ColourCode p_cc ) testcase TC_PMR_0802_02( ColourCode p_cc ) runs on ServerSyncComp system TestAdapter { var Mse v_mse; Loading @@ -346,17 +515,38 @@ module dPMR_TestCases { f_cfMseUp(v_mse, v_ut); //Test body v_mse.start(f_TC_T3DataHeaderTx_MS01(p_cc)); v_ut.start(f_TC_msCommandConfirm(m_sendSomeT3Data_utRequest(f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress, e_testToneReceived))); v_mse.start(f_TC_voiceTx_MS01(p_cc)); // TODO Check if change needed!! if (PIC_ISF_OR_CSF == e_isf) { v_ut.start(f_TC_msCommandConfirm( m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), omit , c_defaultCommonId, e_pressPtt))); } else { v_ut.start(f_TC_msCommandConfirm( m_commandISFCSF_utRequest( f_getChannelNrFromColourCode(p_cc), c_defaultCallGroup, omit , e_pressPtt))); } //TODO remove v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc)); // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone, c_tbDone}); // Configuration Down f_cfMseDown(v_mse, v_ut); } // end TC_PMR_0816_01 } // end TC_PMR_0802_02 } // end group LateEntry }// end group IsfCsfCommon } // end group GroupSuperFrame } // end group Framing } // end group HeaderFrames Loading Loading @@ -641,6 +831,75 @@ module dPMR_TestCases { } // end function f_TC_voiceTx_MS01 /** * @desc Check that a voice transmission from the MS (IUT) consists of a Header Frame, a list of * Super Frames, and an End Frame, Check the Communicationsmode and the Communications Format * in the PayloadFrames * @param p_cc Colour Code */ function f_TC_voiceTxCheckCommsModeandCommsFormatIn_MS01 ( ColourCode p_cc ) runs on Mse{ // Variables var FncRetCode v_ret := e_success; var HeaderFrame v_headerFrame; var SuperFrame v_superFrame; var default v_defvar; //Test System Parameters f_initMse(); //Default v_defvar := activate(a_dftMse(p_cc,e_voice)); //Preamble f_clientSyncAndVerdict(c_prDone, v_ret); //Test Body tc_ac.start ; alt { [] dp1Port.receive( m_headerFrame( mw_headerInformationTx( vc_mse.testerId, vc_mse.iutId, e_voice, ?), p_cc)) // TODO JP-> v_headerFrame { alt { [] dp1Port.receive( m_superFrame( mw_frame1Voice(vc_mse.testerIdUP ), mw_frame2Voice(vc_mse.testerIdLP, p_cc), mw_frame3Voice(vc_mse.iutIdUP), mw_frame4Voice(vc_mse.iutIdLP,p_cc))) // TODO JP-> v_superFrame { //TODO JP v_headerFrame repeat; } [] dp1Port.receive(m_endFrame(mw_endInformation(e_noAckReq))) { // received correctly tc_ac.stop ; setverdict(pass); } [] tc_ac.timeout { log("**** f_TC_voiceTx_MS01: Timeout: TC Timer expiration before reception of complete Voice transmission ****"); setverdict(fail); } } // end alt } [] tc_ac.timeout { log("**** f_TC_voiceTx_MS01: Timeout: TC Timer expiration before reception of complete Voice transmission ****"); setverdict(fail); } } // end alt f_clientSyncAndVerdict(c_tbDone, v_ret); deactivate; } // end function f_TC_voiceTx_MS01 Loading Loading @@ -815,6 +1074,108 @@ module dPMR_TestCases { } // end function f_TC_T1DataWithAutomaticDisconnectionRequestTx_MS01 /** * @desc Check that a data on T1 transmission from the MS (IUT) consists of * a Header Frame containing the Communication Mode set to '010b' * @param p_cc Colour Code */ function f_TC_T1DataHeaderTx_MS01 ( ColourCode p_cc ) runs on Mse { // Variables var FncRetCode v_ret := e_success; var UInt16 v_sfCount := 0; var default v_defvar; //Test System Parameters f_initMse(); //Default v_defvar := activate(a_dftMse(p_cc,e_dataT1)); //Preamble f_clientSyncAndVerdict(c_prDone, v_ret); //Test Body tc_ac.start ; alt { [] dp1Port.receive( m_headerFrame( m_headerInformation( e_commStartHeader, vc_mse.testerId, vc_mse.iutId, e_dataT1, // this is '010b' as in TP e_p2p), p_cc)) { // received correctly tc_ac.stop ; setverdict(pass); } [] tc_ac.timeout { log("**** f_TC_T1DataWithAutomaticDisconnectionRequestTx_MS01: Timeout: TC Timer expiration before reception of complete Voice transmission ****"); setverdict(fail); } } // end alt f_clientSyncAndVerdict(c_tbDone, v_ret); deactivate; } // end function f_TC_T1DataHeaderTx_MS01 /** * @desc Check that a data on T1 transmission from the MS (IUT) consists of * a Header Frame containing the Communication Mode set to '010b' * @param p_cc Colour Code */ function f_TC_T2DataHeaderTx_MS01 ( ColourCode p_cc ) runs on Mse { // Variables var FncRetCode v_ret := e_success; var UInt16 v_sfCount := 0; var default v_defvar; //Test System Parameters f_initMse(); //Default v_defvar := activate(a_dftMse(p_cc,e_dataT1)); //Preamble f_clientSyncAndVerdict(c_prDone, v_ret); //Test Body tc_ac.start ; alt { [] dp1Port.receive( m_headerFrame( m_headerInformation( e_commStartHeader, vc_mse.testerId, vc_mse.iutId, e_dataT2, // this is '011b' as in TP e_p2p), p_cc)) { // received correctly tc_ac.stop ; setverdict(pass); } [] tc_ac.timeout { log("**** f_TC_T1DataWithAutomaticDisconnectionRequestTx_MS01: Timeout: TC Timer expiration before reception of complete Voice transmission ****"); setverdict(fail); } } // end alt f_clientSyncAndVerdict(c_tbDone, v_ret); deactivate; } // end function f_TC_T2DataHeaderTx_MS01 /** * @desc Check that a manual Connection Request is sent from the IUT * Loading Loading @@ -1076,6 +1437,7 @@ module dPMR_TestCases { * @desc This function commands Tester to press PTT and then dekey PTT. * @param p_cc Colour Code */ //TODO remove! function f_TC_msPressPttThenDekeyPtt_UT(ColourCode p_cc) runs on Ut{ //Variables Loading Loading @@ -1118,7 +1480,7 @@ module dPMR_TestCases { /** * @desc This function commands Tester to make manual Connection Request. * @param p_cc Colour Code */ *///TODOremove! function f_TC_msMakeManualConnectionRequest_UT(ColourCode p_cc) runs on Ut{ //Variables Loading
ttcn/dPMR_Types.ttcn +3 −1 Original line number Diff line number Diff line Loading @@ -596,7 +596,9 @@ module dPMR_Types { e_makeManualConnectionRequest (4), // Make a manual Connection Request e_makeVoiceWithAutmaticConnectionRequest (5), // Make a voice with Automatic Connection Request e_makeManualDisconnectionRequest (6), // Make a manual Disconnection Request e_makeT1DataWithAutomaticDisconnectionRequest (7) // Make a T1 data with Automatic Disconnection Request e_makeT1DataWithAutomaticDisconnectionRequest (7), // Make a T1 data with Automatic Disconnection Request e_makeT1DataCall (8), // Make a T1 data call e_makeT2DataCall (9) // Make a T2 data call } /** Loading