Commit e50f11c2 authored by schmitting's avatar schmitting
Browse files

No commit message

No commit message
parent 2dc1d56d
Loading
Loading
Loading
Loading
+987 −0

File added.

Preview size limit exceeded, changes collapsed.

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

module SipIsup_PIXITS {

	import from SipIsup_TypesAndValues all;

	/*
	** @remark	Reference: XXX
	** @desc	What is the local receive poilcy for SIP?
	*			Value of PX_STATUS_LINE
	*			1: receive no cause due to local policy, 2: receive cause #31 due to local policy
	*/
	modulepar {UInt2  PX_LOCAL_POLICY := 1;
	integer PX_CSeq_Start := 1;
	integer PX_Variant_i_Start := 1;
	integer PX_Variant_j_Start := 1;
	boolean PX_Variant_i_Inc := false;
	boolean PX_Variant_j_Inc := false;
	}



}// end module SipIsup_PIXITS
 No newline at end of file
+115 −0
Original line number Diff line number Diff line
/*
 *	@author 	STF 276
 *  @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_SIP_TypesAndConf all;
	//import from SipIsup_ISUP_Configuration all;
	import from SipIsup_ISUP_ModuleParams all;
	import from SipIsup_ISUP_ParamTypes all;
	import from SipIsup_ISUP_MsgTypes 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 loc_CSeq) 
			runs on ServerSyncComp 
			{	loc_CSeq.seqNumber := loc_CSeq.seqNumber + 1000;
				return
			}; 
		// end f_IncCSeq
		
	}//end group auxSipFunction
	
	group syncCommands {
		const charstring c_syncSip_Isup := "syncSipIsup";
	}//end group syncCommands
	
	group cf00 {
	
		/*
		** @desc Creates configuration of CF0)
		*/
		function f_cf00Up(	out SipComponent      p_sipComponent, 
							out IsupBiccComponent p_isupBiccComponent)
		runs on ServerSyncComp {
			//Variables
			var FncRetCode v_ret := e_success;
			//Create
			p_sipComponent := SipComponent.create ;
			p_isupBiccComponent := IsupBiccComponent.create ;
			//Connect
			connect(p_sipComponent:syncPort, self:syncPort) ;
			map(p_sipComponent:SIPP, system:UDP1);		// Init test Configuration
			if (PX_SIP_CheckConversation) 
				{map(p_sipComponent: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_cf00Up

	}//end group cf00
	
	group cfDown {

		/*
		** @desc Deletes configuration of CF03
		*/
		function f_cfTwoPtcsDown(	in SipComponent p_sipComponent, 
									in IsupBiccComponent p_isupBiccComponent)
		runs on ServerSyncComp {
			f_serverWaitForAllClientsToStop();
			//Variables
			var FncRetCode v_ret := e_success;
			//Disconnect
			disconnect(p_sipComponent: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_sipComponent:SIPP, system:UDP1);
			if (PX_SIP_CheckConversation) 
				{unmap(p_sipComponent:opPort, system:opPortS);}		
			if (PX_IsupBicc_CheckConversation or PX_IsupBicc_CheckRinging) 
				{unmap(p_isupBiccComponent:opPort_IsupBicc, system:opPortS_IsupBicc);} // Init test Configuration			

		}//end f_cfTwoPtcsDown

	} //end group cfDown

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

File added.

Preview size limit exceeded, changes collapsed.

+166 −0
Original line number Diff line number Diff line
/*
 *	@author 	STF 276
 *  @version 	$Id$
 *	@desc		Specifies component types used by the IPv6 ATS.
 *              Definitions are based on component type definitions
 *              from IPv6, SCOP and common synchronization libraries.
 *
 */
 module SipIsup_TestSystem {

	//LibCommon
	import from LibCommon_Sync all;
	import from LibCommon_AbstractData all;
	import from LibCommon_Time all;
	import from LibCommon_BasicTypesAndValues all;
	import from LibCommon_DataStrings all;
	import from LibCommon_TextStrings all;

	//AtsSip
	import from SipIsup_SIP_TypesAndConf all;
	//AtsIsup
	import from SipIsup_ISUP_ModuleParams all;
	import from SipIsup_ISUP_ParamTypes all;
	import from SipIsup_ISUP_MsgTypes all;
	
	/*
	** @desc  The test system interface
	*/
	type component TestAdapter {
		port IsupBiccPort atm;
		port SipPort UDP1, UDP2, UDP3, TCP1, TCP2, TCP3;
		port operatorPort opPortS;
		port operatorPort_IsupBicc opPortS_IsupBicc;
	}

	
    //type component SipComponent is defined in SipIsup_SIP_TypesAndConf

 	 group CMTypes
    {
      type charstring CM_Message;
    } // end group CMTypes


	group SystemConfiguration
	{
  		group TestComponents
  		{
    		group TestSystemInterfaces
    		{
      			type component IsupBiccInterfaces
      			{
        			port IsupBiccPort IsupP; // Port on the test system used when ISUP signalling is used.
        			port IsupBiccPort BiccP; // Port on the test system used when BICC signalling is used.
      			}
    		} // end Group TestSystemInterfaces
    
    		group TestAbstractComponents
    		{
      
      			type component IsupBiccComponent
      			{
        			// general variables
        			// current address to send TCP/UDP messages
        			// var address	sent_label :=	{host := PX_IUT_IPADDR, portField := PX_IUT_PORT};

        			// current address to send UDP multicast messages

				     // general timers
        			timer TWait := PX_ISUP_TWAIT;
        			timer TAck := PX_ISUP_TAC;
         			timer TNoAc := PX_ISUP_TNOAC;
        			timer TSync := PX_ISUP_TSYNC;

					// Timers for delaying messages to be transmitted, to simulate realistic response times to the SUT 
					timer TDelay_ACM  := PX_TDelay_ACM;
					timer TDelay_ANM  := PX_TDelay_ANM;
					timer TDelay_APM  := PX_TDelay_APM;
					timer TDelay_CGB  := PX_TDelay_CGB;
					timer TDelay_CON  := PX_TDelay_CON;
        			timer TDelay_COT  := PX_TDelay_COT;
        			timer TDelay_CPG  := PX_TDelay_CPG;
        			timer TDelay_FAC  := PX_TDelay_FAC;
        			timer TDelay_FAR  := PX_TDelay_FAR;
        			timer TDelay_GRS  := PX_TDelay_GRS;
        			timer TDelay_IDR  := PX_TDelay_IDR;
        			timer TDelay_LOP  := PX_TDelay_LOP;
        			timer TDelay_REL  := PX_TDelay_REL;
        			timer TDelay_RES  := PX_TDelay_RES;
        			timer TDelay_RLC  := PX_TDelay_RLC;
        			timer TDelay_RSC  := PX_TDelay_RSC;
        			timer TDelay_SAM  := PX_TDelay_SAM;
        			timer TDelay_SUS  := PX_TDelay_SUS;
        			timer TDelay_UNKNOWN  := PX_TDelay_UNKNOWN;
					timer ProtocolTimer;

        			port IsupBiccPort IsupBiccP;
        			port Coordination cpA;
        			port Coordination cpB;
        
					// parts needed for Client/SelfSyncComp type compatibility
					var StringStack v_stateStack:= c_initStringStack;
					var Bit12 v_CircuitIdentityCode1;
					var CallInstanceCode v_CallInstanceCode1;
					var Bit12 v_CircuitIdentityCode2;
					var CallInstanceCode v_CallInstanceCode2;
					var Bit12 v_CircuitIdentityCodeDef;
					var CallInstanceCode v_CallInstanceCodeDef;
					var Bit4 v_SLS;
					var Bit4 v_SLS2;

					//bearer states associated with cic1 and cic2: 0: not setup; 1: setup reuested; 
						//2: release requested; 3: setup
					var integer v_ISUP_BearerState1; //state associated with cic1
					var integer v_ISUP_BearerState2; //state associated with cic2
					var boolean v_ISUP_inTestBody;
					var boolean v_ACM_expected1; // First IAM sent, ACM pending, if true
					var boolean v_ACM_expected2; // Second IAM sent, ACM pending, if true

        			var default v_Default;// Generic default variable, used for activation

					var ISUP_BICC_MSG_ind v_IAM_r;// to store received IAM message and extract values
                    var ISUP_BICC_MSG_ind v_ACM_r; // to store a received ACM message and extract values
                    var ISUP_BICC_MSG_ind v_ANY_r; // to store a received any message and extract values

					port SyncPort syncSendPort;
					port SyncPort syncPort;
					port operatorPort_IsupBicc opPort_IsupBicc;
					timer tc_sync := PX_ISUP_TSYNC_TIME_LIMIT;

    			}// component IsupBiccComponent

  			}// end Group TestAbstractComponents
  		
		}// end group TestComponents

  		group Ports
  		{
 //used for communication with the operator

		type port operatorPort_IsupBicc procedure {inout s_IsupBicc_conversation; inout s_IsupBicc_ringing};
   		type port IsupBiccPort message
    		{
				out ISUP_BICC_MSG_req;       /* ASP used to send an ISUP/BICC message */
				in  ISUP_BICC_MSG_ind;        /* ASP used to receive an ISUP/BICC message */
				out InitializeIsupBicc_req;  /* ASP used to Initialize the test system. */
				in  InitializeIsupBicc_cnf;   /* Answer whether all necessary TS initializations have been successfully performed. The result can be positive or negative. The result will be positive only if the TS is able to send and recieve messages at the SIP- and the ISUP/BICC-interface of the SUT. */
				out BearerSetup_req;         /* For BICC: request TS to setup the bearer connection between TS and SUT. */
				in  BearerSetup_acc;          /* For BICC: answer to BearerSetup_req. The answer can be positive (bearer connection setup successful) or negative (bearer connection setup failed). */
				in  BearerSetup_ind;			 /* For BICC: Indication that the bearer connection between TS and SUT has been setup by the SUT. */
				out BearerRelease_req;       /* For BICC: request to release the established bearer connection. */
				in  BearerRelease_cnf;        /* For BICC: confirmation that the requested bearer is released. */
				in  BearerRelease_ind;        /* Indication of whether the bearer is successfully released. */
    		}
     
   			type port Coordination message
    		{
      			inout CM_Message
    		}with {extension "internal" }
  		} // End Group Ports
  
	} //end group SystemConfiguration
		signature s_IsupBicc_conversation (in charstring text, out boolean answer);
		signature s_IsupBicc_ringing (in charstring text, out boolean answer);

} // end module SipIsup_TestSystem
Loading