Commit 418ff9f2 authored by Bostjan Pintar's avatar Bostjan Pintar
Browse files

STF579 Changes from week 7

parent 7cad843a
Loading
Loading
Loading
Loading
+30 −5
Original line number Original line Diff line number Diff line
@@ -175,11 +175,15 @@ module DiameterShDh_PIXITS {
        /** @desc    UTF8String
        /** @desc    UTF8String
         *  TODO
         *  TODO
        */
        */
        modulepar charstring PX_PublicUserIdentity := "origin.etsi.org";
        modulepar charstring PX_PublicUserIdentity := "sip:+431234567@ims.etsi.org";
        /** @desc    UTF8String
        /** @desc    UTF8String
         *  TODO
         *  TODO
        */
        */
        modulepar charstring PX_NotExistingUserIdentity := "origin.etsi2.org";
        modulepar charstring PX_NotExistingUserIdentity := "sip:+4312345670@ims.etsi.org";
        /** @desc    UTF8String
         *  TODO
        */
        modulepar charstring PX_UnavailableUserIdentity := "sip:+4312345670@ims.etsi.org";
        /** @desc    UTF8String
        /** @desc    UTF8String
         *  TODO
         *  TODO
        */
        */
@@ -187,16 +191,21 @@ module DiameterShDh_PIXITS {
        /** @desc    UTF8String
        /** @desc    UTF8String
         *  TODO
         *  TODO
        */
        */
        modulepar charstring PX_NotRelatedPrivateIdentity := "foo";
        modulepar charstring PX_NotRelatedPrivateIdentity := "sip:+3869910000007@imscore.notexist";
        /** @desc    UTF8String
         *  TODO
        */
        modulepar charstring PX_NotRelatedPrivateIdentity_MSISDN := "386991000007";

        
        
        /** @desc    UTF8String
        /** @desc    UTF8String
         *  TODO
         *  TODO
        */
        */
        modulepar charstring PX_PublicUser_MSISDN := "foo";
        modulepar charstring PX_PublicUser_MSISDN := "431234567";
        /** @desc    UTF8String
        /** @desc    UTF8String
         *  TODO
         *  TODO
        */
        */
        modulepar charstring PX_IMSPublicUserIdentity := "foo";
        modulepar charstring PX_IMSPublicUserIdentity := "431234567";
        
        
        modulepar UTF8String PX_IUT_SIP_URL := "sip:stf549@etsi.org";
        modulepar UTF8String PX_IUT_SIP_URL := "sip:stf549@etsi.org";
        
        
@@ -211,8 +220,24 @@ module DiameterShDh_PIXITS {
         */
         */
        modulepar TServiceData PX_Service_Data_unexpected := {elem:="1"}
        modulepar TServiceData PX_Service_Data_unexpected := {elem:="1"}
        
        
        
        /** @desc    Data_Reference_Type
         *  General Data_Reference_Type for UDR and PUR messages
         */
        modulepar Data_Reference_Type PX_Data_Reference_Type := IMS_PUBLIC_IDENTITY_E;
        modulepar Data_Reference_Type PX_Data_Reference_Type := IMS_PUBLIC_IDENTITY_E;
        
        
        
        /** @desc    Data_Reference_Type
         *  Data_Reference_Type used only for allowed SNR messages
         */
        modulepar Data_Reference_Type PX_Data_Reference_Type_NotificationAllowed := UE_SRVCC_CAPABILITY_E;
        
        
        /** @desc    Data_Reference_Type
         *  Data_Reference_Type used only for not allowed SNR messages
         */
        modulepar Data_Reference_Type PX_Data_Reference_Type_NotificationNotAllowed := STN_SR_E;
        
        group DiameterTimers {
        group DiameterTimers {


            /** @desc   float for TWait default value for waiting an expiration period (cp. TP_SH_HSS_SN_07)
            /** @desc   float for TWait default value for waiting an expiration period (cp. TP_SH_HSS_SN_07)
+23 −0
Original line number Original line Diff line number Diff line
@@ -124,6 +124,29 @@ module DiameterShDh_Steps {
               m_user_Identity_dummy
               m_user_Identity_dummy
            }
            }
        } // End function f_Select_UserIdentity
        } // End function f_Select_UserIdentity

        /* Function f_Select_NotRelatedUserIdentity
        * @desc: Returns User-Identity AVP based on PIXIT parameter PX_USER_IDENTITY
        */
        function f_Select_NotRelatedUserIdentity(in integer p_userIdentity) return User_Identity_AVP {
            if (p_userIdentity == 1)
            {
               return
               m_specific_user_Identity(m_public_user_identity(PX_NotRelatedPrivateIdentity))
            }
            if (p_userIdentity == 2)
            {
               return
               m_msisdn_user_Identity(m_MSISDN_user_identity(f_char_to_BCD(PX_NotRelatedPrivateIdentity_MSISDN)))
            }
            // Note: The above list can be augmented with additional User-Identity AVP variants.
            else
            {
               log("*** " & __SCOPE__ & ": ERROR: No valid User-Identity was chosen. ***");
               return
               m_user_Identity_dummy
            }
        } // End function f_Select_NotRelatedUserIdentity
    } // End of group GlobalSteps 
    } // End of group GlobalSteps 
 
 
    group Preambles {
    group Preambles {
+437 −207

File changed.

Preview size limit exceeded, changes collapsed.

+91 −4
Original line number Original line Diff line number Diff line
@@ -147,14 +147,16 @@ module DiameterShDh_Templates {
                template (value) Server_Name_AVP m_server_name(
                template (value) Server_Name_AVP m_server_name(
                                                               in template (value) UTF8String p_aVP_Data
                                                               in template (value) UTF8String p_aVP_Data
                ) := {
                ) := {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_server_Name_AVP_Code, 4, c_vendId3gpp),
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_server_Name_AVP_Code,
                                                        lengthof(p_aVP_Data),
                                                        c_vendId3gpp),
                    aVP_Data   := p_aVP_Data
                    aVP_Data   := p_aVP_Data
                }
                }
                
                
                template (value) DSAI_Tag_AVP m_dSAI_Tag_AVP(
                template (value) DSAI_Tag_AVP m_dSAI_Tag_AVP(
                                                               in template (value) octetstring p_aVP_Data
                                                               in template (value) octetstring p_aVP_Data
                ) := {
                ) := {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_dSAI_Tag_AVP_Code, 4, c_vendId3gpp),
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_dSAI_Tag_AVP_Code, lengthof(p_aVP_Data), c_vendId3gpp),
                    aVP_Data   := p_aVP_Data
                    aVP_Data   := p_aVP_Data
                }
                }
                
                
@@ -184,6 +186,24 @@ module DiameterShDh_Templates {
                    aVP_Data   := p_aVP_Data
                    aVP_Data   := p_aVP_Data
                }
                }


                template (value) Current_Location_AVP m_current_location(
                                                                   in template (value) Current_Location_Type p_aVP_Data) := {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_current_Location_AVP_Code, 4, c_vendId3gpp),
                    aVP_Data   := p_aVP_Data
                }

                template (value) Requested_Domain_AVP m_requested_domain(
                                                                   in template (value) Request_Domain_Type p_aVP_Data) := {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_requested_Domain_AVP_Code, 4, c_vendId3gpp),
                    aVP_Data   := p_aVP_Data
                }

                template (value) DSAI_Tag_AVP m_dsai_tag(
                                                         in template (value) octetstring p_aVP_Data) := {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_dSAI_Tag_AVP_Code, lengthof(p_aVP_Data), c_vendId3gpp),
                    aVP_Data   := p_aVP_Data
                }
                
            } // End of group sendingTemplatesForAVPs
            } // End of group sendingTemplatesForAVPs
            
            
            group receivingTemplatesForAVPs{
            group receivingTemplatesForAVPs{
@@ -588,6 +608,66 @@ module DiameterShDh_Templates {
                    data_Reference                  := {p_data_Reference}
                    data_Reference                  := {p_data_Reference}
                } // End of template md_udrBodyAvps_initial_filter_criteria
                } // End of template md_udrBodyAvps_initial_filter_criteria
                
                
                /**
                 * @desc Send template for UDR message body
                 */
                template (value) UDR_Body_AVP md_udrBodyAvps_location_information(
                                                                                     template (value) Origin_Host_AVP p_origin_Host,
                                                                                     template (value) Origin_Realm_AVP p_origin_Realm,
                                                                                     template (value) Destination_Realm_AVP p_destination_Realm,
                                                                                     template (value) User_Identity_AVP p_user_Identity := m_user_Identity_dummy,
                                                                                     template (value) Data_Reference_AVP p_data_Reference := m_data_Reference_dummy
                ) modifies m_UDR_Body_dummy := {
                    vendor_Specific_Application_Id  := m_vendor_Specific_Appl_Id_Sh,
                    origin_Host                     := p_origin_Host,
                    origin_Realm                    := p_origin_Realm,
                    destination_Realm               := p_destination_Realm,
                    user_Identity                   := p_user_Identity,
                    requested_Domain                := m_requested_domain(PS_DOMAIN_E),
                    current_Location                := m_current_location(DO_NOT_NEED_INITIATE_ACTIVATE_LOCATION_RETRIEVAL_E),
                    data_Reference                  := {p_data_Reference}
                } // End of template md_udrBodyAvps_location_information
                
                /**
                 * @desc Send template for UDR message body
                 */
                template (value) UDR_Body_AVP md_udrBodyAvps_user_state(
                                                                                     template (value) Origin_Host_AVP p_origin_Host,
                                                                                     template (value) Origin_Realm_AVP p_origin_Realm,
                                                                                     template (value) Destination_Realm_AVP p_destination_Realm,
                                                                                     template (value) User_Identity_AVP p_user_Identity := m_user_Identity_dummy,
                                                                                     template (value) Data_Reference_AVP p_data_Reference := m_data_Reference_dummy
                ) modifies m_UDR_Body_dummy := {
                    vendor_Specific_Application_Id  := m_vendor_Specific_Appl_Id_Sh,
                    origin_Host                     := p_origin_Host,
                    origin_Realm                    := p_origin_Realm,
                    destination_Realm               := p_destination_Realm,
                    user_Identity                   := p_user_Identity,
                    requested_Domain                := m_requested_domain(PS_DOMAIN_E),
                    data_Reference                  := {p_data_Reference}
                } // End of template md_udrBodyAvps_user_state
                
                /**
                 * @desc Send template for UDR message body
                 */
                template (value) UDR_Body_AVP md_udrBodyAvps_dsai(
                                                                                     template (value) Origin_Host_AVP p_origin_Host,
                                                                                     template (value) Origin_Realm_AVP p_origin_Realm,
                                                                                     template (value) Destination_Realm_AVP p_destination_Realm,
                                                                                     template (value) User_Identity_AVP p_user_Identity := m_user_Identity_dummy,
                                                                                     template (value) Data_Reference_AVP p_data_Reference := m_data_Reference_dummy,
                                                                                     template (value) Server_Name_AVP p_server_Name := m_server_name_dummy
                ) modifies m_UDR_Body_dummy := {
                    vendor_Specific_Application_Id  := m_vendor_Specific_Appl_Id_Sh,
                    origin_Host                     := p_origin_Host,
                    origin_Realm                    := p_origin_Realm,
                    destination_Realm               := p_destination_Realm,
                    user_Identity                   := p_user_Identity,
                    server_Name                     := p_server_Name,
                    dSAI_Tag                        := {m_dsai_tag('0101'O)},
                    data_Reference                  := {p_data_Reference}
                } // End of template md_udrBodyAvps_user_state
                
            } // End of group udr_msg
            } // End of group udr_msg
            
            
            group pnr_msg {
            group pnr_msg {
@@ -748,7 +828,7 @@ module DiameterShDh_Templates {
                                                             template (value) User_Identity_AVP p_user_Identity := m_user_Identity_dummy,
                                                             template (value) User_Identity_AVP p_user_Identity := m_user_Identity_dummy,
                                                             template (value) Subs_Req_Type_AVP p_subs_Req_Type := m_subs_Req_Type_dummy,
                                                             template (value) Subs_Req_Type_AVP p_subs_Req_Type := m_subs_Req_Type_dummy,
                                                             template (value) SNR_Body_AVP.data_Reference p_data_Referencelist := {m_data_Reference_dummy},
                                                             template (value) SNR_Body_AVP.data_Reference p_data_Referencelist := {m_data_Reference_dummy},
                                                             template (value) User_Name_AVP p_user_Name := m_user_Name_dummy
                                                             template User_Name_AVP p_user_Name := m_user_Name_dummy
                                                             
                                                             
                ) modifies m_SNR_Body_dummy := {
                ) modifies m_SNR_Body_dummy := {
                    vendor_Specific_Application_Id := m_vendor_Specific_Appl_Id_Sh,//required only in TS129 229
                    vendor_Specific_Application_Id := m_vendor_Specific_Appl_Id_Sh,//required only in TS129 229
@@ -778,7 +858,7 @@ module DiameterShDh_Templates {
                    destination_Realm := p_destination_Realm,
                    destination_Realm := p_destination_Realm,
                    user_Identity := p_user_Identity,
                    user_Identity := p_user_Identity,
                    data_Reference := {p_data_Reference},
                    data_Reference := {p_data_Reference},
                    dSAI_Tag := superset(p_dsai_tag)
                    dSAI_Tag := {p_dsai_tag}
                
                
                } // End of template md_snrBodyAvps_DSAI_Tag
                } // End of template md_snrBodyAvps_DSAI_Tag


@@ -806,6 +886,9 @@ module DiameterShDh_Templates {
                                                             template (value) Origin_Realm_AVP p_origin_Realm,
                                                             template (value) Origin_Realm_AVP p_origin_Realm,
                                                             template (value) Destination_Realm_AVP p_destination_Realm,
                                                             template (value) Destination_Realm_AVP p_destination_Realm,
                                                             template (value) User_Identity_AVP p_user_Identity := m_user_Identity_dummy,
                                                             template (value) User_Identity_AVP p_user_Identity := m_user_Identity_dummy,
                                                             template (value) Subs_Req_Type_AVP p_subs_Req_Type := m_subs_Req_Type_dummy,
                                                             template (value) Data_Reference_AVP p_data_Reference := m_data_Reference_dummy,
                                                             template User_Name_AVP p_user_Name := m_user_Name_dummy,
                                                             template (value) SNR_Body_AVP.service_Indication p_service_Indication
                                                             template (value) SNR_Body_AVP.service_Indication p_service_Indication
                ) modifies m_SNR_Body_dummy := {
                ) modifies m_SNR_Body_dummy := {
                    vendor_Specific_Application_Id := m_vendor_Specific_Appl_Id_Sh,//required only in TS129 229
                    vendor_Specific_Application_Id := m_vendor_Specific_Appl_Id_Sh,//required only in TS129 229
@@ -814,6 +897,9 @@ module DiameterShDh_Templates {
                    origin_Realm := p_origin_Realm,
                    origin_Realm := p_origin_Realm,
                    destination_Realm := p_destination_Realm,
                    destination_Realm := p_destination_Realm,
                    user_Identity := p_user_Identity,
                    user_Identity := p_user_Identity,
                    subs_Req_Type := p_subs_Req_Type,
                    data_Reference := {p_data_Reference},
                    user_Name := p_user_Name,
                    service_Indication := p_service_Indication
                    service_Indication := p_service_Indication
                
                
                } // End of template md_snrBodyAvps_service_IndicationList 
                } // End of template md_snrBodyAvps_service_IndicationList 
@@ -1495,6 +1581,7 @@ module DiameterShDh_Templates {
                template (present) SNA_Body_AVP mdw_snaBodyAvps_experimental_result(
                template (present) SNA_Body_AVP mdw_snaBodyAvps_experimental_result(
                                                                template Experimental_Result_AVP p_experimentalResult
                                                                template Experimental_Result_AVP p_experimentalResult
                ) modifies mw_SNA_Body_dummy := {
                ) modifies mw_SNA_Body_dummy := {
                    result_Code := *,
                    experimental_Result         := p_experimentalResult
                    experimental_Result         := p_experimentalResult
                } // End of template mdw_snaBodyAvps_experimental_result    
                } // End of template mdw_snaBodyAvps_experimental_result    
                
                
+3 −0
Original line number Original line Diff line number Diff line
@@ -2596,6 +2596,9 @@ module DiameterShDh_TestCases {
                        stop;
                        stop;
                    }
                    }
            
            
                    // Test component configuration
                    f_cf_1Sh_asUp(v_diameterSh_as);
                    
                    // Start
                    // Start
                    v_diameterSh_as.start(f_TC_SH_HSS_PU_21());
                    v_diameterSh_as.start(f_TC_SH_HSS_PU_21());