Commit 55174e77 authored by rennoch's avatar rennoch
Browse files

Gx/PCEF tests: PCC-15

parent 4d06e6d0
Loading
Loading
Loading
Loading
+59 −2
Original line number Diff line number Diff line
@@ -2121,7 +2121,7 @@ module DiameterGx_Gx_TCFunctions {
							m_revalidationTime(PX_REVALIDATION_TIME),
							m_chrgRuleInstall_Definition(m_chrgRuleDefinition(PX_CHARGING_RULE_NAME_DATA))));
							                   
                f_awaiting_RAA(mw_RAA_RuleReport(vc_sessionId,?,?, mw_chargRuleReport_Name_Code_Status(mw_rule_Failure_Code(RATING_GROUP_ERROR_E),mw_pCC_Rule_Status(INACTIVE_E)))); 
                f_awaiting_RAA(mw_RAA_basic(vc_sessionId,?,?)); 
                
				// await timeout of revalidation timer
				tc_wait.start (int2float(PX_REVALIDATION_TIME));
@@ -2155,6 +2155,63 @@ module DiameterGx_Gx_TCFunctions {

            } // end function f_TC_PCEF_PCC_14
            
            /*
            *  @desc	This is the test case function TC_PCEF_PCC_15
            *  @param	
            */
            function f_TC_PCEF_PCC_15()
            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_CharRuleInst_RevalTime // RAR in Rx-module has different header!
						   (vc_sessionId, vc_originHost, vc_originRealm,
							vc_destinationRealm, vc_destinationHost, 
							m_revalidationTime(PX_REVALIDATION_TIME),
							m_chrgRuleInstall_Definition(m_chrgRuleDefinition(PX_CHARGING_RULE_NAME_DATA))));
							                   
                f_awaiting_RAA(mw_RAA_basic(vc_sessionId,?,?)); 
                
				// reset revalidation timer

				f_send_RAR(DiameterGx_Templates.m_RAR_CharRuleInst_EvTrigger // RAR in Rx-module has different header!
						   (vc_sessionId, vc_originHost, vc_originRealm,
							vc_destinationRealm, vc_destinationHost, 
							m_event_Trigger(REVALIDATION_TIMEOUT_E),
							m_chrgRuleInstall_Name_RAN(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA), m_resourceAllocNotif)));
                    
                f_awaiting_RAA(mw_RAA_basic(vc_sessionId,?,?)); 
                
                //TODO: possible check of missing revalidation?

                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_15
                    
        }//end group TP_PCEFRole_PCC
        group TP_PCEFRole_EMS {	//Emergency services
        }//end group TP_PCRERole_EMS