Loading ttcn/dPMR_Functions.ttcn +2 −3 Original line number Diff line number Diff line Loading @@ -178,8 +178,8 @@ function f_getChannelNrFromColourCode( ColourCode p_cc ) return ChannelNumber { var IsfChannelNr v_ret_isfChannelNr; var CsfChannelNr v_ret_csfChannelNr; var IsfChannelNr v_ret_isfChannelNr := e_isfChannelNr_1; var CsfChannelNr v_ret_csfChannelNr := e_csfChannelNr_1; var IsfColourCode v_isf_cc; var CsfColourCode v_csf_cc; Loading @@ -201,7 +201,6 @@ if (c_grpAcf14 == v_isf_cc) {v_ret_isfChannelNr := e_isfChannelNr_14;} if (c_grpAcf15 == v_isf_cc) {v_ret_isfChannelNr := e_isfChannelNr_15;} if (c_grpAcf16 == v_isf_cc) {v_ret_isfChannelNr := e_isfChannelNr_16;} return valueof(m_isfChannelNumber(v_ret_isfChannelNr)); } else { // its e_csf v_csf_cc := p_cc.csfColourCode; Loading ttcn/dPMR_Pixits.ttcn +10 −4 Original line number Diff line number Diff line Loading @@ -37,10 +37,10 @@ module dPMR_Pixits { * They consist each of 4x72 bits of data, =288 bits * @remark see clause 8.1.1.1 (allcall) Note:will be used also in other scenarios */ modulepar {Payload PXT_VOICE_TEST_TONE_F1} modulepar {Payload PXT_VOICE_TEST_TONE_F2} modulepar {Payload PXT_VOICE_TEST_TONE_F3} modulepar {Payload PXT_VOICE_TEST_TONE_F4} modulepar {Payload PXT_VOICE_TEST_TONE_F1 := {'010203040506070809'O, '010203040506070809'O, '010203040506070809'O, '010203040506070809'O} } modulepar {Payload PXT_VOICE_TEST_TONE_F2 := {'010203040506070809'O, '010203040506070809'O, '010203040506070809'O, '010203040506070809'O}} modulepar {Payload PXT_VOICE_TEST_TONE_F3 := {'010203040506070809'O, '010203040506070809'O, '010203040506070809'O, '010203040506070809'O}} modulepar {Payload PXT_VOICE_TEST_TONE_F4 := {'010203040506070809'O, '010203040506070809'O, '010203040506070809'O, '010203040506070809'O}} /** * @desc T1 data for frame 1, 2, 3 and 4, must be chosen Loading Loading @@ -141,4 +141,10 @@ module dPMR_Pixits { modulepar {float PXT_MAX_CASE_EXEC_PERIOD := 5000E-3} } // end dPMR_Timers group additional { modulepar {boolean PXT_DEBUG := true;} }//end additional } // end module dPMR_Pixits ttcn/dPMR_Templates.ttcn +29 −1 Original line number Diff line number Diff line Loading @@ -725,6 +725,14 @@ csfChannelNr := p_csfChannelNr } template ColourCode m_isfColourCode(IsfColourCode p_isfColourCode) := { isfColourCode := p_isfColourCode } template ColourCode m_csfColourCode(CsfColourCode p_csfColourCode) := { csfColourCode := p_csfColourCode } } //end group InformationElementTemplates group Powersave { Loading Loading @@ -851,21 +859,41 @@ }//end FncRetCodeTmplts template UtConfirm m_utConfirm_success := { success := e_ut_success, observation := omit } template UtConfirm mw_utConfirm_success := { success := e_ut_success, observation := * } template UtConfirm m_utConfirm_noSuccess := { success := e_ut_noSuccess, observation := omit } template UtConfirm mw_utConfirm_noSuccess := { success := e_ut_noSuccess, observation := * } template TaConfirm m_taConfirm_success := { success := e_ta_success, observation := omit } template TaConfirm mw_taConfirm_success := { success := e_ta_success, observation := * } template TaConfirm m_taConfirm_noSuccess := { success := e_ta_noSuccess, observation := omit } template TaConfirm mw_taConfirm_noSuccess := { success := e_ta_noSuccess, observation := * Loading ttcn/dPMR_TestCases.ttcn +109 −2 Original line number Diff line number Diff line Loading @@ -31,6 +31,33 @@ module dPMR_TestCases { group AllCall { // Clause 5.1.1 testcase TC_VAL() runs on ServerSyncComp system TestAdapter { //Variables var Mse v_mse; var Ut v_ut; var Mse v_mse_val;//SM VAL //Configuration Up //f_cfMseUp(v_mse, v_ut); f_cfMseUp_val(v_mse, v_ut, v_mse_val); //SM VAL //Test body v_mse.start(f_TC_MS01_Val()); //v_ut.start(f_TC_msAction_UT(e_toStandby, m_testToneDetected_utRequest(c_defaultCommonId, omit, e_testToneReceived))); v_mse_val.start(f_TC_VAL());//SM VAL // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone,c_tbDone}); // Configuration Down //f_cfMseDown(v_mse, v_ut); //SM VAL } // end TC_VAL /** * All call in ISF */ Loading @@ -41,18 +68,22 @@ module dPMR_TestCases { //Variables var Mse v_mse; var Ut v_ut; var Mse v_mse_val;//SM VAL //Configuration Up f_cfMseUp(v_mse, v_ut); //f_cfMseUp(v_mse, v_ut); f_cfMseUp_val(v_mse, v_ut, v_mse_val); //SM VAL //Test body v_mse.start(f_TC_testToneTransmissionCommon_ID_set_to_255_MS01()); v_ut.start(f_TC_msAction_UT(e_toStandby, m_testToneDetected_utRequest(c_defaultCommonId, omit, e_testToneReceived))); v_mse_val.start(f_TC_VAL());//SM VAL // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone,c_tbDone}); // Configuration Down f_cfMseDown(v_mse, v_ut); //f_cfMseDown(v_mse, v_ut); //SM VAL } // end TC_PMR_0824_01 Loading Loading @@ -7087,4 +7118,80 @@ module dPMR_TestCases { }//end group ut_TC_Functions group valFns { function f_TC_MS01_Val() runs on Mse{ // Variables var default v_dftMse; var FncRetCode v_ret := e_success; //Preamble v_ret := f_handshake_Ta(m_toStandBy_taRequest( f_getChannelNrFromColourCode( m_isfColourCode('11110000'B)))); //f_clientSyncAndVerdict(c_prDone, v_ret); //Test Body dp1Port.send( m_voiceorT1orT2PayloadTransmission( m_headerFrame( m_headerInformation(e_commStartHeader, m_msAddressFromIsfAddr({'10101010'B,'1010101010101010'B}), m_msAddressFromIsfAddr({'10101010'B,'1010101010101010'B}), e_voice, e_p2p), m_isfColourCode('11110000'B)), m_superFrameList_4Elem( m_superFrame( m_frame1AudibleTestTone('111100001111'B, PXT_VOICE_TEST_TONE_F1, e_callAll), m_frame2AudibleTestTone('111100001111'B, PXT_VOICE_TEST_TONE_F2, m_isfColourCode('11110000'B), e_callAll), m_frame3AudibleTestTone('111100001111'B, PXT_VOICE_TEST_TONE_F3, e_callAll), m_frame4AudibleTestTone('111100001111'B, PXT_VOICE_TEST_TONE_F4, m_isfColourCode('11110000'B), e_callAll) ) ), m_endFrame(m_endInformationNoAck)) ); f_clientSyncAndVerdict(c_tbDone, v_ret); //no Postamble deactivate; } // end function f_TC_MS01_Val /** * @desc Validation component */ function f_TC_VAL() runs on Mse{ // Variables var default v_dftMse; var FncRetCode v_ret := e_success; //Test System Parameters //Default //Preamble tc_maxTimeCfgActRly.start; alt{ []taPort.receive(?){ tc_maxTimeCfgActRly.stop; setverdict(pass); taPort.send(m_taConfirm_success); } []tc_maxTimeCfgActRly.timeout{ log("*** f_handshake_Ta: timeout of configuration or action ***"); setverdict(fail); taPort.send(m_taConfirm_noSuccess); } } //Test Body dp1Port.receive(?); } // end function f_TC_VAL }//end valFns } // end module dPMR_TestCases ttcn/dPMR_TestConfiguration.ttcn +46 −10 Original line number Diff line number Diff line Loading @@ -29,16 +29,31 @@ group configFns { out Ut p_ut) runs on ServerSyncComp { // if(not PXT_DEBUG) { //create p_mse := Mse.create; p_ut := Ut.create; p_mse := Mse.create("MS Emulation"); p_ut := Ut.create("Upper Tester"); //Connect connect(p_mse:syncPort, self:syncPort); connect(p_ut:syncPort, self:syncPort); //Map map(p_mse:dp1Port, system:taDp1Port); map(p_mse:taPort, system:taTaPort); map(p_ut:utPort, system:taUtPort); // } /* else { p_mse := Mse.create("MS Emulation"); p_ut := Ut.create("Upper Tester"); p_mse_val := Mse.create("Validation Component"); //Connect connect(p_mse:syncPort, self:syncPort); connect(p_ut:syncPort, self:syncPort); connect(p_mse:dp1Port, p_mse_val:dp1Port); connect(p_mse:taPort, p_mse_val:taPort); connect(p_ut:utPort, p_mse_val:utPort); } */ }//end f_cfMseUp /* Loading @@ -54,10 +69,31 @@ group configFns { disconnect(p_ut:syncPort, self:syncPort); //Unmap unmap(p_mse:dp1Port, system:taDp1Port); unmap(p_mse:taPort, system:taTaPort); unmap(p_ut:utPort, system:taUtPort); }//end f_cfMseDown function f_cfMseUp_val( out Mse p_mse, out Ut p_ut, out Mse p_mse_val) runs on ServerSyncComp { //create p_mse := Mse.create("MS Emulation"); p_ut := Ut.create("Upper Tester"); p_mse_val := Mse.create("Validation"); //Connect connect(p_mse:syncPort, self:syncPort); connect(p_ut:syncPort, self:syncPort); connect(p_mse:dp1Port, p_mse_val:dp1Port); connect(p_mse:taPort, p_mse_val:taPort); connect(p_ut:utPort, p_mse_val:utPort); }//end f_cfMseUp_val }// end configFns Loading Loading
ttcn/dPMR_Functions.ttcn +2 −3 Original line number Diff line number Diff line Loading @@ -178,8 +178,8 @@ function f_getChannelNrFromColourCode( ColourCode p_cc ) return ChannelNumber { var IsfChannelNr v_ret_isfChannelNr; var CsfChannelNr v_ret_csfChannelNr; var IsfChannelNr v_ret_isfChannelNr := e_isfChannelNr_1; var CsfChannelNr v_ret_csfChannelNr := e_csfChannelNr_1; var IsfColourCode v_isf_cc; var CsfColourCode v_csf_cc; Loading @@ -201,7 +201,6 @@ if (c_grpAcf14 == v_isf_cc) {v_ret_isfChannelNr := e_isfChannelNr_14;} if (c_grpAcf15 == v_isf_cc) {v_ret_isfChannelNr := e_isfChannelNr_15;} if (c_grpAcf16 == v_isf_cc) {v_ret_isfChannelNr := e_isfChannelNr_16;} return valueof(m_isfChannelNumber(v_ret_isfChannelNr)); } else { // its e_csf v_csf_cc := p_cc.csfColourCode; Loading
ttcn/dPMR_Pixits.ttcn +10 −4 Original line number Diff line number Diff line Loading @@ -37,10 +37,10 @@ module dPMR_Pixits { * They consist each of 4x72 bits of data, =288 bits * @remark see clause 8.1.1.1 (allcall) Note:will be used also in other scenarios */ modulepar {Payload PXT_VOICE_TEST_TONE_F1} modulepar {Payload PXT_VOICE_TEST_TONE_F2} modulepar {Payload PXT_VOICE_TEST_TONE_F3} modulepar {Payload PXT_VOICE_TEST_TONE_F4} modulepar {Payload PXT_VOICE_TEST_TONE_F1 := {'010203040506070809'O, '010203040506070809'O, '010203040506070809'O, '010203040506070809'O} } modulepar {Payload PXT_VOICE_TEST_TONE_F2 := {'010203040506070809'O, '010203040506070809'O, '010203040506070809'O, '010203040506070809'O}} modulepar {Payload PXT_VOICE_TEST_TONE_F3 := {'010203040506070809'O, '010203040506070809'O, '010203040506070809'O, '010203040506070809'O}} modulepar {Payload PXT_VOICE_TEST_TONE_F4 := {'010203040506070809'O, '010203040506070809'O, '010203040506070809'O, '010203040506070809'O}} /** * @desc T1 data for frame 1, 2, 3 and 4, must be chosen Loading Loading @@ -141,4 +141,10 @@ module dPMR_Pixits { modulepar {float PXT_MAX_CASE_EXEC_PERIOD := 5000E-3} } // end dPMR_Timers group additional { modulepar {boolean PXT_DEBUG := true;} }//end additional } // end module dPMR_Pixits
ttcn/dPMR_Templates.ttcn +29 −1 Original line number Diff line number Diff line Loading @@ -725,6 +725,14 @@ csfChannelNr := p_csfChannelNr } template ColourCode m_isfColourCode(IsfColourCode p_isfColourCode) := { isfColourCode := p_isfColourCode } template ColourCode m_csfColourCode(CsfColourCode p_csfColourCode) := { csfColourCode := p_csfColourCode } } //end group InformationElementTemplates group Powersave { Loading Loading @@ -851,21 +859,41 @@ }//end FncRetCodeTmplts template UtConfirm m_utConfirm_success := { success := e_ut_success, observation := omit } template UtConfirm mw_utConfirm_success := { success := e_ut_success, observation := * } template UtConfirm m_utConfirm_noSuccess := { success := e_ut_noSuccess, observation := omit } template UtConfirm mw_utConfirm_noSuccess := { success := e_ut_noSuccess, observation := * } template TaConfirm m_taConfirm_success := { success := e_ta_success, observation := omit } template TaConfirm mw_taConfirm_success := { success := e_ta_success, observation := * } template TaConfirm m_taConfirm_noSuccess := { success := e_ta_noSuccess, observation := omit } template TaConfirm mw_taConfirm_noSuccess := { success := e_ta_noSuccess, observation := * Loading
ttcn/dPMR_TestCases.ttcn +109 −2 Original line number Diff line number Diff line Loading @@ -31,6 +31,33 @@ module dPMR_TestCases { group AllCall { // Clause 5.1.1 testcase TC_VAL() runs on ServerSyncComp system TestAdapter { //Variables var Mse v_mse; var Ut v_ut; var Mse v_mse_val;//SM VAL //Configuration Up //f_cfMseUp(v_mse, v_ut); f_cfMseUp_val(v_mse, v_ut, v_mse_val); //SM VAL //Test body v_mse.start(f_TC_MS01_Val()); //v_ut.start(f_TC_msAction_UT(e_toStandby, m_testToneDetected_utRequest(c_defaultCommonId, omit, e_testToneReceived))); v_mse_val.start(f_TC_VAL());//SM VAL // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone,c_tbDone}); // Configuration Down //f_cfMseDown(v_mse, v_ut); //SM VAL } // end TC_VAL /** * All call in ISF */ Loading @@ -41,18 +68,22 @@ module dPMR_TestCases { //Variables var Mse v_mse; var Ut v_ut; var Mse v_mse_val;//SM VAL //Configuration Up f_cfMseUp(v_mse, v_ut); //f_cfMseUp(v_mse, v_ut); f_cfMseUp_val(v_mse, v_ut, v_mse_val); //SM VAL //Test body v_mse.start(f_TC_testToneTransmissionCommon_ID_set_to_255_MS01()); v_ut.start(f_TC_msAction_UT(e_toStandby, m_testToneDetected_utRequest(c_defaultCommonId, omit, e_testToneReceived))); v_mse_val.start(f_TC_VAL());//SM VAL // synchronize both PTCs f_serverSync2ClientsAndStop({c_prDone,c_tbDone}); // Configuration Down f_cfMseDown(v_mse, v_ut); //f_cfMseDown(v_mse, v_ut); //SM VAL } // end TC_PMR_0824_01 Loading Loading @@ -7087,4 +7118,80 @@ module dPMR_TestCases { }//end group ut_TC_Functions group valFns { function f_TC_MS01_Val() runs on Mse{ // Variables var default v_dftMse; var FncRetCode v_ret := e_success; //Preamble v_ret := f_handshake_Ta(m_toStandBy_taRequest( f_getChannelNrFromColourCode( m_isfColourCode('11110000'B)))); //f_clientSyncAndVerdict(c_prDone, v_ret); //Test Body dp1Port.send( m_voiceorT1orT2PayloadTransmission( m_headerFrame( m_headerInformation(e_commStartHeader, m_msAddressFromIsfAddr({'10101010'B,'1010101010101010'B}), m_msAddressFromIsfAddr({'10101010'B,'1010101010101010'B}), e_voice, e_p2p), m_isfColourCode('11110000'B)), m_superFrameList_4Elem( m_superFrame( m_frame1AudibleTestTone('111100001111'B, PXT_VOICE_TEST_TONE_F1, e_callAll), m_frame2AudibleTestTone('111100001111'B, PXT_VOICE_TEST_TONE_F2, m_isfColourCode('11110000'B), e_callAll), m_frame3AudibleTestTone('111100001111'B, PXT_VOICE_TEST_TONE_F3, e_callAll), m_frame4AudibleTestTone('111100001111'B, PXT_VOICE_TEST_TONE_F4, m_isfColourCode('11110000'B), e_callAll) ) ), m_endFrame(m_endInformationNoAck)) ); f_clientSyncAndVerdict(c_tbDone, v_ret); //no Postamble deactivate; } // end function f_TC_MS01_Val /** * @desc Validation component */ function f_TC_VAL() runs on Mse{ // Variables var default v_dftMse; var FncRetCode v_ret := e_success; //Test System Parameters //Default //Preamble tc_maxTimeCfgActRly.start; alt{ []taPort.receive(?){ tc_maxTimeCfgActRly.stop; setverdict(pass); taPort.send(m_taConfirm_success); } []tc_maxTimeCfgActRly.timeout{ log("*** f_handshake_Ta: timeout of configuration or action ***"); setverdict(fail); taPort.send(m_taConfirm_noSuccess); } } //Test Body dp1Port.receive(?); } // end function f_TC_VAL }//end valFns } // end module dPMR_TestCases
ttcn/dPMR_TestConfiguration.ttcn +46 −10 Original line number Diff line number Diff line Loading @@ -29,16 +29,31 @@ group configFns { out Ut p_ut) runs on ServerSyncComp { // if(not PXT_DEBUG) { //create p_mse := Mse.create; p_ut := Ut.create; p_mse := Mse.create("MS Emulation"); p_ut := Ut.create("Upper Tester"); //Connect connect(p_mse:syncPort, self:syncPort); connect(p_ut:syncPort, self:syncPort); //Map map(p_mse:dp1Port, system:taDp1Port); map(p_mse:taPort, system:taTaPort); map(p_ut:utPort, system:taUtPort); // } /* else { p_mse := Mse.create("MS Emulation"); p_ut := Ut.create("Upper Tester"); p_mse_val := Mse.create("Validation Component"); //Connect connect(p_mse:syncPort, self:syncPort); connect(p_ut:syncPort, self:syncPort); connect(p_mse:dp1Port, p_mse_val:dp1Port); connect(p_mse:taPort, p_mse_val:taPort); connect(p_ut:utPort, p_mse_val:utPort); } */ }//end f_cfMseUp /* Loading @@ -54,10 +69,31 @@ group configFns { disconnect(p_ut:syncPort, self:syncPort); //Unmap unmap(p_mse:dp1Port, system:taDp1Port); unmap(p_mse:taPort, system:taTaPort); unmap(p_ut:utPort, system:taUtPort); }//end f_cfMseDown function f_cfMseUp_val( out Mse p_mse, out Ut p_ut, out Mse p_mse_val) runs on ServerSyncComp { //create p_mse := Mse.create("MS Emulation"); p_ut := Ut.create("Upper Tester"); p_mse_val := Mse.create("Validation"); //Connect connect(p_mse:syncPort, self:syncPort); connect(p_ut:syncPort, self:syncPort); connect(p_mse:dp1Port, p_mse_val:dp1Port); connect(p_mse:taPort, p_mse_val:taPort); connect(p_ut:utPort, p_mse_val:utPort); }//end f_cfMseUp_val }// end configFns Loading