Rev 61 |
Rev 67 |
Go to most recent revision |
Blame |
Compare with Previous |
Last modification |
View Log
| Download
| SVN
/**
* @author STF 466
* @version $Id: DiameterS9_Gxx_TCFunctions.ttcn3 62 2014-04-25 12:26:38Z rennoch $
* @desc This module provides S9 test functions used by the test cases
* for IMS-DIAMETER tests.
*/
module DiameterS9_Gxx_TCFunctions {
// LibCommon
import from LibCommon_Sync {function f_selfOrClientSyncAndVerdict;
const c_prDone, c_tbDone, c_poDone;}
import from LibCommon_VerdictControl all ;
// LibDiameter
import from LibDiameter_Types_Gx_AVPs all;
import from LibDiameter_TypesAndValues all;
import from LibDiameter_Templates all;
import from LibDiameter_Interface all;
import from LibDiameter_Steps all;
import from LibDiameter_Types_Base_AVPs all;
//DiameterS9
import from DiameterS9_Templates all;
import from DiameterS9_Gxx_Templates all;
import from DiameterS9_Steps all;
import from DiameterS9_PIXITS all;
group TP_VPCRFRole{ // ยง5.2.2
group TP_VPCRFRole_MS{
}// end group TP_VPCRFRole_MS
group TP_VPCRFRole_HSE{
/*
* @desc This is the test case function f_TC_VPCRF_HSE_01_BBERF
* @param
*/
function f_TC_VPCRF_HSE_01_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gxx_InitialRequest(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_anGwAddress(valueof(f_IPAdress(PX_SGW_AGW_ipv4,PX_SGW_AGW_ipv6)))},
omit
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HSE_01_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HSE_02_BBERF1
* @param
*/
function f_TC_VPCRF_HSE_02_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gxx_InitialRequest(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_anGwAddress(f_IPAdress(PX_SGW_AGW_ipv4,PX_SGW_AGW_ipv6))},
m_called_Station_Id(PX_CALLED_STATION_ID_PDN)
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HSE_02_BBERF1
}// end group TP_VPCRFRole_HSE
group TP_VPCRFRole_HSM{
/*
* @desc This is the test case function f_TC_VPCRF_HSM_01_BBERF1
* @param
*/
function f_TC_VPCRF_HSM_01_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
//CCR SESSION MODIFICATION
f_send_CCR(m_CCR_Gxx_UpdateRequest(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
omit,
{m_qoSRuleReport_RuleName({m_qoSRuleName_dummy(PX_QOS_RULE_NAME)})}
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HSM_01_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HSM_02_BBERF1
* @param
*/
function f_TC_VPCRF_HSM_02_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
//CCR SESSION MODIFICATION
f_send_CCR(m_CCR_Gxx_UpdateRequest(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
m_called_Station_Id(PX_CALLED_STATION_ID_PDN),
{m_qoSRuleReport_RuleName({m_qoSRuleName_dummy(PX_QOS_RULE_NAME)})}
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HSM_02_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HSM_03_BBERF1
* @param
*/
function f_TC_VPCRF_HSM_03_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
//CCR SESSION MODIFICATION
f_send_CCR(m_CCR_Gxx_UpdateRequest(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
omit,
{m_qoSRuleReport_RuleName({m_qoSRuleName_dummy(PX_QOS_RULE_NAME)})}
)
);
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HSM_03_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HSM_04_BBERF1
* @param
*/
function f_TC_VPCRF_HSM_04_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
//CCR SESSION MODIFICATION
f_send_CCR(m_CCR_Gxx_UpdateRequest(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
m_called_Station_Id(PX_CALLED_STATION_ID_PDN),
{m_qoSRuleReport_RuleName({m_qoSRuleName_dummy(PX_QOS_RULE_NAME)})}
)
);
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HSM_04_BBERF1
}// end group TP_VPCRFRole_HSM
group TP_VPCRFRole_HPQ{
/*
* @desc This is the test case function f_TC_VPCRF_HPQ_01_BBERF
* @param
*/
function f_TC_VPCRF_HPQ_01_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HPQ_01_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HPQ_02_BBERF1
* @param
*/
function f_TC_VPCRF_HPQ_02_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HPQ_02_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HPQ_03_BBERF
* @param
*/
function f_TC_VPCRF_HPQ_03_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HPQ_03_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HPQ_04_BBERF1
* @param
*/
function f_TC_VPCRF_HPQ_04_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HPQ_04_BBERF1
}// end group TP_VPCRFRole_HPQ
group TP_VPCRFRole_HST{
/*
* @desc This is the test case function f_TC_VPCRF_HST_01_BBERF1
* @param
*/
function f_TC_VPCRF_HST_01_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
//CCR SESSION TERMINATION
f_send_CCR(m_CCR_Gxx_TerminationRequest(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, omit));
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HST_01_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HST_02_BBERF1
* @param
*/
function f_TC_VPCRF_HST_02_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
//CCR SESSION TERMINATION
f_send_CCR(m_CCR_Gxx_TerminationRequest(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
m_called_Station_Id(PX_CALLED_STATION_ID_PDN)
));
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HST_02_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HST_03_BBERF1
* @param
*/
function f_TC_VPCRF_HST_03_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
//RAR SESSION TERMINATION
f_awaiting_RAR(mw_RAR_Gxx_SessRelCause(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
vc_destinationHost,
?
));
f_send_RAA(m_RAA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm, m_resultCode(m_resultCode_diameterSuccess)));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HST_03_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HST_04_BBERF1
* @param
*/
function f_TC_VPCRF_HST_04_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
//RAR SESSION TERMINATION
f_awaiting_RAR(mw_RAR_Gxx_SessRelCause(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
vc_destinationHost,
?
));
f_send_RAA(m_RAA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm, m_resultCode(m_resultCode_diameterSuccess)));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HST_04_BBERF1
}// end group TP_VPCRFRole_HST
group TP_VPCRFRole_HMB{
/*
* @desc This is the test case function f_TC_VPCRF_HMB_01_BBERF1
* @param
*/
function f_TC_VPCRF_HMB_01_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HMB_01_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HMB_01_BBERF2
* @param
*/
function f_TC_VPCRF_HMB_01_BBERF2()
runs on DiameterComponent {
f_preamble_BBERF2();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HMB_01_BBERF2
/*
* @desc This is the test case function f_TC_VPCRF_HMB_02_BBERF1
* @param
*/
function f_TC_VPCRF_HMB_02_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HMB_02_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HMB_02_BBERF2
* @param
*/
function f_TC_VPCRF_HMB_02_BBERF2()
runs on DiameterComponent {
f_preamble_BBERF2();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HMB_02_BBERF2
/*
* @desc This is the test case function f_TC_VPCRF_HMB_03_BBERF1
* @param
*/
function f_TC_VPCRF_HMB_03_BBERF1()
runs on DiameterComponent {
f_TC_VPCRF_HMB_01_BBERF1();
} // end function f_TC_VPCRF_HMB_03_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HMB_03_BBERF2
* @param
*/
function f_TC_VPCRF_HMB_03_BBERF2()
runs on DiameterComponent {
f_preamble_BBERF2();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
//CCR SESSION MODIFICATION
f_send_CCR(m_CCR_Gxx_UpdateRequest(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
omit,
{m_qoSRuleReport_RuleName({m_qoSRuleName_dummy(PX_QOS_RULE_NAME)})}
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HMB_03_BBERF2
/*
* @desc This is the test case function f_TC_VPCRF_HMB_04_BBERF1
* @param
*/
function f_TC_VPCRF_HMB_04_BBERF1()
runs on DiameterComponent {
f_TC_VPCRF_HMB_02_BBERF1();
} // end function f_TC_VPCRF_HMB_04_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HMB_04_BBERF2
* @param
*/
function f_TC_VPCRF_HMB_04_BBERF2()
runs on DiameterComponent {
f_preamble_BBERF2();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
//CCR SESSION MODIFICATION
f_send_CCR(m_CCR_Gxx_UpdateRequest(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
m_called_Station_Id(PX_CALLED_STATION_ID_PDN),
{m_qoSRuleReport_RuleName({m_qoSRuleName_dummy(PX_QOS_RULE_NAME)})}
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HMB_04_BBERF2
/*
* @desc This is the test case function f_TC_VPCRF_HMB_05_BBERF1
* @param
*/
function f_TC_VPCRF_HMB_05_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HMB_05_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HMB_05_BBERF2
* @param
*/
function f_TC_VPCRF_HMB_05_BBERF2()
runs on DiameterComponent {
f_preamble_BBERF2();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
f_terminate_session_BBERF_case2a(); // postamble
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HMB_05_BBERF2
/*
* @desc This is the test case function f_TC_VPCRF_HMB_06_BBERF1
* @param
*/
function f_TC_VPCRF_HMB_06_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HMB_06_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HMB_06_BBERF2
* @param
*/
function f_TC_VPCRF_HMB_06_BBERF2()
runs on DiameterComponent {
f_preamble_BBERF2();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
f_terminate_session_BBERF_case2b(); // postamble
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HMB_06_BBERF2
/*
* @desc This is the test case function f_TC_VPCRF_HMB_07_BBERF1
* @param
*/
function f_TC_VPCRF_HMB_07_BBERF1()
runs on DiameterComponent {
f_TC_VPCRF_HMB_01_BBERF1();
} // end function f_TC_VPCRF_HMB_01_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HMB_07_BBERF2
* @param
*/
function f_TC_VPCRF_HMB_07_BBERF2()
runs on DiameterComponent {
f_TC_VPCRF_HMB_01_BBERF2();//In case if RAR message is forwarded to BBERF, RAR message have to be checked in this function
} // end function f_TC_VPCRF_HMB_07_BBERF2
}// end group TP_VPCRFRole_HMB
group TP_VPCRFRole_HDS{
/*
* @desc This is the test case function f_TC_VPCRF_HDS_01_BBERF
* @param
*/
function f_TC_VPCRF_HDS_01_BBERF1()
runs on DiameterComponent {
f_TC_VPCRF_HMB_02_BBERF1();
} // end function f_TC_VPCRF_HDS_01_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HDS_01_BBERF
* @param
*/
function f_TC_VPCRF_HDS_01_BBERF2()
runs on DiameterComponent {
f_preamble_BBERF2();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_send_CCR(m_CCR_Gxx_InitialRequest_SessLink_PDNConn
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_anGwAddress(f_IPAdress(PX_SGW_AGW_ipv4,PX_SGW_AGW_ipv6))},
omit,//calledStation
omit,//PDN_Connection
m_sessionLinkingIndicator_dummy(SESSION_LINKING_DEFERRED_E)
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HDS_01_BBERF2
}// end group TP_VPCRFRole_HDS
group TP_VPCRFRole_HSL{
/*
* @desc This is the test case function f_TC_VPCRF_HSL_01_BBERF
* @param
*/
function f_TC_VPCRF_HSL_01_BBERF1()
runs on DiameterComponent {
f_TC_VPCRF_HMB_02_BBERF1();
} // end function f_TC_VPCRF_HSL_01_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_HSL_01_BBERF
* @param
*/
function f_TC_VPCRF_HSL_01_BBERF2()
runs on DiameterComponent {
f_preamble_BBERF2();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_send_CCR(m_CCR_Gxx_InitialRequest_SessLink_PDNConn
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_anGwAddress(f_IPAdress(PX_SGW_AGW_ipv4,PX_SGW_AGW_ipv6))},
m_called_Station_Id(PX_CALLED_STATION_ID_PDN),//calledStation
m_pDN_Connection_ID(PX_PDN_CONNECTION_ID_DATA),//PDN_Connection
omit
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HSL_01_BBERF2
}// end group TP_VPCRFRole_HSL
group TP_VPCRFRole_VQR{
/*
* @desc This is the test case function f_TC_VPCRF_VQR_01_PCEF
* @param
*/
function f_TC_VPCRF_VQR_01_PCEF()
runs on DiameterComponent {
f_preamble_PCEF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gx_InitialRequest_chrgRuleReport
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_chargRuleReport_RNameStatus(valueof(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA)),valueof(m_pCC_Rule_Status(PX_PCC_RULE_STATUS)))}
)
);
f_awaiting_CCA(mw_CCA_Gx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_PCEF(); // postamble
f_postamble_PCEF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VQR_01_PCEF
/*
* @desc This is the test case function f_TC_VPCRF_VQR_02_BBERF
* @param
*/
function f_TC_VPCRF_VQR_02_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gxx_InitialRequest_qosRuleReport
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_anGwAddress(f_IPAdress(PX_SGW_AGW_ipv4,PX_SGW_AGW_ipv6))},
omit,
{m_qoSRuleReport_RuleName({m_qoSRuleName_dummy(PX_QOS_RULE_NAME)})}
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VQR_02_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_VQR_03_BBERF1
* @param
*/
function f_TC_VPCRF_VQR_03_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gxx_InitialRequest_qosRuleReport
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_anGwAddress(f_IPAdress(PX_SGW_AGW_ipv4,PX_SGW_AGW_ipv6))},
m_called_Station_Id(PX_CALLED_STATION_ID_PDN),
{m_qoSRuleReport_RuleName({m_qoSRuleName_dummy(PX_QOS_RULE_NAME)})}
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VQR_03_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_VQR_04_PCEF
* @param
*/
function f_TC_VPCRF_VQR_04_PCEF()
runs on DiameterComponent {
f_preamble_PCEF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gx_InitialRequest_chrgRuleReport
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_chargRuleReport_RNameStatus(valueof(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA)),valueof(m_pCC_Rule_Status(PX_PCC_RULE_STATUS)))}
)
);
f_awaiting_CCA(mw_CCA_Gx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gx_UpdateRequest_chrgRuleReport
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
{m_chargRuleReport_RNameStatus(valueof(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA)),valueof(m_pCC_Rule_Status(PX_PCC_RULE_STATUS)))}
)
);
f_awaiting_CCA(mw_CCA_Gx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_PCEF(); // postamble
f_postamble_PCEF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VQR_04_PCEF
/*
* @desc This is the test case function f_TC_VPCRF_VQR_05_BBERF
* @param
*/
function f_TC_VPCRF_VQR_05_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
//CCR SESSION MODIFICATION
f_send_CCR(m_CCR_Gxx_UpdateRequest(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
omit,
{m_qoSRuleReport_RuleName({m_qoSRuleName_dummy(PX_QOS_RULE_NAME)})}
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VQR_05_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_VQR_06_BBERF1
* @param
*/
function f_TC_VPCRF_VQR_06_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
//CCR SESSION MODIFICATION
f_send_CCR(m_CCR_Gxx_UpdateRequest(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
m_called_Station_Id(PX_CALLED_STATION_ID_PDN),
{m_qoSRuleReport_RuleName({m_qoSRuleName_dummy(PX_QOS_RULE_NAME)})}
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VQR_06_BBERF1
}// end group TP_VPCRFRole_VQR
group TP_VPCRFRole_VPQ{
/*
* @desc This is the test case function f_TC_VPCRF_VPQ_01_BBERF1
* @param
*/
function f_TC_VPCRF_VPQ_01_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
//RAR SESSION TERMINATION if needed
// f_awaiting_RAR(mw_RAR_Gxx_SessRelCause(vc_sessionId,
// vc_originHost,
// vc_originRealm,
// vc_destinationRealm,
// vc_destinationHost,
// ?
// ));
//f_send_RAA(m_RAA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm, m_resultCode(m_resultCode_diameterSuccess)));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VPQ_01_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_VPQ_02_BBERF1
* @param
*/
function f_TC_VPCRF_VPQ_02_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
//RAR SESSION TERMINATION if needed
// f_awaiting_RAR(mw_RAR_Gxx_SessRelCause(vc_sessionId,
// vc_originHost,
// vc_originRealm,
// vc_destinationRealm,
// vc_destinationHost,
// ?
// ));
//f_send_RAA(m_RAA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm, m_resultCode(m_resultCode_diameterSuccess)));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VPQ_02_BBERF1
}//end group TP_VPCRFRole_VPQ
group TP_VPCRFRole_VST{
/*
* @desc This is the test case function f_TC_VPCRF_VST_01_PCEF
* @param
*/
function f_TC_VPCRF_VST_01_PCEF()
runs on DiameterComponent {
f_preamble_PCEF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gx_InitialRequest_chrgRuleReport
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_chargRuleReport_RNameStatus(valueof(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA)),valueof(m_pCC_Rule_Status(PX_PCC_RULE_STATUS)))}
)
);
f_awaiting_CCA(mw_CCA_Gx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_send_CCR(m_CCR_Gx_TerminationRequest(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm));
f_awaiting_CCA(mw_CCA_Gx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_postamble_PCEF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VST_01_PCEF
/*
* @desc This is the test case function f_TC_VPCRF_VST_02_BBERF1
* @param
*/
function f_TC_VPCRF_VST_02_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
//CCR SESSION TERMINATION
f_send_CCR(m_CCR_Gxx_TerminationRequest(vc_sessionId, vc_originHost, vc_originRealm, vc_destinationRealm, omit));
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VST_02_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_VST_03_BBERF1
* @param
*/
function f_TC_VPCRF_VST_03_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
//CCR SESSION TERMINATION
f_send_CCR(m_CCR_Gxx_TerminationRequest(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
m_called_Station_Id(PX_CALLED_STATION_ID_PDN)
));
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_HST_03_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_VST_04_BBERF1
* @param
*/
function f_TC_VPCRF_VST_04_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
//RAR SESSION TERMINATION
f_awaiting_RAR(mw_RAR_Gxx_SessRelCause(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
vc_destinationHost,
?
));
f_send_RAA(m_RAA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm, m_resultCode(m_resultCode_diameterSuccess)));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VST_04_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_VST_05_BBERF1
* @param
*/
function f_TC_VPCRF_VST_05_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2b();
//RAR SESSION TERMINATION
f_awaiting_RAR(mw_RAR_Gxx_SessRelCause(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
vc_destinationHost,
?
));
f_send_RAA(m_RAA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm, m_resultCode(m_resultCode_diameterSuccess)));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2b(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VST_05_BBERF1
}// end group TP_VPCRFRole_VST
group TP_VPCRFRole_VMB {
/*
* @desc This is the test case function f_TC_VPCRF_VMB_01_PCEF
* @param
*/
function f_TC_VPCRF_VMB_01_PCEF()
runs on DiameterComponent {
f_preamble_PCEF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gx_InitialRequest_chrgRuleReport
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_chargRuleReport_RNameStatus(valueof(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA)),valueof(m_pCC_Rule_Status(PX_PCC_RULE_STATUS)))}
)
);
f_awaiting_CCA(mw_CCA_Gx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gx_UpdateRequest_chrgRuleReport_EvTri_AnGw
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
{m_chargRuleReport_RNameStatus(valueof(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA)),valueof(m_pCC_Rule_Status(PX_PCC_RULE_STATUS)))},
{m_event_Trigger(AN_GW_CHANGE_E)},
{m_anGwAddress(f_IPAdress(PX_SGW_AGW_ipv4,PX_SGW_AGW_ipv6))}
)
);
f_awaiting_CCA(mw_CCA_Gx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_PCEF(); // postamble
f_postamble_PCEF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VMB_01_PCEF
/*
* @desc This is the test case function f_TC_VPCRF_VMB_02_PCEF
* @param
*/
function f_TC_VPCRF_VMB_02_PCEF()
runs on DiameterComponent {
f_preamble_PCEF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gx_InitialRequest_chrgRuleReport
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_chargRuleReport_RNameStatus(valueof(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA)),valueof(m_pCC_Rule_Status(PX_PCC_RULE_STATUS)))}
)
);
f_awaiting_CCA(mw_CCA_Gx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gx_UpdateRequest_chrgRuleReport_EvTri_IpCanType_RatType
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
{m_chargRuleReport_RNameStatus(valueof(m_chargingRuleName(PX_CHARGING_RULE_NAME_DATA)),valueof(m_pCC_Rule_Status(PX_PCC_RULE_STATUS)))},
{m_event_Trigger(AN_GW_CHANGE_E)},
m_iP_CAN_Type (PX_IP_CAN_TYPE),
m_rAT_Type (PX_RAT_TYPE)
)
);
f_awaiting_CCA(mw_CCA_Gx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_PCEF(); // postamble
f_postamble_PCEF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VMB_02_PCEF
} //end group TP_VPCRFRole_VMB
group TP_VPCRFRole_VDS {
/*
* @desc This is the test case function f_TC_VPCRF_VDS_01_BBERF
* @param
*/
function f_TC_VPCRF_VDS_01_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gxx_InitialRequest_SessLink_PDNConn
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_anGwAddress(f_IPAdress(PX_SGW_AGW_ipv4,PX_SGW_AGW_ipv6))},
omit,//calledStation
omit,//PDN_Connection
m_sessionLinkingIndicator_dummy(SESSION_LINKING_DEFERRED_E)
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VDS_01_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_VDS_02_BBERF
* @param
*/
function f_TC_VPCRF_VDS_02_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
//CCR INITIAL REQUEST
f_initiate_session_BBERF_case2a();
f_selfOrClientSyncAndVerdict(c_sync1, f_getVerdict()); // sync
//CCR SESSION MODIFICATION
f_send_CCR(m_CCR_Gxx_UpdateRequest(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
m_called_Station_Id(PX_CALLED_STATION_ID_PDN),
omit // qos
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VDS_02_BBERF1
/*
* @desc This is the test case function f_TC_VPCRF_VDS_03_BBERF
* @param
*/
function f_TC_VPCRF_VDS_03_BBERF1()
runs on DiameterComponent {
f_preamble_BBERF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gxx_InitialRequest_SessLink_PDNConn
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_anGwAddress(f_IPAdress(PX_SGW_AGW_ipv4,PX_SGW_AGW_ipv6))},
m_called_Station_Id(PX_CALLED_STATION_ID_PDN),
omit,//PDN_Connection
omit //m_sessionLinkingIndicator_dummy(SESSION_LINKING_DEFERRED_E)
)
);
f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_BBERF_case2a(); // postamble
f_postamble_BBERF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VDS_03_BBERF1
} //end group TP_VPCRFRole_VDS
group TP_VPCRFRole_VSL {
/*
* @desc This is the test case function f_TC_VPCRF_VSL_01_PCEF
* @param
*/
function f_TC_VPCRF_VSL_01_PCEF()
runs on DiameterComponent {
f_preamble_PCEF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gxx_InitialRequest_SessLink_PDNConn
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
omit, //{m_anGwAddress(f_IPAdress(PX_SGW_AGW_ipv4,PX_SGW_AGW_ipv6))},
m_called_Station_Id(PX_CALLED_STATION_ID_PDN),
m_pDN_Connection_ID(PX_PDN_CONNECTION_ID_DATA),//PDN_Connection
omit //m_sessionLinkingIndicator_dummy(SESSION_LINKING_DEFERRED_E)
)
);
f_awaiting_CCA(mw_CCA_Gx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_PCEF(); // postamble
f_postamble_PCEF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VSL_01_PCEF
} //end group TP_VPCRFRole_VSL
group TP_VPCRFRole_VIF {
/*
* @desc This is the test case function f_TC_VPCRF_VIF_01_PCEF
* @param
*/
function f_TC_VPCRF_VIF_01_PCEF()
runs on DiameterComponent {
f_preamble_PCEF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gxx_InitialRequest_routingRule_EvTri
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
omit, // event_Trigger
m_routing_Rule_Install(valueof(m_routing_Rule_Definition(valueof(m_routing_Rule_Identifier(PX_ROUTING_RULE_IDENTIFIER_VALUE)),valueof(m_routing_Filter)))),
omit // routing_Rule_Remove
)
);
f_awaiting_CCA(mw_CCA_Gx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_PCEF(); // postamble
f_postamble_PCEF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VIF_01_PCEF
/*
* @desc This is the test case function f_TC_VPCRF_VIF_02_PCEF
* @param
*/
function f_TC_VPCRF_VIF_02_PCEF()
runs on DiameterComponent {
f_preamble_PCEF();
f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
f_send_CCR(m_CCR_Gxx_InitialRequest_routingRule_EvTri
(vc_sessionId,
vc_originHost,
vc_originRealm,
vc_destinationRealm,
f_framedIpAddress4_send(PX_UE1_framedIpAddress),
f_framedIpAddress6_send(PX_UE1_framedIp6Address),
{m_subscription_Id(valueof(m_subscription_Id_Type(END_USER_IMSI_E)),
valueof(m_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA)))},
{m_event_Trigger(ROUTING_RULE_CHANGE_E)},
omit, // m_routing_Rule_Install
m_routing_Rule_Remove(valueof(m_routing_Rule_Identifier(PX_ROUTING_RULE_IDENTIFIER_VALUE))) // routing_Rule_Remove
)
);
f_awaiting_CCA(mw_CCA_Gx_basic(vc_sessionId, vc_originHost, vc_originRealm));
f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync
f_terminate_session_PCEF(); // postamble
f_postamble_PCEF();
f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync
} // end function f_TC_VPCRF_VIF_02_PCEF
} //end group TP_VPCRFRole_VIF
} // group TP_VPCRFRole
}// end module DiameterS9_Gxx_TCFunctions