Commit 1765716b authored by Yann Garcia's avatar Yann Garcia
Browse files

Merge branch 'TTF010' into 'main'

Ttf010

See merge request !1
parents 2ff77ad7 2fc98bdb
Loading
Loading
Loading
Loading

.gitignore

0 → 100644
+16 −0
Original line number Diff line number Diff line
.project
.settings
.classpath
.metadata

/bin/
/ttcn3build/
/.apt_generated/

/lib/
/tracefiles/
/build/
/clf/
/tt3plugins/
*log*
taconfig.xml
 No newline at end of file

.gitmodules

0 → 100644
+16 −0
Original line number Diff line number Diff line
[submodule "ttcn/LibCommon"]
	path = ttcn/LibCommon
	url = https://forge.etsi.org/rep/LIBS/LibCommon.git
	branch = TTF006
[submodule "ttcn/LibSip"]
	path = ttcn/LibSip
	url = https://forge.etsi.org/rep/LIBS/LibSip.git
	branch = TTF006
[submodule "ttcn/LibDiameter"]
	path = ttcn/LibDiameter
	url = https://forge.etsi.org/rep/LIBS/LibDiameter.git
	branch = TTF006
[submodule "ttcn/LibIms"]
	path = ttcn/LibIms
	url = https://forge.etsi.org/rep/LIBS/LibIms.git
	branch = TTF006

README.md

0 → 100644
+0 −0

Empty file added.

+167 −0
Original line number Diff line number Diff line
/*
Copyright (c) ETSI 2019.

This software is subject to copyrights owned by ETSI. Non-exclusive permission
is hereby granted, free of charge, to copy, reproduce and amend this file
under the following conditions: It is provided "as is", without warranty of any
kind, expressed or implied.

ETSI shall never be liable for any claim, damages, or other liability arising
from its use or inability of use.This permission does not apply to any documentation
associated with this file for which ETSI keeps all rights reserved. The present
copyright notice shall be included in all copies of whole or part of this
file and shall not imply any sub-license right.
*/


