Commit 762da4bf authored by rennoch's avatar rennoch
Browse files

Gx/PCRF test: IPS01

parent 6ca92ffe
Loading
Loading
Loading
Loading
+24 −0
Original line number Diff line number Diff line
@@ -101,6 +101,30 @@ module DiameterGx_Gx_TCFunctions {

            } // end function f_TC_PCRF_IPS_03
            

            /*
            *  @desc	This is the test case function TC_PCRF_IPS_04
            *  @param	
            */
            function f_TC_PCRF_IPS_04()
            runs on DiameterComponent {
		
                f_preamble_PCEF();
		
                f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
		
                f_send_CCR(m_CCR_InitialRequest_defaultEPS(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, m_DefaultEpsBearerQoS(m_qoS_Class_Identifier(QCI_1_E), m_allocRetentionPrio(m_priorityLevel(0)))));
        
                f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //     sync
		
                f_awaiting_CCA(mw_CCA_PCCrules_ChrgRuleInstall(vc_sessionId, vc_originHost, vc_originRealm, ?));
            
                f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
		
                f_postamble_PCEF();

            } // end function f_TC_PCRF_IPS_04            
            
        }//end group TP_PCRFRole_IPS
        group TP_PCRFRole_MSI {	//Modification of Session Information

+36 −2
Original line number Diff line number Diff line
@@ -844,6 +844,32 @@ module DiameterGx_Templates {
                    aVP_Type := omit
                };
                
                            
            template Default_EPS_Bearer_QoS_AVP m_DefaultEpsBearerQoS 
            		(template QoS_Class_Identifier_AVP p_qoSClassIdentifier,
            		 template Allocation_Retention_Priority_AVP p_allocationRetentionPriority) :=
            {
                aVP_Header := m_aVP_HeaderVid(c_vendIdDefault_EPS_Bearer_QoS_AVP, 8+lengthof(encvalue(p_qoSClassIdentifier))+lengthof(encvalue(p_allocationRetentionPriority)), omit),
				qoS_Class_Identifier := p_qoSClassIdentifier,
                allocation_Retention_Priority := p_allocationRetentionPriority,
                aVP_Type := omit
                };
                
                                
            template Priority_Level_AVP m_priorityLevel (UInt32 p_data) :=
            {
                aVP_Header := m_aVP_HeaderVid(c_vendIdPriority_Level_AVP, 8, omit),
                aVP_Data := p_data
            }
            
            template Allocation_Retention_Priority_AVP m_allocRetentionPrio (template Priority_Level_AVP p_priorityLevel):=
            {
                aVP_Header := m_aVP_HeaderVid(c_vendIdAllocation_Retention_Priority_AVP, 8+lengthof(encvalue(p_priorityLevel)), omit),
                priority_Level := p_priorityLevel,
                pre_emption_Capability := omit,
                pre_emption_Vulnerability := omit
            }                                         
            
     	  }//end group sendingTemplatesForAVPs
     	  group awaitingTemplatesForAVPs{
    
@@ -1363,6 +1389,14 @@ module DiameterGx_Templates {
				network_Request_Support := m_network_Request_Support(PX_NETWORK_REQUEST_SUPPORT)
 			}
 			
 			template CCR_MSG m_CCR_InitialRequest_defaultEPS(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 Default_EPS_Bearer_QoS_AVP p_defaultEpsBearerQoS) modifies m_CCR_basic := {
				default_EPS_Bearer_QoS := p_defaultEpsBearerQoS
 			}
            
            template CCR_MSG m_CCR_UpdateRequest(template Session_Id_AVP p_sessionId,
                                        template Origin_Host_AVP p_originHost,
                                        template Origin_Realm_AVP p_originRealm,
+21 −0
Original line number Diff line number Diff line
@@ -83,6 +83,27 @@ module DiameterGx_TestCases
		
                f_cf_1GxEDown(v_diameterComponent_pcef);
            } // end TC_PCRF_IPS_03
            
            /*
            * @desc TC_PCRF_IPS_04
            * @param p_cSeq_s Transaction Id
            */
            testcase TC_PCRF_IPS_04() 
            runs on ServerSyncComp
            system TestAdapter {
                //Variables
                var DiameterComponent v_diameterComponent_pcef;
                f_cf_1GxEUp(v_diameterComponent_pcef);
		
                //Start
                v_diameterComponent_pcef.start(f_TC_PCRF_IPS_04());
                
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
		
                f_cf_1GxEDown(v_diameterComponent_pcef);
            } // end TC_PCRF_IPS_04            
            
        }//end group TP_PCRFRole_IPS
        
        group TP_PCRFRole_MSI {	//Modification of Session Information