Commit 258ce4fd authored by ulrichst's avatar ulrichst
Browse files

added TC TP_SH_HSS_SN_07

parent 4e6adb7b
Loading
Loading
Loading
Loading
+32 −1
Original line number Diff line number Diff line
@@ -1927,7 +1927,38 @@ module DiameterShDh_TCFunctions {
                    f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); 
                    log("*** " & __SCOPE__ & ": INFO: Preamble done. ***");

                    //TODO TestBody
                    timer t1;
                    f_send_SNR(
                              md_sNR(
                                      vc_sessionId,
                                                md_snrBodyAvps_Expiry_Time(
                                                     vc_originHost,                 // containing an Origin-Host AVP
                                                     vc_originRealm,                // containing an Origin-Realm AVP
                                                     vc_destinationRealm,           // containing a Destination-Realm AVP
                                                     m_msisdn_user_Identity (
                                                             m_MSISDN_user_identity(char2oct(PX_PublicUserIdentity))
                                                     ),
                                                     m_data_Reference(DSAI_E),     // containing a Data-Reference AVP
                                                     m_expiry_Time_AVP(120)         // indicating not matching DSAI
                                                     
                               ))
                    );

					t1.start (120.0);
					
                    f_awaiting_SNA(
                              mdw_sNA( 
                                      vc_sessionId,                       // containing a Session-ID AVP
                                      mdw_snaBodyExpiryTimeAvps(
                                          mw_resultCode(DIAMETER_SUCCESS_E),
                                          vc_originHost_IUT,              // containing an Origin-Host AVP
                                          vc_originRealm_IUT,
                                          mw_expiry_Time_AVP(120) 
                              ))
	 
                    );
                    
                    t1.timeout;

                    f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); 

+47 −0
Original line number Diff line number Diff line
@@ -147,6 +147,13 @@ module DiameterShDh_Templates {
                    aVP_Data   := p_aVP_Data
                }
                
                 template (value) Expiry_Time_AVP m_expiry_Time_AVP(
                                                               in template (value) Time p_aVP_Data
                ) := {
                    aVP_Header := m_aVP_HeaderVid_Mbit1(c_expiry_Time_AVP_Code, 4, c_vendId3gpp),
                    aVP_Data   := p_aVP_Data
                }               
                
                template (value) Redirect_Host_AVP m_redirect_host(
                                                                   in template (value) Diameter_Identity p_aVP_Data
                ) := {
@@ -178,6 +185,13 @@ module DiameterShDh_Templates {
                    aVP_Type := *
                }
                
                template (value) Expiry_Time_AVP mw_expiry_Time_AVP(
                                                    in template (present) Time p_aVP_Data
                ) := {
                   aVP_Header := m_aVP_HeaderVid_Mbit1(c_expiry_Time_AVP_Code, 4, c_vendId3gpp),
                   aVP_Data   := p_aVP_Data
                }    
                
            } // End of group receivingTemplatesForAVPs
            
        } // End of group SpecificAVPHeaders
@@ -399,6 +413,26 @@ module DiameterShDh_Templates {
                
                } // End of template md_snrBodyAvps_DSAI_Tag
                
                template (value) SNR_Body_AVP md_snrBodyAvps_Expiry_Time(
                                                             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) Expiry_Time_AVP p_expiry_Time
                                                             
                ) modifies m_SNR_Body_dummy := {
                    vendor_Specific_Application_Id := m_vendor_Specific_Appl_Id_Sh,//required only in TS129 229
                    auth_Session_State := m_auth_Session_State,
                    origin_Host := p_origin_Host,
                    origin_Realm := p_origin_Realm,
                    destination_Realm := p_destination_Realm,
                    user_Identity := p_user_Identity,
                    data_Reference := {p_data_Reference},
                    expiry_Time := p_expiry_Time
                
                } // End of template md_snrBodyAvps_DSAI_Tag
	            
	        } // End of group snr_msg
            
        } // End of group Sh_request_message_templates_send 
@@ -971,6 +1005,19 @@ module DiameterShDh_Templates {
                    origin_Realm                := p_originRealm
                } // End of template mdw_snaBodyAvps
                
                template (present) SNA_Body_AVP mdw_snaBodyExpiryTimeAvps(
                                                                template Result_Code_AVP              p_resultCode,
                                                                template (present) Origin_Host_AVP    p_originHost,
                                                                template (present) Origin_Realm_AVP   p_originRealm,
                                                                template (present) Expiry_Time_AVP    p_expiry_Time
                                                                
                ) modifies mw_SNA_Body_dummy := {
                    result_Code                 := p_resultCode,
                    origin_Host                 := p_originHost,
                    origin_Realm                := p_originRealm,
                    expiry_Time                 := p_expiry_Time
                } // End of template mdw_snaBodyExpiryTimeAvps                

                template (present) SNA_Body_AVP mdw_snaBodyAvps_experimental_result(
                                                                template Experimental_Result_AVP p_experimentalResult
                ) modifies mw_SNA_Body_dummy := {
+52 −1
Original line number Diff line number Diff line
@@ -2835,6 +2835,57 @@ module DiameterShDh_TestCases {
            
                 } // End of testcase TP_SH_HSS_SN_06   
                 
                 
                /**
                 * @desc Verify that the IUT, if the Data-Reference is DSAI (19) for the Public Identity and 
                 * there is no instance of DSAI matching the DSAI-Tag contained in the Sh-Subs-Notif command, 
                 * returns an SN-Answer with the appropriate experimental result code.
                 * 
                 * <pre>
                 * Pics Selection: PICS_HSS_IUT
                 * Initial conditions: 
                 *     with {
                 *        
                 *     }
                 * Expected behaviour:
                 *    Ensure that the IUT
	             *       on receipt of an SN-Request
		         *           containing an Expiry-Time AVP
	             *       sends an SN-Answer
		         *           containing an Expiry-Time AVP
			     *               indicating absolute expiration time
	             *       not send a PN-Request after time expiration.



                 * </pre>
                 * 
                 * @version    0.0.7
                 * @see        ETSI TS 103 571-2 TP_SH_HSS_SN_07
                 */
                 testcase TP_SH_HSS_SN_07() runs on DiameterShDh system TestAdapter { 
                    // Local variables
                    var DiameterShDh v_diameterSh_as; 
               
                    // Test control
                    if (not PICS_AS_IUT) {
                        log("*** " & __SCOPE__ & ": ERROR: 'PICS_HSS_IUT' required for executing the TC. ***"); 
                        stop;
                    }
                    
                    // Test component configuration
                    f_cf_1Sh_asUp(v_diameterSh_as);
        
                    // Start
                    v_diameterSh_as.start(f_TC_SH_HSS_SN_07()); 
            
                    // synchronize PTC on 1 sychronization points
                    f_serverSyncNClientsAndStop(f_NrofComps(), {c_prDone, c_tbDone, c_poDone});
            
                    f_cf_1Sh_asDown(v_diameterSh_as);
            
                 } // End of testcase TP_SH_HSS_SN_07               
    
            } // End of group TP_HSSRole_SubscriptionNofification 
            
            group TP_HSSRole_PushNofification {