Package TP_CX {
    
    import all from Sip_Common;
    import all from Diameter_Common;    
    
     
    Test Purpose {
        TP Id TP_CX_HSS_ECO_UAA_01
        //TP_CX_HSS_UAA_01 from TS 103 653-1 V2.1.1 without emergency registration
        Test objective  "IUT successfully processes all mandatory AVPs in a UA-Request received due to first UE emergency registration and sends UA-Answer."
        
        Reference 
            "TS 129 228 [4], clause 6.1.1 and tables 6.1.1.1 and 6.1.1.2",
            "TS 129 229 [5], clauses 6.1.1 and 6.1.2"
        
        Config Id CF_VxLTE_INT
        
        PICS Selection NONE
        
        Initial conditions with {
            the UE_A entity not isEmergencyRegisteredTo the IMS_A
        }
        
        Expected behaviour
            ensure that {
                when {
                    the IMS_I_CSCF_A entity sends a UAR containing
                        Session_ID_AVP
                        Vendor_Specific_Application_Id_AVP
                        Auth_Session_State_AVP
                            indicating value NO_STATE_MAINTAINED,
                        Origin_Host_AVP
                        Origin_Realm_AVP
                        Public_Identity_AVP
                        Visited_Network_Identifier_AVP
                        User_Authorization_Type_AVP 
                            indicating value REGISTRATION,
                        User_Name_AVP
                        Destination_Host_AVP
                        Destination_Realm_AVP
                        UAR_Flags_AVP indicating value '1'; //IMS emergency registration
                    to the IMS_HSS_A entity
                }
                then {
                    the IMS_HSS_A entity sends the UAA containing
                        Session_ID_AVP,
                        Vendor_Specific_Application_Id_AVP,
                        Auth_Session_State_AVP,
                        Origin_Host_AVP,
                        Origin_Realm_AVP,
                        not Result_Code_AVP
                        Experimental_Result_AVP containing
                            Experimental_Result_Code_AVP 
                                indicating value DIAMETER_FIRST_REGISTRATION;;
                    to the IMS_I_CSCF_A entity
                }
            }  
    }  // End of TP TP_CX_HSS_ECO_UAA_01
     
    Test Purpose {
        TP Id TP_CX_HSS_ECO_UAA_02
        //TP_CX_HSS_UAA_02 from TS 103 653-1 V2.1.1 without emergency registration
        Test objective  "IUT successfully processes all mandatory AVPs in a UA-Request received due to protected UE emergency registration and sends UA-Answer."
        
        Reference 
            "TS 129 228 [4], clause 6.1.1.1"
        
        Config Id CF_VxLTE_INT
        
        PICS Selection NONE
        
        Initial conditions with {
            the UE_A entity not isEmergencyRegisteredTo the IMS_A
        }
        
        Expected behaviour
            ensure that {
                when {
                    the IMS_I_CSCF_A entity sends a UAR containing
                        Public_Identity_AVP
                        User_Name_AVP
                        UAR_Flags_AVP indicating value '1'; //IMS emergency registration
                    to the IMS_HSS_A entity
                }
                then {
                    the IMS_HSS_A entity sends the UAA containing
                        not Result_Code_AVP,
                        Experimental_Result_AVP containing
                            Experimental_Result_Code_AVP
                                indicating value DIAMETER_SUBSEQUENT_REGISTRATION;,
                        Server_Name_AVP,
                        not Server_Capabilities_AVP;
                    to the IMS_I_CSCF_A entity
                }
            }  
    }  // End of TP TP_CX_HSS_ECO_UAA_02
     
    Test Purpose {
        TP Id TP_CX_HSS_ECO_SAA_01
        
        Test objective  "IUT successfully processes all mandatory AVPs in a SA-Request received due to S-CSCF registration notification procedure when credentials not matches and sends SA-Answer."
        
        Reference 
            "TS 129 228 [4], clause 6.1.2",
            "TS 129 229 [5], clauses 6.1.3 and 6.1.4"
            
        Config Id CF_VxLTE_INT
        
        PICS Selection NONE
        
        Initial conditions with {
            the UE_A entity isNotRegisteredTo the IMS_A
        }
        
        Expected behaviour
            ensure that {
                when {
                    the IMS_S_CSCF_A entity sends a SAR containing
                        Session_ID_AVP,
                        Vendor_Specific_Application_Id_AVP,
                        Auth_Session_State_AVP
                            indicating value NO_STATE_MAINTAINED,
                        Origin_Host_AVP,
                        Origin_Realm_AVP,
                        Public_Identity_AVP,
                        not User_Name_AVP,
                        Destination_Realm_AVP,
                        Server_Name_AVP,
                        Server_Assignment_Type_AVP
                            indicating value AUTHENTICATION_FAILURE //or AUTHENTICATION_TIMEOUT
                        User_Data_Already_Available_AVP;
                    to the IMS_HSS_A entity
                }
                then {
                    the IMS_HSS_A entity sends the SAA containing
                        Session_ID_AVP
                        Vendor_Specific_Application_Id_AVP
                        Auth_Session_State_AVP
                        Origin_Host_AVP
                        Origin_Realm_AVP
                        Result_Code_AVP
                            indicating value DIAMETER_SUCCESS
                        User_Data AVP
                        Charging_Information_AVP;
                    to the IMS_S_CSCF_A entity
                }
            }  
    }  // End of TP TP_CX_HSS_ECO_SAA_01
    
} // End of Package TP_CX
+114 −0
Original line number Diff line number Diff line
/* ETSI Software License
* As long as the here under conditions are respected, non-exclusive permission is hereby granted,
* free of charge, to use, reproduce and modify this software source code, under the following conditions:
* This source code is provided AS IS with no warranties, express or implied, including but not limited to,
* the warranties of merchant ability, fitness for a particular purpose and warranties for non-infringement
* of intellectual property rights.
* ETSI shall not be held liable in any event for any direct or indirect damages whatsoever (including, without
* limitation, damages for loss of profits, business interruption, loss of information, or any other pecuniary
* loss) arising out of or related to the use of or inability to use the source code.
* This permission is granted to facilitate the implementation of the related ETSI standard, provided that
* ETSI is given the right to use, reproduce and amend the modified source code under the same conditions
* as the present permission.
* This permission does not apply to any documentation associated with this source code for which ETSI keeps
* all rights reserved.
* The present ETSI Source Code license shall be included in all copies of whole or part of this source code
* and shall not imply any sub-license right.
* (c) ETSI 2019-2020 
*/
 
 
 Package Diameter_Common {
    Domain {
        pics: 
            - NONE
        ;
        entities:
            - EPC_PCRF_A
            - EPC_PCRF_B
            - EPC_PGW_A
            - EPC_PGW_B
            - EPC_MME_A
            - EPC_MME_B
            - IMS_HSS_A
            - IMS_HSS_B
        ;
        events:
            - receives
            - sends
            - triggers
            - detachment
            - invokes
            - create_session_request
            - delete_session_request
            - termination_SIP_signalling_session
        ;
    } // End of Domain section
    
    Data {
        type DiameterMessage;
        
        // CX DIAMETER Requests/Answers
        DiameterMessage UAA;
        DiameterMessage UAR;
        DiameterMessage MAA;
        DiameterMessage MAR;
        DiameterMessage SAA;
        DiameterMessage SAR;
        // RX DIAMETER Requests/Answers
        DiameterMessage AAA;
        DiameterMessage AAR;
        DiameterMessage STA;
        DiameterMessage STR;
        // GX DIAMETER Requests/Answers
        DiameterMessage RAA;
        DiameterMessage RAR;
        DiameterMessage CCA;
        DiameterMessage CCR;
        // S6A DIAMETER Requests/Answers
        DiameterMessage ULA;
        DiameterMessage ULR;
        DiameterMessage CLR;
        DiameterMessage CLA;
    } // End of Data section
    
    Configuration {
        Interface Type defaultGT accepts DiameterMessage;
        Component Type DiameterComp with gate g of type defaultGT;
        
          Test Configuration CF_VxLTE_INT
                containing 
                    SUT component EPC_PGW_A of type DiameterComp
                    SUT component EPC_PCRF_A of type DiameterComp
                    SUT component S_CSCF_A of type DiameterComp
                    SUT component I_CSCF_A of type DiameterComp
                    SUT component P_CSCF_A of type DiameterComp
                    SUT component HSS_A of type DiameterComp
                    SUT component EPC_MME_A of type DiameterComp
                    SUT component IMS_AS_A of type DiameterComp
                    connection between EPC_MME_A.g and HSS_A.g
                    connection between EPC_PGW_A.g and EPC_PCRF_A.g
                    connection between EPC_PCRF_A.g and P_CSCF_A.g
                    connection between HSS_A.g and S_CSCF_A.g
                    connection between HSS_A.g and I_CSCF_A.g
                    connection between IMS_AS_A.g and HSS_A.g
          ;
          
          Test Configuration CF_VxLTE_RMI
                containing 
                    SUT component EPC_PGW_B of type DiameterComp
                    SUT component EPC_PCRF_A of type DiameterComp
                    SUT component EPC_PCRF_B of type DiameterComp
                    SUT component P_CSCF_B of type DiameterComp
                    SUT component HSS_A of type DiameterComp
                    SUT component EPC_MME_B of type DiameterComp
                    connection between EPC_MME_B.g and HSS_A.g
                    connection between EPC_PGW_B.g and EPC_PCRF_B.g
                    connection between EPC_PCRF_A.g and EPC_PCRF_B.g
                    connection between EPC_PCRF_B.g and P_CSCF_B.g
          ;
          
    } // End of Configuration section
    
} // End of Package Diameter_Common
Loading