Commit b271ef04 authored by rennoch's avatar rennoch
Browse files

HSS_AIR_14-15

parent 0dee7cd3
Loading
Loading
Loading
Loading
+144 −8
Original line number Diff line number Diff line
@@ -3190,11 +3190,58 @@ module DiameterS6a_HSS_TCFunctions {
            // Local variables
            
            // Preamble
            f_preamble_HSS();
            f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
            log("*** " & __SCOPE__ & ": INFO: Preamblue done. ***");
                        
            // Test Body
            // Clause 'when'
            f_triggerAirMessage(
                md_AIR_TCs( 
                    vc_sessionId,                                   // containing a Session-ID AVP
                    md_airBodyAvps_TC_10(
                        md_auth_Session_State_noStateMaintained,    // containing an Auth-Session-State AVP indicating NO_STATE_MAINTAINED
                        vc_originHost,                              // containing an Origin-Host AVP
                        vc_originRealm,                             // containing an Origin-Realm AVP
                        vc_destinationRealm,                        // containing a Destination-Realm AVP
                        md_user_Name(                               // containing a User-Name AVP
                                    PX_USR_NAME),                   //     indicating known IMSI
                        m_visitedPLMNId_dummy,                      // containing a Visited-PLMN-ID AVP
                        m_reqEUTRANAuthInfo_NumReqVec_ImResPre(               // containing a Requested-EUTRAN-Authentication-Info AVP
                            m_numberOfRequestedVectorsAVP(1),
                            omit
                        ),
                        m_reqUTRANGERANAuthInfo_ImResPre_ReSynInf(                        // containing a Requested-EUTRAN-Authentication-Info AVP
                            m_immediateResponsePreferredAVP(1),
                            omit
                        )
                    ) // End of md_airBodyAvps_TC_03
                ) // End of md_AIR_TCs
            );
                        
            // Clause 'then'
            tc_ac.start;
            alt {
                [] MME_S6a.receive( 
                    mw_mmeAuthenticationInformationAnswer(
                        mdw_AIA_TCs( 
                            vc_sessionId,                                           // containing a Session-ID AVP
                            mdw_aiaBodyAvps_TC_06( 
                                mw_resultCode(DIAMETER_SUCCESS_E),                  // containing a Result-Code AVP indicating DIAMETER_SUCCESS
                                mdw_authentication_Info_e_UTRAN_Vector(             // containing an E-UTRAN-Vector AVP
                                    mw_e_UTRAN_Vector_dummy                         //     containing RAND AVP
                                                                                    //     containing XRES AVP
                                                                                    //     containing KASME AVP
                ))))) { // Expected AI-Answer message 
                    tc_ac.stop;
                    f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
                    log("*** " & __SCOPE__ & ": PASS: Expected AI-Answer message was received. ***");
                }
                [] tc_ac.timeout {
                    f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
                    log("*** " & __SCOPE__ & ": INCONC: Message was not received in due time. ***");
                }
            } // End of 'altstep' statement
                        
            // Postamble
            
@@ -3205,11 +3252,54 @@ module DiameterS6a_HSS_TCFunctions {
            // Local variables
            
            // Preamble
            f_preamble_HSS();
            f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
            log("*** " & __SCOPE__ & ": INFO: Preamblue done. ***");
                        
            // Test Body
            // Clause 'when'
            f_triggerAirMessage(
                md_AIR_TCs( 
                    vc_sessionId,                                   // containing a Session-ID AVP
                    md_airBodyAvps_TC_03(
                        md_auth_Session_State_noStateMaintained,    // containing an Auth-Session-State AVP indicating NO_STATE_MAINTAINED
                        vc_originHost,                              // containing an Origin-Host AVP
                        vc_originRealm,                             // containing an Origin-Realm AVP
                        vc_destinationRealm,                        // containing a Destination-Realm AVP
                        md_user_Name(                               // containing a User-Name AVP
                                    PX_USR_NAME),                   //     indicating known IMSI
                        m_visitedPLMNId_dummy,                      // containing a Visited-PLMN-ID AVP
                        m_reqEUTRANAuthInfo(                        // containing a Requested-UTRAN-Authentication-Info AVP
                            m_re_synchronization_Info_AVP(
                                PX_ReSYNCHRONISATION_INFO           //     containing a Re-Synchronization-Info AVP
                            ))
                    ) // End of md_airBodyAvps_TC_03
                ) // End of md_AIR_TCs
            );
                        
            // Clause 'then'
            tc_ac.start;
            alt {
                [] MME_S6a.receive( 
                    mw_mmeAuthenticationInformationAnswer(
                        mdw_AIA_TCs( 
                            vc_sessionId,                                           // containing a Session-ID AVP
                            mdw_aiaBodyAvps_TC_06( 
                                mw_resultCode(DIAMETER_SUCCESS_E),                  // containing a Result-Code AVP indicating DIAMETER_SUCCESS
                                mdw_authentication_Info_e_UTRAN_Vector(             // containing an E-UTRAN-Vector AVP
                                    mw_e_UTRAN_Vector_dummy                         //     containing RAND AVP
                                                                                    //     containing XRES AVP
                                                                                    //     containing KASME AVP
                ))))) { // Expected AI-Answer message 
                    tc_ac.stop;
                    f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
                    log("*** " & __SCOPE__ & ": PASS: Expected AI-Answer message was received. ***");
                }
                [] tc_ac.timeout {
                    f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
                    log("*** " & __SCOPE__ & ": INCONC: Message was not received in due time. ***");
                }
            } // End of 'altstep' statement
                        
            // Postamble
            
@@ -3218,13 +3308,59 @@ module DiameterS6a_HSS_TCFunctions {
        function f_TC_HSS_AIR_16() runs on TestAdapter {
            
            // Local variables
            f_preamble_HSS();
            f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
            log("*** " & __SCOPE__ & ": INFO: Preamblue done. ***");
                        
            // Preamble
            
            // Test Body
            // Clause 'when'
            f_triggerAirMessage(
                md_AIR_TCs( 
                    vc_sessionId,                                   // containing a Session-ID AVP
                    md_airBodyAvps_TC_10(
                        md_auth_Session_State_noStateMaintained,    // containing an Auth-Session-State AVP indicating NO_STATE_MAINTAINED
                        vc_originHost,                              // containing an Origin-Host AVP
                        vc_originRealm,                             // containing an Origin-Realm AVP
                        vc_destinationRealm,                        // containing a Destination-Realm AVP
                        md_user_Name(                               // containing a User-Name AVP
                                    PX_USR_NAME),                   //     indicating known IMSI
                        m_visitedPLMNId_dummy,                      // containing a Visited-PLMN-ID AVP
                        m_reqEUTRANAuthInfo(                        // containing a Requested-UTRAN-Authentication-Info AVP
                            m_re_synchronization_Info_AVP(
                                PX_ReSYNCHRONISATION_INFO           //     containing a Re-Synchronization-Info AVP
                            )),
                        m_reqUTRANGERANAuthInfo_ImResPre_ReSynInf(                        // containing a Requested-EUTRAN-Authentication-Info AVP
                            omit,
                            m_re_synchronization_Info_AVP(
                                PX_ReSYNCHRONISATION_INFO           //     containing a Re-Synchronization-Info AVP
                            )
                        )
                    ) // End of md_airBodyAvps_TC_03
                ) // End of md_AIR_TCs
            );
            
            // Clause 'then'
            tc_ac.start;
            alt {
                [] MME_S6a.receive( 
                    mw_mmeAuthenticationInformationAnswer(
                        mdw_AIA_TCs( 
                            vc_sessionId,                                           // containing a Session-ID AVP
                            mdw_aiaBodyAvps_TC_06( 
                                mw_resultCode(DIAMETER_UNABLE_TO_COMPLY_E),                  // containing a Result-Code AVP indicating DIAMETER_SUCCESS
                                omit)
                            ))) { // Expected AI-Answer message 
                    tc_ac.stop;
                    f_selfOrClientSyncAndVerdict(c_tbDone, e_success);
                    log("*** " & __SCOPE__ & ": PASS: Expected AI-Answer message was received. ***");
                }
                [] tc_ac.timeout {
                    f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
                    log("*** " & __SCOPE__ & ": INCONC: Message was not received in due time. ***");
                }
            } // End of 'altstep' statement
                        
            // Postamble
            
+15 −1
Original line number Diff line number Diff line
@@ -1824,9 +1824,15 @@ module DiameterS6a_Templates {
                    immediate_Response_Preferred         := p_immediate_Response_Preferred
                } // End of template m_reqEUTRANAuthInfo_ImResPre

                template (value) Req_EUTRAN_Auth_Info_AVP m_reqEUTRANAuthInfo_ReSynInf(
                    in template (present) Re_synchronization_Info_AVP p_re_synchronization_Info
                ) modifies m_reqEUTRANAuthInfo_dummy := {
                    re_synchronization_Info              := p_re_synchronization_Info
                } // End of template m_reqEUTRANAuthInfo_ImResPre

                template (value) Req_EUTRAN_Auth_Info_AVP m_reqEUTRANAuthInfo_NumReqVec_ImResPre(
                    in template (present) Number_Of_Requested_Vectors_AVP p_number_Of_Requested_Vectors,
                    in template (present) Immediate_Response_Preferred_AVP p_immediate_Response_Preferred
                    in template Immediate_Response_Preferred_AVP p_immediate_Response_Preferred
                ) modifies m_reqEUTRANAuthInfo_dummy := {
                    number_Of_Requested_Vectors         := p_number_Of_Requested_Vectors,
                    immediate_Response_Preferred         := p_immediate_Response_Preferred
@@ -1880,6 +1886,14 @@ module DiameterS6a_Templates {
                    number_Of_Requested_Vectors         := p_number_Of_Requested_Vectors
                } // End of template m_reqUTRANGERANAuthInfoNumReq
                
                template (value) Req_UTRAN_GERAN_Auth_Info_AVP m_reqUTRANGERANAuthInfo_ImResPre_ReSynInf(
                    in template Immediate_Response_Preferred_AVP p_immediate_Response_Preferred,
                    in template Re_synchronization_Info_AVP p_re_synchronization_Info
                ) modifies m_reqUTRANGERANAuthInfo_dummy := {
                    immediate_Response_Preferred         := p_immediate_Response_Preferred,
                    re_synchronization_Info              := p_re_synchronization_Info
                } // End of template m_reqUTRANGERANAuthInfo_ImResPre_ReSynInf
                
                /**
                * @desc Main send template for MME_S6a port
                * @param p_RSR_MSG RS-Request send template message