Commit e69e3dbd authored by rennoch's avatar rennoch
Browse files

Gx/PCEF test: EMS_01

parent 845070b9
Loading
Loading
Loading
Loading
+33 −0
Original line number Diff line number Diff line
@@ -2308,6 +2308,39 @@ module DiameterGx_Gx_TCFunctions {
                    
        }//end group TP_PCEFRole_PCC
        group TP_PCEFRole_EMS {	//Emergency services
        
                    /*
            *  @desc	This is the test case function TC_PCEF_EMS_01
            *  @param	
            */
            function f_TC_PCEF_EMS_01()
            runs on DiameterComponent {

                f_preamble_PCRF();

                f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync

                f_awaiting_CCR(mw_CCR_Request_EMS(vc_sessionId, 
                									vc_originHost, 
                									vc_originRealm, 
                									vc_destinationRealm,
                									mw_cC_Request_Type(INITIAL_REQUEST_E),
                									f_framedIpAddress4(),
                									f_framedIpAddress6(),
                									*,
                									mw_CalledStationId(PX_EMERGENCY_APN),
                									mw_UserEquipmentInfo(mw_UserEquipmentInfoType(IMEISV_E),?)));

                f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //     sync

                f_send_CCA(m_CCA_basic(vc_sessionId, vc_originHost, vc_originRealm));
    
                f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

                f_postamble_PCRF();

            } // end function f_TC_PCEF_EMS_01
        
        }//end group TP_PCRERole_EMS
        group TP_PCEFRole_UMC {	//Usage monitoring control
        }//end group TP_PCEFRole_UMC
+9 −1
Original line number Diff line number Diff line
@@ -313,6 +313,14 @@ module DiameterGx_PIXITS
        modulepar UInt64 PX_DEACTIVATION_TIME := 0; 
        
                                                
        /** @desc	UTF8String, PIXIT item A.1/
         * avp_Data within Called_Station_Id_AVP is of UTF8String type
         * (parameter is part of Called_Station_Id_AVP)
        */
        modulepar UTF8String PX_EMERGENCY_APN := "dummy";  
         
        
        
	} //end group DiameterCommonGxData

} // end module DiameterGx_PIXITS
 No newline at end of file
+47 −1
Original line number Diff line number Diff line
@@ -1058,6 +1058,29 @@ module DiameterGx_Templates {
                aVP_Data := p_avpData
            }

            template User_Equipment_Info_AVP mw_UserEquipmentInfo
            				(template User_Equipment_Info_Type_AVP p_userEquipmentInfoType, 
            				 template User_Equipment_Info_Value_AVP p_userEquipmentInfoValue) :=
            {
                aVP_Header := mw_aVP_Header(c_vendIdUser_Equipment_Info_AVP),
                user_Equipment_Info_Type := p_userEquipmentInfoType,
                user_Equipment_Info_Value := p_userEquipmentInfoValue
            }                          


            template User_Equipment_Info_Type_AVP mw_UserEquipmentInfoType(User_Equipment_Info_Ty_Type p_avpData) :=
            {
                aVP_Header := mw_aVP_Header(c_vendIdUser_Equipment_Info_Type_AVP),
                aVP_Data := p_avpData
            }


            template Called_Station_Id_AVP mw_CalledStationId(template UTF8String p_avpData) :=
            {
                aVP_Header := mw_aVP_Header(c_vendIdCalled_Station_Id_AVP),
                aVP_Data := p_avpData
            }                        
            
     	  }//end group awaitingTemplatesForAVPs
        } //end group SpecificAVPHeaders
    } //end group HeaderFieldTemplates
@@ -1467,6 +1490,29 @@ module DiameterGx_Templates {
                access_Network_Charging_Identifier_Gx := superset(p_accessNetworkChargingIdentifierGx)
            }
            
                        
            template CCR_MSG mw_CCR_Request_EMS(template Session_Id_AVP p_sessionId,
                                        template Origin_Host_AVP p_originHost,
                                        template Origin_Realm_AVP p_originRealm,
                                        template Destination_Realm_AVP p_destinationRealm,
                                        template CC_Request_Type_AVP p_cCRequestType,
            							template Framed_IP_Address_AVP p_framedIpAddress,
            							template Framed_IPv6_Prefix_AVP p_framedIp6Address,
                                        template Routing_Rule_Install_AVP p_routing_Rule_Install,
                                        template Called_Station_Id_AVP p_calledStationId,
                                        template User_Equipment_Info_AVP p_userEquipmentInfo
                                        ) modifies mw_CCR_basic := {
                subscription_Id := {mw_subscription_Id(mw_subscription_Id_Type(END_USER_IMSI_E),mw_subscription_Id_Data(?))},
                framed_IP_Address := p_framedIpAddress,
                framed_IPv6_Prefix := p_framedIp6Address,
                iP_CAN_Type := mw_iP_CAN_Type(PX_IP_CAN_TYPE),
                rAT_Type := mw_rAT_Type(PX_RAT_TYPE),
                routing_Rule_Install := p_routing_Rule_Install,
                called_Station_Id := p_calledStationId,
                user_Equipment_Info := p_userEquipmentInfo
                
            }
                        
            template RAR_MSG mw_RAR_sessReleaseCause(template Session_Id_AVP p_sessionId,
                                        template Origin_Host_AVP p_originHost,
                                        template Origin_Realm_AVP p_originRealm,