Commit f75a57cc authored by pintar's avatar pintar
Browse files

TPs added:TP_VPCRF_HSM_01 and TP_VPCRF_HSM_02

parent 3e53d502
Loading
Loading
Loading
Loading
+139 −1
Original line number Diff line number Diff line
@@ -41,6 +41,42 @@ module DiameterS9_Gxx_TCFunctions {

                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))},
                                                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(); // 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,
@@ -64,8 +100,110 @@ module DiameterS9_Gxx_TCFunctions {

                f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

            } // end function f_TC_VPCRF_HSE_01
            } // 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_Gxx
            *  @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_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))},
                                                omit
                                                )
                          );

                f_awaiting_CCA(mw_CCA_Gxx_basic(vc_sessionId, vc_originHost, vc_originRealm));
                //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(); // 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_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));
                //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(); // postamble

                f_postamble_BBERF();

                f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

            } // end function f_TC_VPCRF_HSM_02_BBERF1
        }// end group TP_VPCRFRole_HSM
    } // group TP_VPCRFRole    
    
}// end module DiameterS9_Gxx_TCFunctions
 No newline at end of file
+18 −0
Original line number Diff line number Diff line
@@ -348,6 +348,24 @@ module DiameterS9_Gxx_Templates {
                    }
                }

                template CCR_MSG m_CCR_Gxx_UpdateRequest (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 CCR_MSG.cCR_Body.subscription_Id p_subscriptionId,
                                                       template CCR_MSG.cCR_Body.called_Station_Id p_calledStationId,
                                                       template CCR_MSG.cCR_Body.qoS_Rule_Report p_qoSRuleReport)
                modifies m_CCR_Gxx_basic := {
                    cCR_Body := {
                        cC_Request_Type       := m_cC_Request_Type ( UPDATE_REQUEST_E ),
                        iP_CAN_Type           := m_iP_CAN_Type (PX_IP_CAN_TYPE),
                        rAT_Type              := m_rAT_Type (PX_RAT_TYPE),
                        subscription_Id       := p_subscriptionId,
                        called_Station_Id     := p_calledStationId,
                        qoS_Rule_Report       := p_qoSRuleReport
                    }
                }

                
                template CCR_MSG m_CCR_Gxx_TerminationRequest(template Session_Id_AVP p_sessionId,
                                            template Origin_Host_AVP p_originHost,
+8 −1
Original line number Diff line number Diff line
@@ -240,6 +240,13 @@ module DiameterS9_PIXITS
           Available values: WLAN, VIRTUAL, UTRAN, GERAN, GAN, HSPA_EVOLUTION, EUTRAN, CDMA2000, HRPD, UMB, EHRPD
        */
        modulepar RAT_Type PX_RAT_TYPE := WLAN_E;    	
        /** @desc	octetstring, PIXIT item A-7/13 

       The QoS_Rule_Name is of type OctetString and
       contains QoS Rule
                    Ref: TS 129 212 5a-3, table 5a-3-4
        */
        modulepar octetstring PX_QOS_RULE_NAME := '0b'O;
        
        
        //TODO check if following PIXITS will be used in S9
+152 −0
Original line number Diff line number Diff line
@@ -867,7 +867,159 @@ module DiameterS9_S9_TCFunctions {
                f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

            } // end function f_TC_VPCRF_HSE_01

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

                f_preamble_HPCRF();

                f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync

                f_awaiting_CCR(mw_CCR_InitialRequest_AnGw_SubSessEnfInf(?,
                                                          vc_originHost,
                                                          vc_originRealm,
                                                          vc_destinationRealm,
                                                          mw_cC_Request_Type(INITIAL_REQUEST_E),
                                                          {mw_subscription_Id(mw_subscription_Id_Type(END_USER_IMSI_E),
                                                                              mw_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA))},
                                                          {mw_anGwAddress(f_IPAdress(PX_SGW_AGW_ipv4,PX_SGW_AGW_ipv6))},
                                                          {mw_subsesEnforcementInfo_Operation(mw_subsessionId_dummy(?),
                                                                                              mw_subsessionOperation_dummy(Subsession_Operation_Code:ESTABLISHMENT_E))}
                                                          ));

                f_send_CCA(m_CCA_basic(vc_sessionId,
                                       vc_originHost,
                                       vc_originRealm,
                                       m_cC_Request_Type(INITIAL_REQUEST_E),
                                       m_resultCode(m_resultCode_diameterSuccess)));

                f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync

                f_terminate_session_HPCRF(); // postamble

                f_postamble_HPCRF();

                f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

            } // end function f_TC_VPCRF_HSE_02
        }// end group TP_VPCRFRole_HSE
        group TP_VPCRFRole_HSM{

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

                f_preamble_HPCRF();

                f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
                //CCR INITIAL REQUEST
                f_awaiting_CCR(mw_CCR_InitialRequest_AnGw(?,
                                                          vc_originHost,
                                                          vc_originRealm,
                                                          vc_destinationRealm,
                                                          mw_cC_Request_Type(INITIAL_REQUEST_E),
                                                          {mw_subscription_Id(mw_subscription_Id_Type(END_USER_IMSI_E),
                                                                              mw_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA))},
                                                          {mw_anGwAddress(f_IPAdress(PX_SGW_AGW_ipv4,PX_SGW_AGW_ipv6))}
                                                          ));

                f_send_CCA(m_CCA_basic(vc_sessionId,
                                       vc_originHost,
                                       vc_originRealm,
                                       m_cC_Request_Type(INITIAL_REQUEST_E),
                                       m_resultCode(m_resultCode_diameterSuccess)));
                //CCR UPDATE REQUEST
                f_awaiting_CCR(mw_CCR_UpdateRequest_SubSessEnfInf_QoS(?,
                                                          vc_originHost,
                                                          vc_originRealm,
                                                          vc_destinationRealm,
                                                          mw_cC_Request_Type(UPDATE_REQUEST_E),
                                                          {mw_subscription_Id(mw_subscription_Id_Type(END_USER_IMSI_E),
                                                                              mw_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA))},
                                                          *,
                                                          {mw_qoSRuleReport_dummy}
                                                          ));

                f_send_CCA(m_CCA_basic(vc_sessionId,
                                       vc_originHost,
                                       vc_originRealm,
                                       m_cC_Request_Type(INITIAL_REQUEST_E),
                                       m_resultCode(m_resultCode_diameterSuccess)));

                f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync

                f_terminate_session_HPCRF(); // postamble

                f_postamble_HPCRF();

                f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

            } // end function f_TC_VPCRF_HSM_01

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

                f_preamble_HPCRF();

                f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
                //CCR INITIAL REQUEST
                f_awaiting_CCR(mw_CCR_InitialRequest_AnGw_SubSessEnfInf(?,
                                                          vc_originHost,
                                                          vc_originRealm,
                                                          vc_destinationRealm,
                                                          mw_cC_Request_Type(INITIAL_REQUEST_E),
                                                          {mw_subscription_Id(mw_subscription_Id_Type(END_USER_IMSI_E),
                                                                              mw_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA))},
                                                          {mw_anGwAddress(f_IPAdress(PX_SGW_AGW_ipv4,PX_SGW_AGW_ipv6))},
                                                          {mw_subsesEnforcementInfo_Operation(mw_subsessionId_dummy(?),
                                                                                              mw_subsessionOperation_dummy(Subsession_Operation_Code:ESTABLISHMENT_E))}
                                                          ));

                f_send_CCA(m_CCA_basic(vc_sessionId,
                                       vc_originHost,
                                       vc_originRealm,
                                       m_cC_Request_Type(INITIAL_REQUEST_E),
                                       m_resultCode(m_resultCode_diameterSuccess)));
                //CCR UPDATE REQUEST
                f_awaiting_CCR(mw_CCR_UpdateRequest_SubSessEnfInf_QoS(?,
                                                          vc_originHost,
                                                          vc_originRealm,
                                                          vc_destinationRealm,
                                                          mw_cC_Request_Type(UPDATE_REQUEST_E),
                                                          {mw_subscription_Id(mw_subscription_Id_Type(END_USER_IMSI_E),
                                                                              mw_subscription_Id_Data(PX_SUBSCRIPTION_ID_DATA))},
                                                          {mw_subsesEnforcementInfo_Operation(mw_subsessionId_dummy(?),
                                                                                              mw_subsessionOperation_dummy(Subsession_Operation_Code:MODIFICATION_E))},
                                                          {mw_qoSRuleReport_dummy}
                                                          ));

                f_send_CCA(m_CCA_basic(vc_sessionId,
                                       vc_originHost,
                                       vc_originRealm,
                                       m_cC_Request_Type(INITIAL_REQUEST_E),
                                       m_resultCode(m_resultCode_diameterSuccess)));

                f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync

                f_terminate_session_HPCRF(); // postamble

                f_postamble_HPCRF();

                f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

            } // end function f_TC_VPCRF_HSM_02
        }// end group TP_VPCRFRole_HSM
    } // group TP_VPCRFRole    
    
}// end module DiameterS9_S9_TCFunctions
 No newline at end of file
+73 −21

File changed.

Preview size limit exceeded, changes collapsed.

Loading