Rev 59 |
Blame |
Compare with Previous |
Last modification |
View Log
| Download
| SVN
/**
* @author STF 466
* @version $Id: DiameterS9_TestControl.ttcn3 66 2014-03-14 15:14:51Z garciay $
* @desc This module provides execution part for S9 test cases.
*/
module DiameterS9_TestControl {
// DiameterS9
import from DiameterS9_PICS all;
import from DiameterS9_TestCases all;
control {
// 5.2.1.1 S9 Messages
execute(TC_HPCRF_MS_01());
// 5.2.1.2.1 S9 Session Establishment
if (PICS_HPCRF_S9_SESSION_ESTABLISHEMENT) {
execute(TC_HPCRF_HSE_01());
execute(TC_HPCRF_HSE_02());
}
// 5.2.1.2.2 S9 Session Modification
execute(TC_HPCRF_HSM_01());
execute(TC_HPCRF_HSM_02());
execute(TC_HPCRF_HSM_03());
execute(TC_HPCRF_HSM_04());
// 5.2.1.2.3 Provision of QoS Rules by the H-PCRF
if (PICS_HPCRF_PROVISION_OF_QOS_WO_VPCRF_REQUEST) {
execute(TC_HPCRF_HPQ_01());
execute(TC_HPCRF_HPQ_02());
}
// 5.2.1.2.4 S9 Session Termination
if (PICS_HPCRF_S9_SESSION_TERMINATION) {
execute(TC_HPCRF_HST_01());
execute(TC_HPCRF_HST_02());
execute(TC_HPCRF_HST_03());
execute(TC_HPCRF_HST_04());
}
// 5.2.1.2.5 Multiple BBERF Handling
if (PICS_HPCRF_MULTIPLE_BBERF_WITH_SAME_IPCAN_SESSION_DURING_HANDOVER) {
execute(TC_HPCRF_HMB_01());
execute(TC_HPCRF_HMB_02());
execute(TC_HPCRF_HMB_03());
execute(TC_HPCRF_HMB_04());
execute(TC_HPCRF_HMB_05());
execute(TC_HPCRF_HMB_06());
}
if (PICS_HPCRF_TWO_BBERFS_WITH_FLOW_MOBILITY_WITH_SAME_IPCAN_SESSION_DURING_HANDOVER) {
execute(TC_HPCRF_HMB_07());
}
// 5.2.1.3.1 QoS and PCC Rules
execute(TC_HPCRF_VQR_01());
execute(TC_HPCRF_VQR_02());
execute(TC_HPCRF_VQR_03());
execute(TC_HPCRF_VQR_04());
// 5.2.1.3.2 Provision of QoS and PCC Rules
if (PICS_HPCRF_PULL_FOR_PCC_AND_QOS_RULE_PROVISIONING) {
execute(TC_HPCRF_VPQ_01());
execute(TC_HPCRF_VPQ_02());
}
if (PICS_HPCRF_PUSH_FOR_PCC_AND_QOS_RULE_PROVISIONING) {
execute(TC_HPCRF_VPQ_03());
execute(TC_HPCRF_VPQ_04());
execute(TC_HPCRF_VPQ_05());
}
// 5.2.1.3.3 S9 Session/Subsession Termination
if (PICS_HPCRF_S9_SESSION_TERMINATION) {
execute(TC_HPCRF_VST_01());
execute(TC_HPCRF_VST_02());
}
if (PICS_HPCRF_S9_SESSION_TERMINATION and PICS_HPCRF_ACTIVE_S9_SESSION_SUBSESSION_TERMINATION) {
execute(TC_HPCRF_VST_03());
execute(TC_HPCRF_VST_04());
}
// 5.2.2.1 S9 Messages
execute(TC_VPCRF_MS_01());
// 5.2.2.2.1 S9 Session Establishment
if (PICS_VPCRF_S9_SESSION_ESTABLISHEMENT) {
execute(TC_VPCRF_HSE_01());
execute(TC_VPCRF_HSE_02());
}
// 5.2.2.2.2 S9 Session Modification
execute(TC_VPCRF_HSM_01());
execute(TC_VPCRF_HSM_02());
execute(TC_VPCRF_HSM_03());
execute(TC_VPCRF_HSM_04());
execute(TC_VPCRF_HPQ_01());
execute(TC_VPCRF_HPQ_02());
execute(TC_VPCRF_HPQ_03());
execute(TC_VPCRF_HPQ_04());
// 5.2.2.2.4 S9 Session Termination
if (PICS_VPCRF_S9_SESSION_TERMINATION) {
execute(TC_VPCRF_HST_01());
execute(TC_VPCRF_HST_02());
execute(TC_VPCRF_HST_03());
execute(TC_VPCRF_HST_04());
}
// 5.2.2.2.5 Multiple BBERF Handling
if (PICS_VPCRF_MULTIPLE_BBERF_WITH_SAME_IPCAN_SESSION_DURING_HANDOVER) {
execute(TC_VPCRF_HMB_01());
execute(TC_VPCRF_HMB_02());
execute(TC_VPCRF_HMB_03());
execute(TC_VPCRF_HMB_04());
execute(TC_VPCRF_HMB_05());
execute(TC_VPCRF_HMB_06());
execute(TC_VPCRF_HMB_07());
}
// 5.2.2.2.6 Deferred Session Linking Handling
if (PICS_VPCRF_SESSION_LINKING_HANDLING_MULTIPLE_PDN_TO_SINGLE_APN) {
execute(TC_VPCRF_HDS_01());
}
// 5.2.2.2.7 Session Linking Handling When Multiple PDN Connection to a single APN
if (PICS_VPCRF_IP_FLOW_MOBILITY) {
execute(TC_VPCRF_HSL_01());
}
// 5.2.2.3.1 QoS and PCC Rules
if (PICS_VPCRF_REQUESTS_FOR_PCC_AND_QOS_RULES) {
execute(TC_VPCRF_VQR_01());
execute(TC_VPCRF_VQR_02());
execute(TC_VPCRF_VQR_03());
execute(TC_VPCRF_VQR_04());
execute(TC_VPCRF_VQR_05());
execute(TC_VPCRF_VQR_06());
}
// 5.2.2.3.2 Provision of QoS and PCC Rules
if (PICS_VPCRF_REQUESTS_FOR_PCC_AND_QOS_RULE_PROVISIONING_FROM_HPCRF) {
execute(TC_VPCRF_VPQ_01());
execute(TC_VPCRF_VPQ_02());
}
// 5.2.2.3.3 S9 Session/Subsession Termination
if (PICS_VPCRF_VA_ACTIVE_S9_SUB_SESSION_TERMINATION) {
execute(TC_VPCRF_VST_01());
execute(TC_VPCRF_VST_02());
execute(TC_VPCRF_VST_03());
}
execute(TC_VPCRF_VST_04());
execute(TC_VPCRF_VST_05());
// 5.2.2.3.4 Multiple BBERF Handling
execute(TC_VPCRF_VMB_01());
execute(TC_VPCRF_VMB_02());
// 5.2.2.3.5 Deferred Session Linking Handling
if (PICS_VPCRF_SESSION_LINKING_HANDLING_MULTIPLE_PDN_TO_SINGLE_APN) {
execute(TC_VPCRF_VDS_01());
execute(TC_VPCRF_VDS_02());
execute(TC_VPCRF_VDS_03());
}
// 5.2.2.3.6 Session Linking Handling When Multiple PDN Connection to a single APN
if (PICS_VPCRF_IP_FLOW_MOBILITY) {
execute(TC_VPCRF_VSL_01());
}
// 5.2.2.3.7 IP flow mobility support
execute(TC_VPCRF_VIF_01());
execute(TC_VPCRF_VIF_02());
} // End of 'Control' statement
} // End of module DiameterS9_TestControl