Commit 2f415602 authored by pintar's avatar pintar
Browse files

No commit message

No commit message
parent e3c5362f
Loading
Loading
Loading
Loading
+987 −0

File added.

Preview size limit exceeded, changes collapsed.

+121 −0
Original line number Diff line number Diff line
/*
 *	@author 	STF 366
 *  @version    $Id$
 *	@desc		This module contains the PIXIT parameters 
 */

module SipIsup_PIXITS {

	import from LibCommon_BasicTypesAndValues all;
	import from LibCommon_DataStrings all;
	
	import from LibSip_SIPTypesAndValues all;

	/*
	** @remark	Reference: XXX
	** @desc	What is the local receive policy for SIP?
	*			Value of PX_LOCAL_POLICY
	*			1: receive no cause due to local policy, 2: receive cause #31 due to local policy
	*/
	modulepar {

	/** @desc	integer for testcase variant according to table entry in table to test purpose description, if present
	*/
	integer PX_TC_VA:=1;

	/** @desc	Bitstring[5] for Bearer Capability Information Transfer Capability used for mapping between 
	 *          ISUP: Bearer Capability information element within USI parameter and 
	 *          SIP: SDP offer or PSTN XML BearerCapability 
	 *          Used in TC_301_014, TC_301_015 and TC_301_023
	*/
	Bit5 PX_BearerCapabilityInformationTransferCapability:='00000'B;

	/** @desc  Bitstring[5] for Bearer Capability Information Transfer Capability used for mapping between 
	*          ISUP: Bearer Capability information element within ATP parameter and 
	*          SIP: PSTN XML BearerCapability
	*          Used in TC_
	*/
	Bit5 PX_BearerCapabilityInformationTransferCapability2:='00000'B;

	/** @desc	Bitstring[7] for High layer characteristics identification used for mapping between 
	 *          ISUP: High layer compatibility information element within ATP or UTSI parameter and 
	 *          SIP: PSTN XML HighLayerCompatibility
	 *          Used in TC_105_012, TC_105_013, TC_106_006, TC_106_007, TC_107_008, TC_107_009,
	 *          TC_301_031, TC_301_032 and TC_301_033
	*/
	Bit7 PX_HighLayerCharacteristicsIdentification:='0000001'B;

    /** @desc	Bitstring[7] for 2nd High layer characteristics identification used for mapping between 
     *          ISUP: High layer compatibility information element within ATP parameter and 
     *          SIP: PSTN XML HighLayerCompatibility
     *          Used in TC104_015, TC_104_016 and TC_301_033 
    */
    Bit7 PX_HighLayerCharacteristicsIdentification2:='0000001'B;
 
 	/** @desc	Bitstring[5] for Low layer Information Transfer Capability used for mapping between 
	 *          ISUP: Low layer compatibility information element within ATP parameter and 
	 *          SIP: PSTN XML LowLayerCompatibility
	 *          Used in TC_104_018, TC_104_019, TC_106_008, TC_107_010 and TC_301_030
	*/
	Bit5 PX_LowLayerInformationTransferCapability:='00000'B;

	/** @desc	Bitstring[7] for Progress description used for mapping between 
	 *          ISUP: Progress indicator information element within ATP parameter and 
	 *          SIP: PSTN XML ProgressIndicator
	 *          Used in TC_104_008, TC_104_020, TC_105_006, TC_107_004 and TC_301_029
	*/

	Bit7 PX_ProgressIndicator:='0000001'B;

	/** @desc	Integer for Cause value used for mapping between 
	 *          ISUP: Cause value within CAUI parameter and 
	 *          SIP: Q.850 cause value in Reason header
	 *          Used in TC_110_001 and TC_110_002
	*/

	integer PX_CauseValue:=16;

	/** @desc	float default value for Ti/w1 (500 ms)
	*/
	float        PX_SIP_Tiw1 := 0.5;

	/** @desc	float default value for Ti/w2 (500 ms)
	*/
	float        PX_SIP_Tiw2 := 0.5;
	
    /** @desc	NameAddr default value for From field 
     * 			used in groupe 501
    */
	NameAddr	PX_SIP_NameAddr_From := {displayName := omit, 	 			// optional charstring
										addrSpec :=	{	  
                                            		scheme := c_sipScheme,  			// contains "sip"
                                            		userInfo := {userOrTelephoneSubscriber:= "+491234567", password:=omit},
                                            		hostPort := {host := "ims.net", portField :=omit},
                                            		urlParameters := omit,
                                            		headers := omit}
										}
	/** @desc	NameAddr default value for PAsserted(with sip scheme) field 
	 * 			used in groupe 501
	*/
	NameAddr	PX_SIP_NameAddr_PAsserted := {displayName := omit, 	 			// optional charstring
										addrSpec :=	{	  
                                                    scheme := c_sipScheme,  			// contains "sip"
                                                    userInfo := {userOrTelephoneSubscriber:= "+491234567", password:=omit},
                                                    hostPort := {host := "ims.net", portField :=omit},
                                                    urlParameters := omit,
                                                    headers := omit}
										}
    /** @desc	NameAddr default value for PAsserted2(with tel scheme) field 
     * 			used in groupe 501 
	*/
	NameAddr	PX_SIP_NameAddr_PAsserted2 := {displayName := omit, 	 			// optional charstring
										addrSpec :=	{	  
													scheme := c_telScheme,  			// contains "tel"
													userInfo := {userOrTelephoneSubscriber:= "+491234567", password:=omit},
													hostPort := omit,
													urlParameters := omit,
													headers := omit}
										}
	}

}// end module SipIsup_PIXITS
 No newline at end of file
