Commit 1dfaaa45 authored by petersenj's avatar petersenj
Browse files

Made Test case for TP 0824_01,

A lot of templates !!!  <--- is this neccessary??
Functions in dPMR_Functions are surely wrong and should be revisited
parent 5935fdeb
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -48,5 +48,20 @@
		return e_error;
	} // end f_msConfig_Ut
	
//	group UtilityFunctions {
//		function f_calledId2Upper(CalledId p_calledId) return CalledIdUP {
//			return p_calledId & 'FFF000'H;
//		}
//		function f_calledId2Lower(CalledId p_calledId) return CalledIdLP {
//			return p_calledId << 12;
//		}
//		function f_ownId2Upper(CalledId p_ownId) return OwnIdUP {
//			return p_ownId & 'FFF000'H;
//		}
//		function f_ownId2Lower(CalledId p_ownId) return OwnIdLP {
//			return p_ownId << 12;
//		}
//
//	} // end UtilityFunctions

} // end module dPMR_Functions
+1 −1
Original line number Diff line number Diff line
@@ -123,7 +123,7 @@ group TransmissionSequences {

type record PayloadContTransmission {
  HeaderFrame headerFrame,
  SuperFrameList  sfLlist,
  SuperFrameList  sfList,
  EndFrame  endFrame
}

+9 −3
Original line number Diff line number Diff line
@@ -21,14 +21,20 @@ module dPMR_Pixits {
	modulepar {CSFColourcode PXT_SELECTED_CSF_COLOURCODE  }



	// @desc: Voice Test Tone for frame 1, 2, 3 and 4, must be chosen 
	// They consist each of 4x72 bits of data, =288 bits
	modulepar {Payload PXT_VOICE_TEST_TONE_F1}
	modulepar {Payload PXT_VOICE_TEST_TONE_F2}
	modulepar {Payload PXT_VOICE_TEST_TONE_F3}
	modulepar {Payload PXT_VOICE_TEST_TONE_F4}

	// @desc: Value of IUT Address
	modulepar {CalledId PXT_CALLED_ID := '111111110000000000000000'B}
	modulepar {CalledId PXT_CALLED_ID} 
	//:= {isfAddress := {commonID := '11111111'B, fixedPart := '0000000000000000'B}}}


	// @desc: Value of Tester Address
	modulepar {OwnId PXT_OWN_ID := '111111110000000000000001'B}
	modulepar {OwnId PXT_OWN_ID } //:= '111111110000000000000001'B}


	// @desc: Max Time of IUT sending back response of configuration/action's func/msg
+182 −5
Original line number Diff line number Diff line
@@ -18,6 +18,79 @@
//	import from dPMR_Pixits all;
	import from dPMR_Types all;
	import from dPMR_Values all;
//	import from dPMR_Functions all;


	template PayloadContTransmission m_payloadContTransmission ( template HeaderFrame p_headerFrame ,
																 template SuperFrameList p_superFrameList ,
																 template EndFrame p_endFrame ) := {
			headerFrame := p_headerFrame ,
			sfList := p_superFrameList,
			endFrame := p_endFrame 
	}

	template SuperFrameList m_superFrameListWith4Frames ( template SuperFrame p_superFrame) := {
	  p_superFrame,p_superFrame,p_superFrame,p_superFrame //,m_superFrame,m_superFrame,m_superFrame
	}

	template SuperFrame m_superFrame (  template Frame1 m_frame1,
										template Frame2 m_frame2,
										template Frame3 m_frame3,
										template Frame4 m_frame4 ) := {
		frame1 := m_frame1,
		frame2 := m_frame2,
		frame3 := m_frame3,
		frame4 := m_frame4
	}

 	template Frame1 m_frame1AudibleTestTone (	CalledId p_calledID,
												Payload p_payload)  := {
		frameSync := c_fs2,
		frameNumber := e_frame1,
		calledIdUP := f_calledId2Upper(p_calledID),// & 'FFF000'H,
   		communicationsMode := e_voice,
        commsFormat := e_callAll, // This might be incorrect
        reserved2bit := c_reserved2bits,
        slowData := c_slowDataInVoiceEmpty,
        payload := p_payload
	}

  	template Frame2 m_frame2AudibleTestTone (	CalledId p_calledID,
												Payload p_payload, ColourCode p_cc)  := {
		colourCode := p_cc,
		frameNumber := e_frame2,
		calledIdLP := f_calledId2Lower(p_calledID),
   		communicationsMode := e_voice,
        commsFormat := e_callAll, // This might be incorrect
        reserved2bit := c_reserved2bits,
        slowData := c_slowDataInVoiceEmpty,
        payload := p_payload
	}

  	template Frame3 m_frame3AudibleTestTone (	OwnId p_ownID,
												Payload p_payload)  := {
		frameSync := c_fs2,
		frameNumber := e_frame3,
		ownIdUP := f_ownId2Upper(p_ownID),
   		communicationsMode := e_voice,
        commsFormat := e_callAll, // This might be incorrect
        reserved2bit := c_reserved2bits,
        slowData := c_slowDataInVoiceEmpty,
        payload := p_payload
	}

  	template Frame4 m_frame4AudibleTestTone (	OwnId p_ownID,
												Payload p_payload, ColourCode p_cc)  := {
		colourCode := p_cc,
		frameNumber := e_frame4,
		ownIdLP := f_ownId2Lower(p_ownID),
   		communicationsMode := e_voice,
        commsFormat := e_callAll, // This might be incorrect
        reserved2bit := c_reserved2bits,
        slowData := c_slowDataInVoiceEmpty,
        payload := p_payload
	}

		

	template CallOrSrvReq m_callOrSrvReq( template HeaderFrame p_headerFrame ,
@@ -46,8 +119,17 @@
		preamble := c_preamble,
		frameSync1 := c_fs1,
		headerInformation0 := p_headerInformation,
		headerInformation1 := p_headerInformation,
		colourCode := p_cc
		colourCode := p_cc,
		headerInformation1 := p_headerInformation
	}// end m_headerFrameConnectReq

 	template HeaderFrame m_headerFrame (in template HeaderInformation p_headerInformation, 
															  ColourCode        p_cc) := { 
		preamble := c_preamble,
		frameSync1 := c_fs1,
		headerInformation0 := p_headerInformation,
		colourCode := p_cc,
		headerInformation1 := p_headerInformation
	}// end m_headerFrameConnectReq

	template EndInformation  m_endInformation := {
@@ -75,8 +157,103 @@
		preamble := c_preamble,
		frameSync1 := c_fs1,
		headerInformation0 := p_headerInformation,
		headerInformation1 := p_headerInformation,
		colourCode := p_cc
		colourCode := p_cc,
		headerInformation1 := p_headerInformation
	}
	group UtilityFunctions {
		function f_calledId2Upper(CalledId p_calledId) return CalledIdUP {
			//var CalledIdUP p_tmp := CalledIdUP(p_calledId & 'FFF000'H);
			var CalledId t1 := p_calledId;
			var MSAddress t2 := p_calledId;
			var ISFAddress t3 := t2.isfAddress;
			var Common_ID t4 := t3.common_ID
			var FixedPart t5 := t3.fixedPart;

			var CalledIdUP retval;
			var CalledIdUP tmp;


			retval := '000000000000'B;

			retval := retval or4b t4;
			tmp := t5 and4b '1111000000000000'B;
			tmp := tmp >> 12;

			retval := retval or4b tmp;


			return retval;


//			nn := p_calledId;
//			oo := nn and4b 'FFF000'H;
//			return oo;
		}
		function f_calledId2Lower(CalledId p_calledId) return CalledIdLP {
			var CalledId t1 := p_calledId;
			var MSAddress t2 := p_calledId;
			var ISFAddress t3 := t2.isfAddress;
			var Common_ID t4 := t3.common_ID
			var FixedPart t5 := t3.fixedPart;

			var CalledIdUP retval;
			var CalledIdUP tmp;


			retval := '000000000000'B;

			retval := retval or4b t4;
			tmp := t5 and4b '1111000000000000'B;
			tmp := tmp >> 12;

			retval := retval or4b tmp;


			return retval;
		}
		function f_ownId2Upper(OwnId p_ownId) return OwnIdUP {
			var OwnId t1 := p_ownId;
			var MSAddress t2 := p_ownId;
			var ISFAddress t3 := t2.isfAddress;
			var Common_ID t4 := t3.common_ID
			var FixedPart t5 := t3.fixedPart;

			var CalledIdUP retval;
			var CalledIdUP tmp;


			retval := '000000000000'B;

			retval := retval or4b t4;
			tmp := t5 and4b '1111000000000000'B;
			tmp := tmp >> 12;

			retval := retval or4b tmp;


			return retval;
		}
		function f_ownId2Lower(OwnId p_ownId) return OwnIdLP {
			var OwnId t1 := p_ownId;
			var MSAddress t2 := p_ownId;
			var ISFAddress t3 := t2.isfAddress;
			var Common_ID t4 := t3.common_ID
			var FixedPart t5 := t3.fixedPart;

			var CalledIdUP retval;
			var CalledIdUP tmp;


			retval := '000000000000'B;

			retval := retval or4b t4;
			tmp := t5 and4b '1111000000000000'B;
			tmp := tmp >> 12;

			retval := retval or4b tmp;


			return retval;
		}
	}
 } // end module dPMR_Templates
 No newline at end of file
+55 −1
Original line number Diff line number Diff line
@@ -35,6 +35,10 @@ group IsfCsfCommon {
		testcase TC_PMR_0824_01(ColourCode p_cc, MSAddress p_ms_address) 	// The Common ID is User Selectable!
																			// Here it should be > 0 && < 255
																			// fixed part shall be '1111111111111111'
																			// Note also that this is NOT for CSF since 
																			// the address of CSF is in a different range
																			// (Wrong in TP?)

		runs on ServerSyncComp
		system TestAdapter {

@@ -46,7 +50,7 @@ group IsfCsfCommon {
			f_cfSimuUp(v_simu, v_ut);

			//Test body
//			v_simu.start(f_msVoiceTransmissionCommon_ID_set_255(p_cc));
			v_simu.start(f_msVoiceTransmissionCommon_ID_set_to_255(p_cc));
//			v_ut.start(f_TC_IutToStandby_withCommon_ID_Ut(p_cc,p_ms_address)); // where to set the ,p_ms_address?????

			// synchronize both PTCs
@@ -56,6 +60,56 @@ group IsfCsfCommon {
			f_cfSimuDown(v_simu, v_ut);

		} // end TC_PMR_0824_01

		function f_msVoiceTransmissionCommon_ID_set_to_255(ColourCode p_cc)
		runs on Simu {
		// Variables
			var FncRetCode v_ret := e_success;
		
			//Default
			activate(a_dftSimu());
			//Preamble
			f_clientSyncAndVerdict(c_prDone, v_ret); 
		
			//Test Body
			tc_ac.start ;
			dp1Port.send(
							m_payloadContTransmission(
								m_headerFrame(
									m_headerInformation(c_calledID_set_to_255, 
														PXT_OWN_ID, 
														e_voice, 
														e_p2p),
									p_cc),
								m_superFrameListWith4Frames(
									m_superFrame(
										m_frame1AudibleTestTone(c_calledID_set_to_255,PXT_VOICE_TEST_TONE_F1),
										m_frame2AudibleTestTone(c_calledID_set_to_255,PXT_VOICE_TEST_TONE_F2,p_cc),
										m_frame3AudibleTestTone(PXT_OWN_ID,PXT_VOICE_TEST_TONE_F3),
										m_frame4AudibleTestTone(PXT_OWN_ID,PXT_VOICE_TEST_TONE_F4,p_cc)
									)
								),
								m_endFrameConnectReq)
						);
			alt {
				[] dp1Port.receive(mw_acknowledgementAckOnConnectReq(
									    m_headerInformation(PXT_OWN_ID, PXT_CALLED_ID, e_voice, e_p2p),
										p_cc)
								   )
					{
						setverdict(pass);
					}
				[] tc_ac.timeout {
						log("**** TC_PMR_0406_01: TC Timer expiration before reception of Acknowledgement ****");
						setverdict(fail);	
					}
			} // end alt

			//no Postamble
		
			deactivate;

		} // end f_msVoiceTransmissionCommon_ID_set_to_255
	} // end group AllCall

	group Framing {
Loading