Commit ce812d30 authored by rennoch's avatar rennoch
Browse files

Gx/PCEF test: extending PCC18, new PCC19

parent d677a202
Loading
Loading
Loading
Loading
+50 −3
Original line number Diff line number Diff line
@@ -2401,11 +2401,12 @@ module DiameterGx_Gx_TCFunctions {
                
                f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
                
				f_send_RAR(DiameterGx_Templates.m_RAR_CharRuleRemoveInstall // RAR in Rx-module has different header!
				f_send_RAR(DiameterGx_Templates.m_RAR_CharRuleRemoveInstall2 // RAR in Rx-module has different header!
						   (vc_sessionId, vc_originHost, vc_originRealm,
							vc_destinationRealm, vc_destinationHost, 
							m_chrgRuleRemove_Name(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA)),
							m_chrgRuleInstall_Name(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA2))
							m_chrgRuleInstall_Name(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA2)),
							m_chrgRuleInstall_Name(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA3))
							));
                    
                f_awaiting_RAA(mw_RAA_basic(vc_sessionId,?,?)); 
@@ -2427,6 +2428,52 @@ module DiameterGx_Gx_TCFunctions {

            } // end function f_TC_PCEF_PCC_18

            /*
            *  @desc	This is the test case function TC_PCEF_PCC_19
            *  @param	
            */
            function f_TC_PCEF_PCC_19()
            runs on DiameterComponent {

               f_preamble_PCRF();
                
               f_awaiting_CCR(mw_CCR_Request(vc_sessionId, 
                									vc_originHost, 
                									vc_originRealm, 
                									vc_destinationRealm,
                									mw_cC_Request_Type(INITIAL_REQUEST_E),
                									*, *, *));

                f_send_CCA(m_CCA_basic(vc_sessionId, vc_originHost, vc_originRealm));
                
                f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
                
				f_send_RAR(DiameterGx_Templates.m_RAR_EvTriggers // RAR in Rx-module has different header!
						   (vc_sessionId, vc_originHost, vc_originRealm,
							vc_destinationRealm, vc_destinationHost, 
							{m_event_Trigger(SGSN_CHANGE_E),m_event_Trigger(QOS_CHANGE_E)}
							));


                    
                f_awaiting_RAA(mw_RAA_basic(?,?,?)); 

                f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //     sync
                
                f_awaiting_CCR(mw_CCR_basic(vc_sessionId, 
                									vc_originHost, 
                									vc_originRealm, 
                									vc_destinationRealm,
                									mw_cC_Request_Type(TERMINATION_REQUEST_E)
                									));

                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_PCC_19
                    
        }//end group TP_PCEFRole_PCC
        group TP_PCEFRole_EMS {	//Emergency services
+6 −2
Original line number Diff line number Diff line
@@ -268,12 +268,16 @@ module DiameterGx_PIXITS
        */
        modulepar octetstring PX_CHARGING_RULE_NAME_DATA := '08'O;
                        
                
        /** @desc	octetstring,
         * avp_Data (2nd rule) within Charging_Rule_Name_AVP is of octetstring type
        */
        modulepar octetstring PX_CHARGING_RULE_NAME_DATA2 := '09'O;
                                
        /** @desc	octetstring,
         * avp_Data (3rd rule) within Charging_Rule_Name_AVP is of octetstring type
        */
        modulepar octetstring PX_CHARGING_RULE_NAME_DATA3 := '0A'O;
        
        /** @desc	octetstring, 
         * avp_Data within Charging_Rule_Name_AVP is of octetstring type
        */
+17 −4
Original line number Diff line number Diff line
@@ -1608,6 +1608,18 @@ module DiameterGx_Templates {
              }
              
              
            template RAR_MSG m_RAR_EvTriggers(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 Destination_Host_AVP p_destinationHost,
                           template RAR_MSG.event_Trigger p_eventTrigger)

                  modifies m_RAR_basic := 
              {
              	  event_Trigger := p_eventTrigger
              }
                                                      
              template RAR_MSG m_RAR_EvTrigger_UMI(template Session_Id_AVP p_sessionId,
                                           template Origin_Host_AVP p_originHost,
                                           template Origin_Realm_AVP p_originRealm,
@@ -1647,18 +1659,19 @@ module DiameterGx_Templates {
              }                                        

                          
              template RAR_MSG m_RAR_CharRuleRemoveInstall(template Session_Id_AVP p_sessionId,
              template RAR_MSG m_RAR_CharRuleRemoveInstall2(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 Destination_Host_AVP p_destinationHost,
                                           template Charging_Rule_Remove_AVP p_chargingRuleRemove,
                                           template Charging_Rule_Install_AVP p_chargingRuleInstall)
                                           template Charging_Rule_Install_AVP p_chargingRuleInstall,
                                           template Charging_Rule_Install_AVP p_chargingRuleInstall2)
                                           
                  modifies m_RAR_basic := 
              {
              	  charging_Rule_Remove := {p_chargingRuleRemove},
              	  charging_Rule_Install := {p_chargingRuleInstall}
              	  charging_Rule_Install := {p_chargingRuleInstall,p_chargingRuleInstall2}
              }      

          } //     end group Gxmodified_request_templates_send
+19 −0
Original line number Diff line number Diff line
@@ -1394,6 +1394,25 @@ module DiameterGx_TestCases
                f_cf_1GxRDown(v_diameterComponent_pcrf);
            } // end TC_PCEF_PCC_18            
            
            /*
            * @desc TC_PCEF_PCC_19
            */
            testcase TC_PCEF_PCC_19() 
            runs on ServerSyncComp
            system TestAdapter {
                //Variables
                var DiameterComponent v_diameterComponent_pcrf;
                f_cf_1GxRUp(v_diameterComponent_pcrf);
		
                //Start
                v_diameterComponent_pcrf.start(f_TC_PCEF_PCC_19());
                
                // synchronize PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
		
                f_cf_1GxRDown(v_diameterComponent_pcrf);
            } // end TC_PCEF_PCC_19   
            
        }//end group TP_PCEFRole_PCC
        
        group TP_PCEFRole_EMS {	//Emergency services
+1 −0
Original line number Diff line number Diff line
@@ -80,6 +80,7 @@ module DiameterGx_TestExecutions
       execute(TC_PCEF_PCC_16());
       execute(TC_PCEF_PCC_17()); 
       execute(TC_PCEF_PCC_18());
       execute(TC_PCEF_PCC_19());
       execute(TC_PCEF_RAU_01()); 
       execute(TC_PCEF_RAU_02());
       execute(TC_PCEF_RAU_03());