+46 −0
Original line number Diff line number Diff line
/*
 *	@author 	STF 368
 *  @version    $Id$
 *	@desc		This module provides the TC functions used by the test component 
 *              for SIP side of the SUT.
 *				Supplementary services:
 *				186 005 - 2 TIP/TIR
 *				186 016 - 2 CUG
 *				186 017 - 2 ACR/CB
 *				186 018 - 2 MCID 
 */
module SipIsup_SS_TCFunctions {
	//LibCommon
	import from LibCommon_Sync all;
	import from LibCommon_VerdictControl all;
	import from LibCommon_AbstractData all;
	import from LibCommon_DataStrings all;
	//LibSip
	import from LibSip_SIPTypesAndValues all;
	import from LibSip_SDPTypes all;
	import from LibSip_Templates all;
	import from LibSip_Steps all;
	import from LibSip_Interface all;
	import from LibSip_PIXITS all;
	import from LibSip_XMLTypes all;
	//LibIms
	import from LibIms_Templates all;
	import from LibIms_Steps all;	
	import from LibIms_SIPTypesAndValues all;
	import from LibIms_Interface all;
	//IsupAts
	import from SipIsup_ISUP_ModuleParams all; // for timer values e.g. PX: T7, T9
	import from SipIsup_PIXITS all;
	import from SipIsup_ISUP_Constants all;
	
