LibIot_PIXITS.ttcn 11.3 KB
Newer Older
Bostjan Pintar's avatar
Bostjan Pintar committed
/*
 *	@author		STF370
 *	@version		$Id: LibIot_PIXITS.ttcn	$
 *	@desc		This module	provides PIXIT parameters	which	need to	be 
 *				changeable within	validation
 */

module LibIot_PIXITS	 {
 
	import from	LibIot_TypesAndValues	
	{
		type IOTExecMode,	IotVerdictType,	CaptureMode, RecordMode, FileList, TimeOffset, EutInterfaceInfoList,
		ProtocolFilter,	IpAddress, PortNumber, ProductList, InterfaceAvailableList,MonitorInterfaceInfo;
	}

	/**
		*	@desc	PIXIT	defines	which	verdict	 (E2E	or conformance)is	to be	kept track of	with the TTCN-3	verdict.
		*				Note that	the	verdict	not	chosen will	be only	available	in log statements.
		*/
	modulepar	IotVerdictType PX_TTCN3_VERDICT	:= e_conformance;
	
	/**
	*	
	*	@desc	Maximum	time limit used	by monitor component for waiting for expected	incoming messages
	*/
	modulepar	float	PX_MAX_MSG_WAIT	:= 10.0;

	/**
	 * 
	 * @desc Example of	module parameter based entry of	EUT	interface	information	for	all	products particpating	in an	interoperability event
	 */
// remove at end of validation phase
	modulepar	ProductList	PX_PRODUCTS	:= {
		{
			// productIndex = 0
			productName := "ProductA",
			monitorInterfaces	:= {
				{
					interfaceName	:= "Gm",
					//available		:= true,
					interfaceInfo	:= {
						IpInterfaceInfo	:= {
							{
								domainName :=	"pcscf.ProductA.etsi",
								IpAddress	:= "fe80::21a:a0ff:fe07:32e0", //"192.86.1.97",
								portNumbers	:= {5060}
							},
							{
								domainName :=	omit,
								IpAddress	:= "fe80::21a:a0ff:fe07:98", //"10.10.20.98",
								portNumbers	:= {5060}
							},
							{
								domainName :=	omit,
								IpAddress	:= "fe80::21a:a0ff:fe07:99", //"10.10.20.99",
								portNumbers	:= {5060}
							}
						}
					}
				},
                {
                    interfaceName	:= "Mx",
					//available		:= true,
                    interfaceInfo	:= {
                        IpInterfaceInfo	:= {
                            {
                                domainName :=	"pcscf.ProductA.etsi",
                                IpAddress	:= "fe80::21a:a0ff:fe07:32e0", //"192.86.1.97",
                                portNumbers	:= {5060}
                            },
                            {
                                domainName :=	"icscf.ProductA.etsi",
                                IpAddress	:= "fe80::21a:a0ff:fe07:98", //"192.86.1.98",
                                portNumbers	:= {5060}
                            },
                            {
                                domainName :=	"scscf.ProductA.etsi",
                                IpAddress	:= "fe80::21a:a0ff:fe07:99", //"192.86.1.99",
                                portNumbers	:= {5060}
                            },
                            {
                                domainName :=	"ibcf.ProductA.etsi",
                                IpAddress	:= "fe80::21a:a0ff:fe07:100", //"192.86.1.100",
                                portNumbers	:= {5060}
                            }
                        }
                    }
                },
				{
					interfaceName	:= "Ici",
					//available		:= true,
					interfaceInfo	:= {
						IpInterfaceInfo	:= {
							{
								domainName :=	"ibcf.ProductA.etsi",
								IpAddress	:= "fe80::21a:a0ff:fe07:100", //"192.86.1.100",
								portNumbers	:= {5060}
							}
						}
					}
				},
				{
					interfaceName	:= "ISC",
					//available		:= true,
					interfaceInfo	:= {
						IpInterfaceInfo	:= {
							{
								domainName :=	"as.ProductA.etsi",
								IpAddress	:= "fe80::21a:a0ff:fe07:109", //"192.86.1.109",
								portNumbers	:= {}
							},
							{
								domainName :=	"scscf.ProductA.etsi",
								IpAddress	:= "fe80::21a:a0ff:fe07:99", //"192.86.1.99",
								portNumbers	:= {5060}
							}
							
						}
					}
				},
                {
                    interfaceName	:= "Rx",
					//available		:= true,
                    interfaceInfo	:= {
                        IpInterfaceInfo	:= {
                            {
                                domainName :=	"",
                                IpAddress	:= "", 
                                portNumbers	:= {1111}
                            }
                        }
                    }
                },
                {
                    interfaceName	:= "Sgi",
					//available		:= true,
                    interfaceInfo	:= {
                        IpInterfaceInfo	:= {
                            {
                                domainName :=	"",
                                IpAddress	:= "", 
                                portNumbers	:= {1111}
                            }
                        }
                    }
                },
                {
                    interfaceName	:= "Mw",
					//available		:= true,
                    interfaceInfo	:= {
                        IpInterfaceInfo	:= {
                            {
                                domainName :=	"",
                                IpAddress	:= "", 
                                portNumbers	:= {2222}
                            }
                        }
                    }
                }
            }
        },
		{
			// productIndex = 1
			productName := "ProductB",
			monitorInterfaces	:= {
				{
					interfaceName	:= "Gm",
					//available		:= true,
					interfaceInfo	:= {
						IpInterfaceInfo	:= {
							{
								domainName :=	"pcscf.ProductB.etsi",
								IpAddress	:= "fec0::216:d3ff:fe0d:22c",
								portNumbers	:= {5060}
							},
							{
								domainName :=	omit,
								IpAddress	:= "fec0::216:d3ff:fe0d:106",
								portNumbers	:= {5060}
							},
							{
								domainName :=	omit,
								IpAddress	:= "fec0::216:d3ff:fe0d:107",
								portNumbers	:= {5060}
							}
						}
					}
				},
                {
                    interfaceName	:= "Mx",
					//available		:= true,
                    interfaceInfo	:= {
                        IpInterfaceInfo	:= {
                            {
                                domainName :=	"pcscf.ProductB.etsi",
                                IpAddress	:= "fec0::216:d3ff:fe0d:22c",
                                portNumbers	:= {5060}
                            },
                            {
                                domainName :=	"icscf.ProductB.etsi",
                                IpAddress	:= "fec0::216:d3ff:fe0d:10",
                                portNumbers	:= {5180,5185}
                            },
                            {
                                domainName :=	"scscf.ProductB.etsi",
                                IpAddress	:= "fec0::216:d3ff:fe0d:10",
                                portNumbers	:= {5185,5187,5188,5189}
                            },
                            {
                                domainName :=	"ibcf.ProductB.etsi",
                                IpAddress	:= "fec0::216:d3ff:fe0d:10",
                                portNumbers	:= {5190}
                            }
                        }
                    }
                },
				{
					interfaceName	:= "Ici",
					//available		:= true,
					interfaceInfo	:= {
						IpInterfaceInfo	:= {
							{
								domainName :=	"ibcf.ProductB.etsi",
								IpAddress	:= "fec0::216:d3ff:fe0d:10",
								portNumbers	:= {5185,5187,5188,5189}
							}
						}
					}
				},
				{
					interfaceName	:= "ISC",
					//available		:= true,
					interfaceInfo	:= {
						IpInterfaceInfo	:= {
							{
								domainName :=	"scscf.ProductB.etsi",
								IpAddress	:= "fec0::216:d3ff:fe0d:10",
								portNumbers	:= {5060}
							},
							{
								domainName :=	"as.ProductB.net",
								IpAddress	:= "fec0::216:d3ff:fe0d:20",
								portNumbers	:= {5076}
							}
						}
					}
				}
			}
		}
	}
	
