Commit 86754196 authored by petersenj's avatar petersenj
Browse files

implemented 0811_01, 0816_01

Changed UT function use 
added c_defaultCommonId
parent b051e978
Loading
Loading
Loading
Loading
+52 −23
Original line number Diff line number Diff line
@@ -38,7 +38,7 @@
		} // end group AcknowledegmentTemplates


		template PayloadTransmission m_payloadTransmission ( 	template HeaderFrame p_headerFrame ,
		template PayloadTransmission m_voiceorT1orT2PayloadTransmission ( 	template HeaderFrame p_headerFrame ,
																template SuperFrameList p_superFrameList ,
																template EndFrame p_endFrame ) := {
				extHdrFrameList := omit ,
@@ -47,6 +47,18 @@
				endFrame := p_endFrame 
		} // end template m_payloadTransmission

		template PacketDataTransmission m_T3DataPayloadTransmission ( 	template PacketDataHeader p_packetDataHeaderFrame ,
																		template PacketDataFrameList p_packetDataFrameList ,
																		template EndFrame p_endFrame ) := {
				extPacketDataHdrList := omit ,
				packetDataHeader := p_packetDataHeaderFrame ,
				packetDataFrameList := p_packetDataFrameList ,
				endFrame := p_endFrame 
		} // end template m_payloadTransmission

		template PacketDataFrameList m_packetDataFrameList (template PacketFrame p_packetFrame) := superset (
			p_packetFrame
		);


		group SuperFrameGroup {
@@ -185,10 +197,6 @@

		} // end group VoiceFrameGroup


		
		group T1T2DataFrameGroup {

		template SlowData m_slowDataT1Data (DataPosition p_dataPos,
											DataFormat p_dataFormat,
											ContFlag p_contFlag,
@@ -201,6 +209,22 @@
			dataLength := p_dataLength
			}
		}

		group T3DataFrameGroup {
			template PacketFrame mw_packetDataFrame (ColourCode p_cc) := {
				colourCode := p_cc,
				packetDataFrameNumber := ? ,
				validDataLength := ? ,
				reserved14bit := ? ,
				crcForData := ? ,
				data := ?
			}

		} // end Group T3DataFrameGroup

		
		group T1T2DataFrameGroup {

			template Payload m_T1Payload(Payload p_framePayLoad) := {
				payLoad1 :=p_framePayLoad.payLoad1,
				payLoad2 :=p_framePayLoad.payLoad2,
@@ -503,12 +527,21 @@

	group ConfigurationTemplates {

		template UtRequest m_sendSomeT3Data_utRequest(	ChannelNumber p_channelNumber, 
														in template DialString p_dialString,
														UtActParams p_utActParameter ) := {
	  		channelNr :=  p_channelNumber,
			politeLvl  := omit ,
			dialString := p_dialString ,
			isfCidAddr := omit,
			utActParams := p_utActParameter
		}

		template UtRequest m_testToneDetected_utRequest(	ChannelNumber p_channelNumber, 
															Common_ID p_commonId, 
															UtActParams p_utActParameter ) := {
	  		channelNr :=  p_channelNumber,
			politeLvl  := omit ,
//			callType   := omit ,
			dialString := omit ,
			isfCidAddr := p_commonId,
			utActParams := p_utActParameter
@@ -518,7 +551,6 @@
															UtActParams p_utActParameter ) := {
	  		channelNr :=  p_channelNumber,
			politeLvl  := omit ,
//			callType   := omit ,
			dialString := omit ,
			isfCidAddr := omit,
			utActParams := p_utActParameter
@@ -530,7 +562,6 @@
													in template Common_ID p_commonId ) := {
	  		channelNr :=  p_channelNumber,
			politeLvl  := omit ,
//			callType   := omit ,
			dialString := p_dialString,
			isfCidAddr := p_commonId,
			utActParams := omit
@@ -542,7 +573,6 @@
		                                                       UtActParams p_utActParameter) := {
			  		channelNr := p_channelNumber,
					politeLvl  := omit ,
//					callType   := omit ,
					dialString := p_dialstr,
					isfCidAddr := p_commonId ,
					utActParams := p_utActParameter
@@ -553,7 +583,6 @@
		                                                       UtActParams p_utActParameter) := {
			  		channelNr := p_channelNumber,
					politeLvl  := omit ,
//					callType   := omit ,
					dialString := p_dialstr,
					isfCidAddr := omit ,
					utActParams := p_utActParameter
+181 −46
Original line number Diff line number Diff line
@@ -47,8 +47,8 @@ module dPMR_TestCases {

				//Test body
				v_mse.start(f_TC_testToneTransmissionCommon_ID_set_to_255_MS01(p_cc));
				v_ut.start(f_TC_msWaitVoiceReceived_UT(p_cc));

				v_ut.start(f_TC_msCommandConfirm(m_testToneDetected_utRequest(f_getChannelNrFromColourCode(p_cc), c_allCall,e_testToneReceived)));
// TODO remove				v_ut.start(	f_TC_msWaitVoiceReceived_UT(p_cc));
				// synchronize both PTCs
				f_serverSync2ClientsAndStop({c_prDone,c_tbDone});

@@ -73,7 +73,8 @@ module dPMR_TestCases {

				//Test body
				v_mse.start(f_TC_testToneTransmissionCommon_ID_set_to_default_MS01(p_cc));
				v_ut.start(f_TC_msWaitVoiceReceived_UT(p_cc));
				v_ut.start(f_TC_msCommandConfirm(m_testToneDetected_utRequest(f_getChannelNrFromColourCode(p_cc), c_allCall,e_testToneReceived)));
//TODO remove				v_ut.start(f_TC_msWaitVoiceReceived_UT(p_cc));

				// synchronize both PTCs
				f_serverSync2ClientsAndStop({c_prDone,c_tbDone});
@@ -102,7 +103,18 @@ module dPMR_TestCases {

				//Test body  
				v_mse.start(f_TC_voiceTx_MS01(p_cc));
				v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc));
				if (PIC_ISF_OR_CSF == e_isf) {
					v_ut.start(f_TC_msCommandConfirm(m_commandISFCSF_utRequest(	f_getChannelNrFromColourCode(p_cc), 
																		omit , 
																		c_defaultCommonId,
																		e_pressPtt)));
				} else {
					v_ut.start(f_TC_msCommandConfirm(m_commandISFCSF_utRequest(	f_getChannelNrFromColourCode(p_cc), 
																		c_defaultCallGroup, 
																		omit , 
																		e_pressPtt)));
				}
//TODO remove				v_ut.start(f_TC_msPressPttThenDekeyPtt_UT(p_cc));

				// synchronize both PTCs
				f_serverSync2ClientsAndStop({c_prDone, c_tbDone});
@@ -318,9 +330,37 @@ module dPMR_TestCases {
			} // end group SuperFrame

		} // end group Framing
		group HeaderFrames {

			/**
			* @param p_cc The colour code (channel) used
			*/
			testcase TC_PMR_0816_01( ColourCode p_cc  )
			runs on ServerSyncComp
			system TestAdapter {
		      	var Mse v_mse;
				var Ut v_ut;
				var FncRetCode v_ret := e_success;

				//Configuration Up
				f_cfMseUp(v_mse, v_ut);

				//Test body
				v_mse.start(f_TC_T3DataHeaderTx_MS01(p_cc));
				v_ut.start(f_TC_msCommandConfirm(m_sendSomeT3Data_utRequest(f_getChannelNrFromColourCode(p_cc), c_defaultPeerToPeerAddress, e_testToneReceived)));

				// synchronize both PTCs
				f_serverSync2ClientsAndStop({c_prDone, c_tbDone});

				// Configuration Down
				f_cfMseDown(v_mse, v_ut);
			} // end TC_PMR_0816_01

		}// end group IsfCsfCommon


	} // end group HeaderFrames

	group commonTCFunctions {
	

@@ -344,7 +384,7 @@ module dPMR_TestCases {
			f_clientSyncAndVerdict(c_prDone, v_ret); 
	
			//Test Body
			dp1Port.send(	m_payloadTransmission(
			dp1Port.send(	m_voiceorT1orT2PayloadTransmission(
								m_headerFrame(									
									m_headerInformation(e_commStartHeader,
														vc_mse.iutId, 
@@ -390,7 +430,7 @@ module dPMR_TestCases {
			f_clientSyncAndVerdict(c_prDone, v_ret); 
	
			//Test Body
			dp1Port.send(	m_payloadTransmission(
			dp1Port.send(	m_voiceorT1orT2PayloadTransmission(
								m_headerFrame(									
									m_headerInformation(e_commStartHeader,
														vc_mse.iutId, 
@@ -485,7 +525,7 @@ module dPMR_TestCases {
		
			//Test Body
			tc_ac.start ;  
			dp1Port.send(	m_payloadTransmission(
			dp1Port.send(	m_voiceorT1orT2PayloadTransmission(
								m_packetDataHeaderFrame(	
									m_headerInformation(
										e_commStartHeader, 
@@ -545,7 +585,6 @@ module dPMR_TestCases {

		} // end f_TC_ackOnConnectionRequest_MS01


		/**
		* @desc	Check that a voice transmission from the MS (IUT) consists of a Header Frame, a list of
		*       Super Frames, and an End Frame,
@@ -570,7 +609,7 @@ module dPMR_TestCases {
			//Test Body
			tc_ac.start ;
			alt {
			[] dp1Port.receive(	m_payloadTransmission(
			[] dp1Port.receive(	m_voiceorT1orT2PayloadTransmission(
									m_headerFrame(
										mw_headerInformationTx(
											vc_mse.testerId, 
@@ -603,6 +642,57 @@ module dPMR_TestCases {
		} // end function f_TC_voiceTx_MS01




		/**
		* @desc	Check that a T3DataHeader transmission from the MS (IUT) contain a Packet data header with a framsync of FS4
		*
		* @param 	p_cc Colour Code
		*/
		function f_TC_T3DataHeaderTx_MS01 ( ColourCode p_cc )
		runs on Mse{
			// Variables
			var FncRetCode v_ret := e_success;
			var UInt16 v_sfCount := 0;
			var default v_defvar;

			//Test System Parameters
			f_initMse();
	
			//Default
			v_defvar := activate(a_dftMse(p_cc,e_voice));

			//Preamble
			f_clientSyncAndVerdict(c_prDone, v_ret);

			//Test Body
			tc_ac.start ;
			alt {
			[] dp1Port.receive(	m_packetDataHeaderFrame(
									m_headerInformation(
										e_commStartHeader,
										vc_mse.testerId, 
										vc_mse.iutId,
										e_dataT3,
										e_p2p),
									p_cc))
				{
					// received correctly
					tc_ac.stop ;
					setverdict(pass);
				}
			[] tc_ac.timeout
			  	{
					log("**** f_TC_voiceTx_MS01: Timeout: TC Timer expiration before reception of complete Voice transmission ****");
					setverdict(fail);	
				}
			} // end alt
			f_clientSyncAndVerdict(c_tbDone, v_ret);

			deactivate;

		} // end function f_TC_T3DataHeaderTx_MS01

	   /**
		* @desc	Check that a voice transmission from the MS (IUT) consists of a Header Frame, a list of
		*       Super Frames, and an End Frame,
@@ -680,7 +770,7 @@ module dPMR_TestCases {
			//Test Body
			tc_ac.start ;
			alt {
				[] dp1Port.receive(	m_payloadTransmission(
				[] dp1Port.receive(	m_voiceorT1orT2PayloadTransmission(
										m_headerFrame(
											mw_headerInformationTx(
												vc_mse.testerId, 
@@ -827,38 +917,13 @@ module dPMR_TestCases {

	group ut_TC_Functions {

			/**
			 * @desc	This function will put the MS in an idle mode listening to a 
			 *			certain channel using the Pixit id or address
			 * @param	p_cc the colour code (the channel)
			*/
			function f_TC_msToStandby_UT( ColourCode p_cc ) 
			runs on Ut {
				//Variables
				var default v_dftUt;
				var FncRetCode v_ret := e_success;

				//Test System Parameters
				f_initUt();
			
				//Default
				v_dftUt := activate(a_dftUt());

				v_ret := f_msToStandby_UT(p_cc);

				f_clientSyncAndVerdict(c_prDone, v_ret);

				deactivate;
				
			} // end f_TC_msToStandby_UT
	
			/**
			* @desc This function waits for the indication from the UT that IUT has output the 'audible test tone'.
			/*
			 *  @desc This function takes one template argument and asks the upper tester to do it, whatever,
			 *	      After sending the argument, it awaits the success
			 *	@param p_actionRequest the request for action
			 *
			* @param 	p_cc Colour Code
			 */
			function f_TC_msWaitVoiceReceived_UT( ColourCode p_cc)
			runs on Ut{
			function f_TC_msCommandConfirm(in template UtRequest p_utRequest) runs on Ut {
				//Variables
				var default v_dftUt;
				var FncRetCode v_ret := e_success;
@@ -870,7 +935,7 @@ module dPMR_TestCases {
				v_dftUt := activate(a_dftUt());
			
				//Preamble
				v_ret := f_handshake_Ut(m_testToneDetected_utRequest(f_getChannelNrFromColourCode(p_cc), c_allCall,e_testToneReceived));
				v_ret := f_handshake_Ut(p_utRequest);
				f_clientSyncAndVerdict(c_prDone, v_ret);

				//Test body
@@ -881,7 +946,7 @@ module dPMR_TestCases {
						setverdict(pass);
					}
					[]tc_maxCaseExecPeriod.timeout{
						log("**** f_TC_msWaitVoiceReceived_UT: Timeout: Expected message not received. ****");
						log("**** f_TC_msCommandConfirm: Timeout: Expected message not received. ****");
						setverdict(fail);
					}
				}//end alt
@@ -892,7 +957,77 @@ module dPMR_TestCases {

				deactivate;

			} // end function f_TC_msWaitVoiceReceived_UT
			} // end function f_TC_msCommandConfirm 




			/**
			 * @desc	This function will put the MS in an idle mode listening to a 
			 *			certain channel using the Pixit id or address
			 * @param	p_cc the colour code (the channel)
			*/
			function f_TC_msToStandby_UT( ColourCode p_cc ) 
			runs on Ut {
				//Variables
				var default v_dftUt;
				var FncRetCode v_ret := e_success;

				//Test System Parameters
				f_initUt();
			
				//Default
				v_dftUt := activate(a_dftUt());

				v_ret := f_msToStandby_UT(p_cc);

				f_clientSyncAndVerdict(c_prDone, v_ret);

				deactivate;
				
			} // end f_TC_msToStandby_UT
	
//			/**
//			* @desc This function waits for the indication from the UT that IUT has output the 'audible test tone'.
//			*		
//			* @param 	p_cc Colour Code
//			*/
//			function f_TC_msWaitVoiceReceived_UT( ColourCode p_cc)
//			runs on Ut{
//				//Variables
//				var default v_dftUt;
//				var FncRetCode v_ret := e_success;
//
//				//Test System Parameters
//				f_initUt();
//			
//				//Default
//				v_dftUt := activate(a_dftUt());
//			
//				//Preamble
//				v_ret := f_handshake_Ut(m_testToneDetected_utRequest(f_getChannelNrFromColourCode(p_cc), c_allCall,e_testToneReceived));
//				f_clientSyncAndVerdict(c_prDone, v_ret);
//
//				//Test body
//				tc_maxCaseExecPeriod.start;
//				alt {
//					[]utPort.receive(mw_utConfirm_success){
//						tc_maxCaseExecPeriod.stop;
//						setverdict(pass);
//					}
//					[]tc_maxCaseExecPeriod.timeout{
//						log("**** f_TC_msWaitVoiceReceived_UT: Timeout: Expected message not received. ****");
//						setverdict(fail);
//					}
//				}//end alt
//
//				f_clientSyncAndVerdict(c_tbDone, v_ret); 
//			
//				//no Postamble
//
//				deactivate;
//
//			} // end function f_TC_msWaitVoiceReceived_UT
		
			/**
			* @desc This function waits for the indication from the UT that IUT has not output the 'audible test tone'.
+2 −2
Original line number Diff line number Diff line
@@ -420,14 +420,14 @@ module dPMR_Types {

		type record PacketFrame {
		  ColourCode     colourCode,
		  NbrOfFrames    nbrOfFrames,  
		  PacketDataFrameNumber    packetDataFrameNumber,  
		  ValidDataLen   validDataLength,
		  Reserved14Bit  reserved14bit,
		  CrcD           crcForData,
		  Data           data
		}

		type UInt3 NbrOfFrames;   //  Number of packet data frames in packet packet transmission (3 bits)
		type UInt3 PacketDataFrameNumber;   //  Number of packet data frames in packet packet transmission (3 bits)

		type UInt8 ValidDataLen;  // Actual length of valid data in the packet frame

+2 −1
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@ module dPMR_Values {
		const PoliteLvl c_polteteLevel := e_politeCc; // Default polite level
		const DialString c_defaultCallGroup := "012345*"; // Digit 7 is a "wildcard" 
		const DialString c_defaultPeerToPeerAddress := "0123456";
		const Common_ID c_defaultCommonId := '00000111'B;
		
		
	} //end testProfileValues