Loading DiameterRfRo/ttcn/DiameterRfRo_Steps.ttcn +55 −3 Original line number Diff line number Diff line Loading @@ -8,12 +8,12 @@ //LibCommon import from LibCommon_DataStrings {type Bit1, Bit4, Bit5, Bit8;}//all; import from LibCommon_BasicTypesAndValues {type UInt8;};//LibCommon import from LibCommon_BasicTypesAndValues {type UInt8;type UInt32;};//LibCommon import from LibCommon_Sync all ; import from LibCommon_VerdictControl all ; //LibDiameter import from LibDiameter_Types_S9_AVPs all; import from LibDiameter_Types_RfRo_AVPs all; import from LibDiameter_Types_Base_AVPs all; import from LibDiameter_TypesAndValues all; import from LibDiameter_Templates all; Loading @@ -21,7 +21,7 @@ import from LibDiameter_PIXITS all; import from LibDiameter_Interface all; //DiameterS9 //DiameterRFRo import from DiameterRfRo_PIXITS all; import from DiameterRfRo_Templates all; import from DiameterRfRo_SIP_Templates all; Loading Loading @@ -106,6 +106,58 @@ //TODO check for 2nd Ro or Rf configuration!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! group RF{ group TypeOfCharging{ /** * @desc Function used to send AC-Request and receive AC-Answer * @param p_art accounting record type - EVENT_E,START_E,INTERIM_E,STOP_E * p_acc_rec_nr acc record number * p_ts timestamp of event * @verdict depend on receive message and its matching with template */ function f_sendACR_awaitACA_(in Acc_Record_Type p_art, in UInt32 p_acc_rec_nr, in UInt32 p_ts) runs on DiameterComponent { f_send_ACR( md_aCR( vc_sessionId, md_acrBodyAvps_TypeOfCharging_Session( vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP m_accounting_Record_Type( // containing an Accounting-Record-Type AVP p_art ), m_accounting_Record_Number( // containing an Accounting-Record-Number AVP p_acc_rec_nr // indicating the value ), m_event_timestamp(p_ts), m_service_Information_AVP_dummy // FIXME To be continue by creating a m_service_Information template modifying m_service_Information_AVP_dummy ) ) ); f_awaiting_ACA( mdw_aCA( vc_sessionId, // containing a Session-ID AVP mdw_acaBodyAvps( mw_resultCode( // containing a Result-Code AVP DIAMETER_SUCCESS_E // indicating DIAMETER_SUCCESS ), vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP mw_accounting_Record_Type( // containing an Accounting-Record-Type AVP p_art ), mw_accounting_Record_Number( // containing an Acct-Application-Id AVP p_acc_rec_nr // indicating the value ) )) ); } }//End group TypeOfCharging }//End group RF } // Endgroup GlobalSteps group Preambles{ Loading DiameterRfRo/ttcn/DiameterRfRo_TCFunctions.ttcn +212 −4 Original line number Diff line number Diff line Loading @@ -10,6 +10,8 @@ module DiameterRfRo_TCFunctions { import from LibCommon_VerdictControl all ; // LibDiameter //import from Diameter_PIXITS all; import from LibDiameter_TypesAndValues all; import from LibDiameter_Types_Base_AVPs all; import from LibDiameter_Types_RfRo_AVPs all; Loading @@ -30,7 +32,7 @@ module DiameterRfRo_TCFunctions { group TP_RF_CDF_Role { // 5.2.2.1.2 Message Syntax group messageSyntax { group MessageSyntax { /** * @desc Verify that the IUT can successfully process all mandatory AVPs in an AC-Request received due to Charging Data Transfer Loading Loading @@ -149,8 +151,8 @@ module DiameterRfRo_TCFunctions { ), m_accounting_Record_Number( // containing an Accounting-Record-Number AVP 3 // indicating the value 3 ), m_service_Information_AVP_dummy // FIXME To be continue by creating a m_service_Information template modifying m_service_Information_AVP_dummy )//, //m_service_Information_AVP_dummy // FIXME To be continue by creating a m_service_Information template modifying m_service_Information_AVP_dummy ) ) ); Loading Loading @@ -232,6 +234,8 @@ module DiameterRfRo_TCFunctions { f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_sendACR_awaitACA_(STOP_RECORD_E,3,1); f_postamble_Rf_CTF(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); Loading @@ -239,8 +243,212 @@ module DiameterRfRo_TCFunctions { } // End of function f_TC_RF_CDF_TC_02 /** * @desc Verify that the IUT can successfully process an AC-Request [Interim] where Session Based Charging is used * @verdict pass on success, fail on error or inconc on timeout only */ function f_TC_RF_CDF_TC_03() runs on DiameterRfRo { // Local variables // Preamble f_preamble_Rf_CTF(); f_sendACR_awaitACA_(START_RECORD_E,3,1); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); f_send_ACR( md_aCR( vc_sessionId, md_acrBodyAvps_TypeOfCharging_Session( vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP m_accounting_Record_Type( // containing an Accounting-Record-Type AVP INTERIM_RECORD_E ), m_accounting_Record_Number( // containing an Accounting-Record-Number AVP 3 // indicating the value 3 ), m_event_timestamp(1), m_service_Information_AVP_dummy // FIXME To be continue by creating a m_service_Information template modifying m_service_Information_AVP_dummy ) ) ); f_awaiting_ACA( mdw_aCA( vc_sessionId, // containing a Session-ID AVP mdw_acaBodyAvps( mw_resultCode( // containing a Result-Code AVP DIAMETER_SUCCESS_E // indicating DIAMETER_SUCCESS ), vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP mw_accounting_Record_Type( // containing an Accounting-Record-Type AVP INTERIM_RECORD_E ), mw_accounting_Record_Number( // containing an Acct-Application-Id AVP 3 // indicating the value 3 ) )) ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_sendACR_awaitACA_(STOP_RECORD_E,3,1); f_postamble_Rf_CTF(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_RF_CDF_TC_03 /** * @desc Verify that the IUT can successfully process an AC-Request [Stop] where Session Based Charging is used * @verdict pass on success, fail on error or inconc on timeout only */ function f_TC_RF_CDF_TC_04() runs on DiameterRfRo { // Local variables // Preamble f_preamble_Rf_CTF(); f_sendACR_awaitACA_(START_RECORD_E,3,1); f_sendACR_awaitACA_(INTERIM_RECORD_E,3,1); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); f_send_ACR( md_aCR( vc_sessionId, md_acrBodyAvps_TypeOfCharging_Session( vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP m_accounting_Record_Type( // containing an Accounting-Record-Type AVP STOP_RECORD_E ), m_accounting_Record_Number( // containing an Accounting-Record-Number AVP 3 // indicating the value 3 ), m_event_timestamp(1), m_service_Information_AVP_dummy // FIXME To be continue by creating a m_service_Information template modifying m_service_Information_AVP_dummy ) ) ); f_awaiting_ACA( mdw_aCA( vc_sessionId, // containing a Session-ID AVP mdw_acaBodyAvps( mw_resultCode( // containing a Result-Code AVP DIAMETER_SUCCESS_E // indicating DIAMETER_SUCCESS ), vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP mw_accounting_Record_Type( // containing an Accounting-Record-Type AVP STOP_RECORD_E ), mw_accounting_Record_Number( // containing an Acct-Application-Id AVP 3 // indicating the value 3 ) )) ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_postamble_Rf_CTF(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_RF_CDF_TC_04 } // End of group TypeOfCharging //5.2.2.1.4 ErrorCases group ErrorCases { /** * @desc Verify that the IUT terminates the call in case of timer expiration when the Session Based Charging procedure is not completed properly. * @verdict pass on success, fail on error or inconc on timeout only */ function f_TC_RF_CDF_EC_01() runs on DiameterRfRo { // Local variables var float v_sessionAbortTimer:=0.0; // Preamble f_preamble_Rf_CTF(); f_sendACR_awaitACA_(START_RECORD_E,3,1); //set of timer due to RFC3588 p.8.2 par 5 if (ispresent(vc_recvDiamMsg.aCA_MSG.aCA_Body.acct_Interim_Interval)){ v_sessionAbortTimer := 2.0 * int2float(vc_recvDiamMsg.aCA_MSG.aCA_Body.acct_Interim_Interval.aVP_Data); }else{ // v_sessionAbortTimer := 2.0 * int2float(PX_DIAMETER_TWAIT); } f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); f_wait(v_sessionAbortTimer); f_awaiting_ASR( mdw_aSR( vc_sessionId, // containing a Session-ID AVP mdw_asrBodyAvps( vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP vc_destinationRealm, // containing a Destination-Realm AVP vc_destinationHost // containing a Destination-Host AVP )) ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_postamble_Rf_CTF(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_RF_CDF_EC_01 /** * @desc Verify that the IUT terminates the call in case of timer expiration when the Session Based Charging procedure is not completed properly. * @verdict pass on success, fail on error or inconc on timeout only */ function f_TC_RF_CDF_EC_02() runs on DiameterRfRo { // Local variables // Preamble f_preamble_Rf_CTF(); f_sendACR_awaitACA_(START_RECORD_E,3,1); f_sendACR_awaitACA_(INTERIM_RECORD_E,3,1); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); f_awaiting_ASR( mdw_aSR( vc_sessionId, // containing a Session-ID AVP mdw_asrBodyAvps( vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP vc_destinationRealm, // containing a Destination-Realm AVP vc_destinationHost // containing a Destination-Host AVP )) ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_postamble_Rf_CTF(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_RF_CDF_EC_02 } // End of group ErrorCasses } // End of group TP_RF_CDF_Role // 5.2.2.2. CTF Role Loading DiameterRfRo/ttcn/DiameterRfRo_TestCases.ttcn +221 −8 File changed.Preview size limit exceeded, changes collapsed. Show changes DiameterRfRo/ttcn/DiameterRfRo_TestControl.ttcn +15 −1 Original line number Diff line number Diff line Loading @@ -12,12 +12,26 @@ module DiameterRfRo_TestControl { control { if (PICS_CDF_IUT) { if (PICS_RF_CDF_IUT) { execute(TC_RF_CDF_MS_01()); execute(TC_RF_CDF_MS_02()); if (PICS_EVENT_BASED_CHARGING) { execute(TC_RF_CDF_TC_01()); //execute(TC_RF_CDF_EC_03()); } if (PICS_SESSION_BASED_CHARGING) { execute(TC_RF_CDF_TC_02()); execute(TC_RF_CDF_TC_03()); execute(TC_RF_CDF_TC_04()); execute(TC_RF_CDF_EC_01()); execute(TC_RF_CDF_EC_02()); //execute(TC_RF_CDF_EC_04()); } } if (PICS_RF_CTF_IUT) { } } // End of 'Control' statement Loading Loading
DiameterRfRo/ttcn/DiameterRfRo_Steps.ttcn +55 −3 Original line number Diff line number Diff line Loading @@ -8,12 +8,12 @@ //LibCommon import from LibCommon_DataStrings {type Bit1, Bit4, Bit5, Bit8;}//all; import from LibCommon_BasicTypesAndValues {type UInt8;};//LibCommon import from LibCommon_BasicTypesAndValues {type UInt8;type UInt32;};//LibCommon import from LibCommon_Sync all ; import from LibCommon_VerdictControl all ; //LibDiameter import from LibDiameter_Types_S9_AVPs all; import from LibDiameter_Types_RfRo_AVPs all; import from LibDiameter_Types_Base_AVPs all; import from LibDiameter_TypesAndValues all; import from LibDiameter_Templates all; Loading @@ -21,7 +21,7 @@ import from LibDiameter_PIXITS all; import from LibDiameter_Interface all; //DiameterS9 //DiameterRFRo import from DiameterRfRo_PIXITS all; import from DiameterRfRo_Templates all; import from DiameterRfRo_SIP_Templates all; Loading Loading @@ -106,6 +106,58 @@ //TODO check for 2nd Ro or Rf configuration!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! group RF{ group TypeOfCharging{ /** * @desc Function used to send AC-Request and receive AC-Answer * @param p_art accounting record type - EVENT_E,START_E,INTERIM_E,STOP_E * p_acc_rec_nr acc record number * p_ts timestamp of event * @verdict depend on receive message and its matching with template */ function f_sendACR_awaitACA_(in Acc_Record_Type p_art, in UInt32 p_acc_rec_nr, in UInt32 p_ts) runs on DiameterComponent { f_send_ACR( md_aCR( vc_sessionId, md_acrBodyAvps_TypeOfCharging_Session( vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP m_accounting_Record_Type( // containing an Accounting-Record-Type AVP p_art ), m_accounting_Record_Number( // containing an Accounting-Record-Number AVP p_acc_rec_nr // indicating the value ), m_event_timestamp(p_ts), m_service_Information_AVP_dummy // FIXME To be continue by creating a m_service_Information template modifying m_service_Information_AVP_dummy ) ) ); f_awaiting_ACA( mdw_aCA( vc_sessionId, // containing a Session-ID AVP mdw_acaBodyAvps( mw_resultCode( // containing a Result-Code AVP DIAMETER_SUCCESS_E // indicating DIAMETER_SUCCESS ), vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP mw_accounting_Record_Type( // containing an Accounting-Record-Type AVP p_art ), mw_accounting_Record_Number( // containing an Acct-Application-Id AVP p_acc_rec_nr // indicating the value ) )) ); } }//End group TypeOfCharging }//End group RF } // Endgroup GlobalSteps group Preambles{ Loading
DiameterRfRo/ttcn/DiameterRfRo_TCFunctions.ttcn +212 −4 Original line number Diff line number Diff line Loading @@ -10,6 +10,8 @@ module DiameterRfRo_TCFunctions { import from LibCommon_VerdictControl all ; // LibDiameter //import from Diameter_PIXITS all; import from LibDiameter_TypesAndValues all; import from LibDiameter_Types_Base_AVPs all; import from LibDiameter_Types_RfRo_AVPs all; Loading @@ -30,7 +32,7 @@ module DiameterRfRo_TCFunctions { group TP_RF_CDF_Role { // 5.2.2.1.2 Message Syntax group messageSyntax { group MessageSyntax { /** * @desc Verify that the IUT can successfully process all mandatory AVPs in an AC-Request received due to Charging Data Transfer Loading Loading @@ -149,8 +151,8 @@ module DiameterRfRo_TCFunctions { ), m_accounting_Record_Number( // containing an Accounting-Record-Number AVP 3 // indicating the value 3 ), m_service_Information_AVP_dummy // FIXME To be continue by creating a m_service_Information template modifying m_service_Information_AVP_dummy )//, //m_service_Information_AVP_dummy // FIXME To be continue by creating a m_service_Information template modifying m_service_Information_AVP_dummy ) ) ); Loading Loading @@ -232,6 +234,8 @@ module DiameterRfRo_TCFunctions { f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_sendACR_awaitACA_(STOP_RECORD_E,3,1); f_postamble_Rf_CTF(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); Loading @@ -239,8 +243,212 @@ module DiameterRfRo_TCFunctions { } // End of function f_TC_RF_CDF_TC_02 /** * @desc Verify that the IUT can successfully process an AC-Request [Interim] where Session Based Charging is used * @verdict pass on success, fail on error or inconc on timeout only */ function f_TC_RF_CDF_TC_03() runs on DiameterRfRo { // Local variables // Preamble f_preamble_Rf_CTF(); f_sendACR_awaitACA_(START_RECORD_E,3,1); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); f_send_ACR( md_aCR( vc_sessionId, md_acrBodyAvps_TypeOfCharging_Session( vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP m_accounting_Record_Type( // containing an Accounting-Record-Type AVP INTERIM_RECORD_E ), m_accounting_Record_Number( // containing an Accounting-Record-Number AVP 3 // indicating the value 3 ), m_event_timestamp(1), m_service_Information_AVP_dummy // FIXME To be continue by creating a m_service_Information template modifying m_service_Information_AVP_dummy ) ) ); f_awaiting_ACA( mdw_aCA( vc_sessionId, // containing a Session-ID AVP mdw_acaBodyAvps( mw_resultCode( // containing a Result-Code AVP DIAMETER_SUCCESS_E // indicating DIAMETER_SUCCESS ), vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP mw_accounting_Record_Type( // containing an Accounting-Record-Type AVP INTERIM_RECORD_E ), mw_accounting_Record_Number( // containing an Acct-Application-Id AVP 3 // indicating the value 3 ) )) ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_sendACR_awaitACA_(STOP_RECORD_E,3,1); f_postamble_Rf_CTF(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_RF_CDF_TC_03 /** * @desc Verify that the IUT can successfully process an AC-Request [Stop] where Session Based Charging is used * @verdict pass on success, fail on error or inconc on timeout only */ function f_TC_RF_CDF_TC_04() runs on DiameterRfRo { // Local variables // Preamble f_preamble_Rf_CTF(); f_sendACR_awaitACA_(START_RECORD_E,3,1); f_sendACR_awaitACA_(INTERIM_RECORD_E,3,1); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); f_send_ACR( md_aCR( vc_sessionId, md_acrBodyAvps_TypeOfCharging_Session( vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP m_accounting_Record_Type( // containing an Accounting-Record-Type AVP STOP_RECORD_E ), m_accounting_Record_Number( // containing an Accounting-Record-Number AVP 3 // indicating the value 3 ), m_event_timestamp(1), m_service_Information_AVP_dummy // FIXME To be continue by creating a m_service_Information template modifying m_service_Information_AVP_dummy ) ) ); f_awaiting_ACA( mdw_aCA( vc_sessionId, // containing a Session-ID AVP mdw_acaBodyAvps( mw_resultCode( // containing a Result-Code AVP DIAMETER_SUCCESS_E // indicating DIAMETER_SUCCESS ), vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP mw_accounting_Record_Type( // containing an Accounting-Record-Type AVP STOP_RECORD_E ), mw_accounting_Record_Number( // containing an Acct-Application-Id AVP 3 // indicating the value 3 ) )) ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_postamble_Rf_CTF(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_RF_CDF_TC_04 } // End of group TypeOfCharging //5.2.2.1.4 ErrorCases group ErrorCases { /** * @desc Verify that the IUT terminates the call in case of timer expiration when the Session Based Charging procedure is not completed properly. * @verdict pass on success, fail on error or inconc on timeout only */ function f_TC_RF_CDF_EC_01() runs on DiameterRfRo { // Local variables var float v_sessionAbortTimer:=0.0; // Preamble f_preamble_Rf_CTF(); f_sendACR_awaitACA_(START_RECORD_E,3,1); //set of timer due to RFC3588 p.8.2 par 5 if (ispresent(vc_recvDiamMsg.aCA_MSG.aCA_Body.acct_Interim_Interval)){ v_sessionAbortTimer := 2.0 * int2float(vc_recvDiamMsg.aCA_MSG.aCA_Body.acct_Interim_Interval.aVP_Data); }else{ // v_sessionAbortTimer := 2.0 * int2float(PX_DIAMETER_TWAIT); } f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); f_wait(v_sessionAbortTimer); f_awaiting_ASR( mdw_aSR( vc_sessionId, // containing a Session-ID AVP mdw_asrBodyAvps( vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP vc_destinationRealm, // containing a Destination-Realm AVP vc_destinationHost // containing a Destination-Host AVP )) ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_postamble_Rf_CTF(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_RF_CDF_EC_01 /** * @desc Verify that the IUT terminates the call in case of timer expiration when the Session Based Charging procedure is not completed properly. * @verdict pass on success, fail on error or inconc on timeout only */ function f_TC_RF_CDF_EC_02() runs on DiameterRfRo { // Local variables // Preamble f_preamble_Rf_CTF(); f_sendACR_awaitACA_(START_RECORD_E,3,1); f_sendACR_awaitACA_(INTERIM_RECORD_E,3,1); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Preamble done. ***"); f_awaiting_ASR( mdw_aSR( vc_sessionId, // containing a Session-ID AVP mdw_asrBodyAvps( vc_originHost, // containing an Origin-Host AVP vc_originRealm, // containing an Origin-Realm AVP vc_destinationRealm, // containing a Destination-Realm AVP vc_destinationHost // containing a Destination-Host AVP )) ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync f_postamble_Rf_CTF(); f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync log("*** " & __SCOPE__ & ": INFO: Postamble done. ***"); } // End of function f_TC_RF_CDF_EC_02 } // End of group ErrorCasses } // End of group TP_RF_CDF_Role // 5.2.2.2. CTF Role Loading
DiameterRfRo/ttcn/DiameterRfRo_TestCases.ttcn +221 −8 File changed.Preview size limit exceeded, changes collapsed. Show changes
DiameterRfRo/ttcn/DiameterRfRo_TestControl.ttcn +15 −1 Original line number Diff line number Diff line Loading @@ -12,12 +12,26 @@ module DiameterRfRo_TestControl { control { if (PICS_CDF_IUT) { if (PICS_RF_CDF_IUT) { execute(TC_RF_CDF_MS_01()); execute(TC_RF_CDF_MS_02()); if (PICS_EVENT_BASED_CHARGING) { execute(TC_RF_CDF_TC_01()); //execute(TC_RF_CDF_EC_03()); } if (PICS_SESSION_BASED_CHARGING) { execute(TC_RF_CDF_TC_02()); execute(TC_RF_CDF_TC_03()); execute(TC_RF_CDF_TC_04()); execute(TC_RF_CDF_EC_01()); execute(TC_RF_CDF_EC_02()); //execute(TC_RF_CDF_EC_04()); } } if (PICS_RF_CTF_IUT) { } } // End of 'Control' statement Loading