	/**
	 * 
	 * @desc Selects product based on	index	in PX_PRODCUTS vendor	list for EUT_A
	 * 
	 */
	modulepar	integer	PX_EUT_A := 0;
	
	/**
	 * 
	 * @desc Selects product based on	index	in PX_PRODCUTS vendor	list for EUT_A
	 * 
	 */
	modulepar	integer	PX_EUT_A_EMERGENCY := 1;
	
Bostjan Pintar's avatar
Bostjan Pintar committed
	/**
	 * 
	 * @desc Selects product based on	index	in PX_PRODCUTS vendor	list for EUT_B
	 */
	modulepar	integer	PX_EUT_B := 2;
Bostjan Pintar's avatar
Bostjan Pintar committed
	
    /**
     * 
     * @desc Selects product based on	index	in PX_PRODCUTS vendor	list for EUT_C
     */
    modulepar	integer	PX_EUT_C := 10;
	
    /**
     * 
     * @desc Selects product based on	index	in PX_PRODCUTS vendor	list for EUT_D
     */
    modulepar	integer	PX_EUT_D := 11;
	
	/**
	 * 
	 * @desc Selects product based on	index	in PX_PRODCUTS vendor	list for EUT_B_B2
	 */
	modulepar	integer	PX_EUT_B_B2	:= 3;
	/**
	 * 
	 * @desc Selects product based on	index	in PX_PRODCUTS vendor	list for PSAP
	 * 
	 */
	modulepar	integer	PX_PSAP := 12;
Bostjan Pintar's avatar
Bostjan Pintar committed
	/**
	* 
	* @desc Selects if interfaces should be considered in the evaluation 
	* 		interfaceName needs to be consistent to AtsImsIot_TestConfiguration
	*/
	modulepar InterfaceAvailableList PX_AVAILABLE_INTERFACES := {
		{ interfaceName := "Gm A", available := true },
		{ interfaceName := "Gm B", available := true },
		{ interfaceName := "Gm C", available := true },
		{ interfaceName := "Gm D", available := true },
		{ interfaceName := "Mx", available := true },
        { interfaceName := "Rx", available := true },
        { interfaceName := "Mw", available := false },
		{ interfaceName := "Sgi", available := false },
		{ interfaceName := "Ici", available := true },
		{ interfaceName := "ISC A", available := true },
		{ interfaceName := "ISC B", available := true },
		{ interfaceName := "User A", available := true },
		{ interfaceName := "User B", available := true },
		{ interfaceName := "User A2", available := true },
		{ interfaceName := "User B2", available := true }		
	}
	