    //Type to adress the IUT to send it message
    //type Address address;
    type record address
    {
      //HostPort
      charstring 	        host optional,        // hostname, IPv4 or IPv6
      integer             portField optional    // represented as an integer
    }with { encode "SIPCodec" }


} // end module SipIsup_SIP_TCFunctions
+206 −0
Original line number Diff line number Diff line
/*
 *	@author 	STF 368
 *  @version 	$Id$
 *	@desc		This module contains functions which implement the 
 *              configuration of the SUT adapter and mapping of test
 *              components for establishing and tearing down different 
 *              test configurations.
 *  
 */
 module SipIsup_TestConfiguration {

	//LibCommon
	import from LibCommon_Sync all ;
	import from LibCommon_VerdictControl all;
	//AtsSipIsup
	import from SipIsup_TestSystem all;
	import from SipIsup_ISUP_ModuleParams all;
	import from SipIsup_ISUP_ParamTypes all;
	import from SipIsup_ISUP_MsgTypes all;
	//LibSip
	import from LibSip_SIPTypesAndValues all;
	import from LibSip_Interface all;
 	//LibIms
	import from LibIms_SIPTypesAndValues all;
	import from LibIms_Interface all;

	group auxSipFunction {
		
		/*
		** @desc f_IncCSeq returns an input parameter incremented by 1000
		** reason is to run the next testcase with a higher CSeq value
		*/
		function f_IncCSeq(inout CSeq p_cSeq) 
			runs on ServerSyncComp 
			{	p_cSeq.seqNumber := p_cSeq.seqNumber + 1000;
				return
			}; 
		// end f_IncCSeq
		
	}//end group auxSipFunction
	
	group syncCommands {
		const charstring c_syncSip_Isup := "syncSipIsup";
	}//end group syncCommands
	
	group cfUp {
	
		/**
		* 
		* @desc Creates test configuration of Ims and Isup component
		* @param p_imsComponen		    ims  component
		* @param p_isupBiccComponent	isup component
		*/
		function f_cf_imsIsupUp(	out ImsComponent      p_imsComponent, 
							out IsupBiccComponent p_isupBiccComponent)
		runs on ServerSyncComp {
			//Variables
			var FncRetCode v_ret := e_success;
			//Create
			p_imsComponent := ImsComponent.create ;
			p_isupBiccComponent := IsupBiccComponent.create ;
			//Connect
			connect(p_imsComponent:syncPort, self:syncPort) ;
			map(p_imsComponent:SIPP, system:IMSCN1);		// Init test Configuration
			// TODO check if opPort will be used
			//if (PX_SIP_CheckConversation) 
			//	{map(p_imsComponent:opPort, system:opPortS);} // Init test Configuration			
			connect(p_isupBiccComponent:syncPort, self:syncPort) ;
			//Map
			if (PX_IsupBicc_CheckConversation or PX_IsupBicc_CheckRinging) 
				{map(p_isupBiccComponent:opPort_IsupBicc, system:opPortS_IsupBicc);} // Init test Configuration			
//			note-axr: workaround to avoid enumerated PIXIT parameter
//					 if (PX_ISUP_IsupOrBicc == selectIsup) {
					 if (PX_ISUP_Isup) {
				map(p_isupBiccComponent:IsupBiccP, system:atm);
			}
			else {
				map(p_isupBiccComponent:IsupBiccP, system:atm); 
			}
			//map(p_sipComponent:SIPP, system:UDP1);
			
			f_setVerdict(v_ret);
		}//end f_cf_imsIsupUp

	}//end group cfUp
	
	group cfDown {

		/**
		* 
		* @desc Deletes test configuration of Ims and Isup component
		* @param p_imsComponen		    ims  component
		* @param p_isupBiccComponent	isup component
		*/
		function f_cf_imsIsupDown(	in ImsComponent p_imsComponent, 
									in IsupBiccComponent p_isupBiccComponent)
		runs on ServerSyncComp {
   			var FncRetCode v_ret;
   			f_serverWaitForAllClientsToStop();
			//Variables
			v_ret := e_success;
			//Disconnect
			disconnect(p_imsComponent:syncPort, self:syncPort) ;
			disconnect(p_isupBiccComponent:syncPort, self:syncPort) ;
			//Unmap
// note-axr: workaround to avoid enumerated PIXIT parameter
//			if (PX_ISUP_IsupOrBicc == selectIsup) {
			if (PX_ISUP_Isup) {
				unmap(p_isupBiccComponent:IsupBiccP, system:atm ); // IsupP
			}
			else {
				unmap(p_isupBiccComponent:IsupBiccP, system:atm); // BiccP
			}
			unmap(p_imsComponent:SIPP, system:IMSCN1);
			// TODO check if opPort will be used
			//if (PX_SIP_CheckConversation) 
			//	{unmap(p_imsComponent:opPort, system:opPortS);}		
			if (PX_IsupBicc_CheckConversation or PX_IsupBicc_CheckRinging) 
				{unmap(p_isupBiccComponent:opPort_IsupBicc, system:opPortS_IsupBicc);} // Init test Configuration			

		}//end f_cf_imsIsupDown
	
	group syncNoStop // Same functions as in LibCommon but without call of f_serverWaitForAllClientsToStop()
	{
	/* @desc	Implements synchronization of client from server side
	 *          on one or more synchronization points.
	 *			If problem occurs, then server sends STOP to client.
	 *			Waits for PX_TSYNC_TIME_LIMIT to let client
	 *			finish executing behavior until this
	 *			synchronization point.
	 * @remark	The use of this function requires prior connection  of
	 *			the server sync ports!
	 * @param   p_syncPointIds list of synchronization point name/ids
	 * @return  execution status
	 */
	function f_serverSync1Client( in SyncPointList p_syncPointIds )
	runs on ServerSyncComp {
		var integer i, v_noOfSyncIds := sizeof(p_syncPointIds);
		for ( i := 0; i < v_noOfSyncIds; i := i+1 ) {
			f_serverSyncClientsTimed(1,p_syncPointIds[i], PX_TSYNC_TIME_LIMIT);
		}
	}
		
	/* @desc	Implements synchronization of 2 clients from server side
	 *          on one or more synchronization points.
	 *			If problem occurs, then server sends STOP to all clients.
	 *			Waits for PX_TSYNC_TIME_LIMIT to let clients
	 *			finish executing their behavior until this
	 *			synchronization point.
	 * @remark	The use of this function requires prior connection  of
	 *			the server sync ports!
	 * @param   p_syncPointIds list of synchronization point name/ids
	 * @return  execution status
	 */
	function f_serverSync2Clients( in SyncPointList p_syncPointIds )
	runs on ServerSyncComp {
		var integer i, v_noOfSyncIds := sizeof(p_syncPointIds);
		for ( i := 0; i < v_noOfSyncIds; i := i+1 ) {
			f_serverSyncClientsTimed(2,p_syncPointIds[i], PX_TSYNC_TIME_LIMIT);
		}
	}
	
	/* @desc	Implements synchronization of 3 clients from server side
	 *          on one or more synchronization points.
	 *			If problem occurs, then server sends STOP to all clients.
	 *			Waits for PX_TSYNC_TIME_LIMIT to let clients
	 *			finish executing their behavior until this
	 *			synchronization point.
	 * @remark	The use of this function requires prior connection  of
	 *			the server sync ports!
	 * @param   p_syncPointIds list of synchronization point name/ids
	 * @return  execution status
	 */
	function f_serverSync3Clients( in SyncPointList p_syncPointIds )
	runs on ServerSyncComp {
		var integer i, v_noOfSyncIds := sizeof(p_syncPointIds);
		for ( i := 0; i < v_noOfSyncIds; i := i+1 ) {
			f_serverSyncClientsTimed(3,p_syncPointIds[i], PX_TSYNC_TIME_LIMIT);
		}
	}
		
	/* @desc	Implements synchronization of 4 clients from server side
	 *          on one or more synchronization points.
	 *			If problem occurs, then server sends STOP to all clients.
	 *			Waits for PX_TSYNC_TIME_LIMIT to let clients
	 *			finish executing their behavior until this
	 *			synchronization point.
	 * @remark	The use of this function requires prior connection  of
	 *			the server sync ports!
	 * @param   p_syncPointIds list of synchronization point name/ids
	 * @return  execution status
	 */
	function f_serverSync4Clients( in SyncPointList p_syncPointIds )
	runs on ServerSyncComp {
		var integer i, v_noOfSyncIds := sizeof(p_syncPointIds);
		for ( i := 0; i < v_noOfSyncIds; i := i+1 ) {
			f_serverSyncClientsTimed(4,p_syncPointIds[i], PX_TSYNC_TIME_LIMIT);
		}
	}
	} //end group syncNoStop

	} //end group cfDown

	
	
} // end module SipIsup_TestConfiguration
 No newline at end of file
+1627 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading