Commit 3a506df9 authored by pintar's avatar pintar
Browse files

new tests for groups VPCRF_HSM and VPCRF_HPQ

parent f75a57cc
Loading
Loading
Loading
Loading
+160 −17
Original line number Diff line number Diff line
@@ -106,7 +106,7 @@ module DiameterS9_Gxx_TCFunctions {
        group TP_VPCRFRole_HSM{

            /*
            *  @desc    This is the test case function f_TC_VPCRF_HSM_01_Gxx
            *  @desc    This is the test case function f_TC_VPCRF_HSM_01_BBERF1
            *  @param
            */
            function f_TC_VPCRF_HSM_01_BBERF1()
@@ -116,20 +116,43 @@ module DiameterS9_Gxx_TCFunctions {

                f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync
                //CCR INITIAL REQUEST
                f_send_CCR(m_CCR_Gxx_InitialRequest(vc_sessionId,
                f_initiate_session_BBERF_case2a();
                //CCR SESSION MODIFICATION
                f_send_CCR(m_CCR_Gxx_UpdateRequest(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
                                                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_initiate_session_BBERF_case2b();
                //CCR SESSION MODIFICATION
                f_send_CCR(m_CCR_Gxx_UpdateRequest(vc_sessionId,
                                                vc_originHost,
@@ -137,14 +160,13 @@ module DiameterS9_Gxx_TCFunctions {
                                                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_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
@@ -153,33 +175,58 @@ module DiameterS9_Gxx_TCFunctions {

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

            } // end function f_TC_VPCRF_HSM_01_BBERF1
            } // end function f_TC_VPCRF_HSM_02_BBERF1

            /*
            *  @desc    This is the test case 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_02_BBERF1()
            function f_TC_VPCRF_HSM_03_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,
                f_initiate_session_BBERF_case2a();
                //CCR SESSION MODIFICATION
                f_send_CCR(m_CCR_Gxx_UpdateRequest(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,
                                                {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(); // 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,
@@ -192,6 +239,8 @@ module DiameterS9_Gxx_TCFunctions {
                                                )
                          );

                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
@@ -202,8 +251,102 @@ module DiameterS9_Gxx_TCFunctions {

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

            } // end function f_TC_VPCRF_HSM_02_BBERF1
            } // 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_Gxx
            *  @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(); // 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(); // 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_Gxx
            *  @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(); // 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(); // 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    
    
}// end module DiameterS9_Gxx_TCFunctions
 No newline at end of file
+15 −0
Original line number Diff line number Diff line
@@ -240,6 +240,7 @@ 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
@@ -248,6 +249,13 @@ module DiameterS9_PIXITS
        */
        modulepar octetstring PX_QOS_RULE_NAME := '0b'O;

        /** @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_NOT_ACCEPTABLE := '0b'O;
        
        
        //TODO check if following PIXITS will be used in S9
//        /** @desc	UInt32, PIXIT item A-7/18
@@ -303,15 +311,22 @@ module DiameterS9_PIXITS
        The SGW/AGW in IPv4Addr format (3GPP-EPS and 3GPP2 accesses), PIXIT item A-7/27
        */
        modulepar IPv4Addr PX_SGW_AGW_ipv4 := {1,2,3,4};

        /** @desc	
        The SGW/AGW in type IPv6Addr format (3GPP-EPS and 3GPP2 accesses), PIXIT item A-7/28
        */
        modulepar IPv6Addr PX_SGW_AGW_ipv6 := {1,2,3,4,5,6,7,8};

        /** @desc	
        The max QoS bandwidth in type UInt32 format, PIXIT item
        */
        modulepar UInt32 PX_max_Requested_Bandwidth_UL := 4294967295;

        /** @desc	
        The subsession Id in type UInt32 format, PIXIT item
        */
        modulepar UInt32 PX_SUBSESSION_ID := 100;

//        
//        /** @desc	octetstring, PIXIT item A-7/29
//         * A charging identifier for the Access-Network-Charging-Identifier-Value AVP in Access-Network-Charging-Identifier AVPs
+298 −29

File changed.

Preview size limit exceeded, changes collapsed.

+64 −6
Original line number Diff line number Diff line
@@ -248,6 +248,62 @@
            f_awaiting_CCA(mw_CCA_ResultCode(vc_sessionId, vc_originHost_IUT, vc_originRealm_IUT, mw_resultCode(mw_resultCode_diameterSuccess)));
        }

        function f_initiate_session_BBERF_case2a() runs on DiameterComponent
        {
            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));
        }

        function f_initiate_session_BBERF_case2b() runs on DiameterComponent
        {

            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));
        }

        function f_await_initial_session_send_response_HPCRF() runs on DiameterComponent
        {

            f_awaiting_CCR(mw_CCR_basic(?,
                                      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,
                                   m_cC_Request_Type(INITIAL_REQUEST_E),
                                   m_resultCode(m_resultCode_diameterSuccess)));
        }

    }// end group Preambles

    group Postambles {
@@ -360,33 +416,35 @@
        }

        function f_ConfigRun_HPCRF_BBERF(DiameterComponent p_diameterComponent_hpcrf,
                                          DiameterComponent p_diameterComponent_bberf) runs on ServerSyncComp
                                         DiameterComponent p_diameterComponent_bberf,
                                         in SyncPointList p_syncPointIds ) runs on ServerSyncComp
        {
            if (PX_Gxxsupport) {
                // synchronize PTCs on 3 sychronization points
                f_serverSync2Clients({c_prDone, c_tbDone, c_poDone});
                f_serverSync2Clients(p_syncPointIds );
                f_cf_1S9_1Gxx_hpcrfDown(p_diameterComponent_hpcrf,
                                        p_diameterComponent_bberf);
            } else {
                // synchronize single PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSync1Client(p_syncPointIds );
                f_cf_1S9_hpcrfDown(p_diameterComponent_hpcrf);
            }
        }

        function f_ConfigRun_HPCRF_2BBERF(DiameterComponent p_diameterComponent_hpcrf,
                                          DiameterComponent p_diameterComponent_bberf1,
                                          DiameterComponent p_diameterComponent_bberf2) runs on ServerSyncComp
                                          DiameterComponent p_diameterComponent_bberf2,
                                          in SyncPointList p_syncPointIds ) runs on ServerSyncComp
        {
            if (PX_Gxxsupport) {
                // synchronize PTCs on 3 sychronization points
                f_serverSync3Clients({c_prDone, c_tbDone, c_poDone});
                f_serverSync3Clients(p_syncPointIds);
                f_cf_1S9_2Gxx_hpcrfDown(p_diameterComponent_hpcrf,
                                        p_diameterComponent_bberf1,
                                        p_diameterComponent_bberf2);
            } else {
                // synchronize single PTC on 3 sychronization points
                f_serverSync1Client({c_prDone, c_tbDone, c_poDone});
                f_serverSync1Client(p_syncPointIds);
                f_cf_1S9_hpcrfDown(p_diameterComponent_hpcrf);
            }
        }
+119 −21

File changed.

Preview size limit exceeded, changes collapsed.

Loading