	group	adapterGeneralConfiguration	{
		/**
		*	
		*	@desc	Maximum	time limit used	by trigger component for waiting for EUT response	after	command	has	been sent
		*/
		modulepar	float	PX_EUT_TRIGGER_RESPONSE	:= 15.0;
		
		/**
		 * @desc
		 *		 In	case of	offline	mode,	it defines the path where all sessions's Pcap files are located.
		 */
		modulepar	charstring PX_IOT_PCAP_SESSIONS_PATH :=	"C:/cygwin/tmp/IMS-UE_tool_pcaps"; // Do not forget to upgrade PX_EUT_A and PX_EUT_B
		
		/**
		 * @desc
		 *		 Defines if	the	record traffic capture mode	must be	activated	or not.
		 */
		modulepar	RecordMode PX_IOT_RECORD_MODE	:= e_norecord;
		
		/**
		 * @desc
		 *		 Defines list	of the files to	merge.
		 */
		modulepar	FileList PX_IOT_FILE_MERGE_LIST	:= { };
		
		/**
		 * @desc
		 *		 Defines the location	of the files to	merge.
		 */
		modulepar	charstring PX_IOT_FILE_MERGE_PATH	:= ".";
		
		/**
		 * @desc
		 *		 Defines the location	of the files to	merge.
		 */
		modulepar	charstring PX_IOT_MERGE_TOOL_PATH	:= "C:\\Program Files\\WireShark";
Bostjan Pintar's avatar
Bostjan Pintar committed
		
		/**
		 * @desc
		 *		 Defines the time	stamp	offset to	start	playing	record traffic capture file.
		 */
		modulepar	TimeOffset PX_IOT_TIMESTAMP_OFFSET :=	
		{
			seconds	:= 0,
			microseconds :=	0
		};
		
		/**
		 * @desc
		 *		 List	of the network interfaces	to monitor.
		 *		 Use ';' to	separate the interfaces
		 */
		modulepar	charstring PX_IOT_IFACES :=	"rpcap://\\Device\\NPF_{60DAA80A-2AC6-4592-B3A7-80FC0FF08908}";
Bostjan Pintar's avatar
Bostjan Pintar committed
		
		modulepar	EutInterfaceInfoList PX_IOT_EUTs_IFACE_INFO_LIST :=	
		{
			{
				eut	:= "User A",
				ipAddress	:= "3ffe:501:ffff:100::10", // "127.0.0.1",
				portNumber :=	5060
			},
			{
				eut	:= "User B",
				ipAddress	:= "3ffe:501:ffff:1000::1000", //"127.0.0.1",
				portNumber :=	5060
			}
		};
				
	}	// group adapterGlobalConfiguration


}