Commit 6f63b7e2 authored by juvancic's avatar juvancic
Browse files

No commit message

No commit message
parent 25eedbf2
Loading
Loading
Loading
Loading
+176 −0
Original line number Diff line number Diff line
@@ -8197,6 +8197,182 @@ module SipIsup_IMS_TCFunctions {
 
				}// end function f_IMS_TC_308_003
				
				/* 
				*  @desc	This is the test case function (IMS/SIP side) for TC_308_004
				*  @param	loc_CSeq_s - Transaction Id
				*/
				function f_IMS_TC_308_004(in CSeq p_cSeq_s) runs on ImsComponent {

					// expected status and cause values according to the testcase variant
					// From ETSI TS 186 009-2 TP308004 - Table 14
					var StatusLine v_statusLine[37]; 
					// dummy value for index 0 (unused)
					v_statusLine[0] := c_statusLine100;//not used
					v_statusLine[1] := c_statusLine400;
					v_statusLine[2] := c_statusLine401;
					v_statusLine[3] := c_statusLine402;
					v_statusLine[4] := c_statusLine403;
					v_statusLine[5] := c_statusLine405;
					v_statusLine[6] := c_statusLine406;
					v_statusLine[7] := c_statusLine407;
					v_statusLine[8] := c_statusLine408;
					v_statusLine[9] := c_statusLine410;
					v_statusLine[10] := c_statusLine413;
					v_statusLine[11] := c_statusLine414;
					v_statusLine[12] := c_statusLine415;
					v_statusLine[13] := c_statusLine416;
					v_statusLine[14] := c_statusLine420;
					v_statusLine[15] := c_statusLine421;
					v_statusLine[16] := c_statusLine423;
					v_statusLine[17] := c_statusLine480;
					v_statusLine[18] := c_statusLine481;
					v_statusLine[19] := c_statusLine482;
					v_statusLine[20] := c_statusLine483;
					v_statusLine[21] := c_statusLine485;
					v_statusLine[22] := c_statusLine486;
					v_statusLine[23] := c_statusLine488;
					v_statusLine[24] := c_statusLine493;
					v_statusLine[25] := c_statusLine500;
					v_statusLine[26] := c_statusLine501;
					v_statusLine[27] := c_statusLine502;
					v_statusLine[28] := c_statusLine503;
					v_statusLine[29] := c_statusLine504;
					v_statusLine[30] := c_statusLine505;
					v_statusLine[31] := c_statusLine513;
					v_statusLine[32] := c_statusLine580;
					v_statusLine[33] := c_statusLine600;
					v_statusLine[34] := c_statusLine603;
					v_statusLine[35] := c_statusLine604;
					v_statusLine[36] := c_statusLine606;

					// PREAMBLE
					f_IMS_preamble_MGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY

					//Awaiting INVITE	
					f_awaitingINVITE(mw_INVITE_Request_IMS(*,*,*,*));
					f_sendResponse(m_Response_4XXonINVITE_Reason(v_statusLine[PX_TC_VA],vc_callId, vc_cSeq,vc_caller_From, vc_caller_To, vc_via,vc_contact,PX_CauseValue));
					f_awaitingACK(mw_ACK_Request_Base(vc_callId));
					
					f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());// sync point test body done

					// POSTAMBLE
					f_SIP_postamble_IMS1_withoutRegistration ()
 
				}// end function f_IMS_TC_308_004
				
				/* 
				*  @desc	This is the test case function (IMS/SIP side) for TC_308_005
				*  @param	loc_CSeq_s - Transaction Id
				*/
				function f_IMS_TC_308_005(in CSeq p_cSeq_s) runs on ImsComponent {

					// expected status and cause values according to the testcase variant
					// From ETSI TS 186 009-2 TP308005 - Table 14
					var StatusLine v_statusLine[37]; 
					// dummy value for index 0 (unused)
					v_statusLine[0] := c_statusLine100;//not used
					v_statusLine[1] := c_statusLine400;
					v_statusLine[2] := c_statusLine401;
					v_statusLine[3] := c_statusLine402;
					v_statusLine[4] := c_statusLine403;
					v_statusLine[5] := c_statusLine405;
					v_statusLine[6] := c_statusLine406;
					v_statusLine[7] := c_statusLine407;
					v_statusLine[8] := c_statusLine408;
					v_statusLine[9] := c_statusLine410;
					v_statusLine[10] := c_statusLine413;
					v_statusLine[11] := c_statusLine414;
					v_statusLine[12] := c_statusLine415;
					v_statusLine[13] := c_statusLine416;
					v_statusLine[14] := c_statusLine420;
					v_statusLine[15] := c_statusLine421;
					v_statusLine[16] := c_statusLine423;
					v_statusLine[17] := c_statusLine480;
					v_statusLine[18] := c_statusLine481;
					v_statusLine[19] := c_statusLine482;
					v_statusLine[20] := c_statusLine483;
					v_statusLine[21] := c_statusLine485;
					v_statusLine[22] := c_statusLine486;
					v_statusLine[23] := c_statusLine488;
					v_statusLine[24] := c_statusLine493;
					v_statusLine[25] := c_statusLine500;
					v_statusLine[26] := c_statusLine501;
					v_statusLine[27] := c_statusLine502;
					v_statusLine[28] := c_statusLine503;
					v_statusLine[29] := c_statusLine504;
					v_statusLine[30] := c_statusLine505;
					v_statusLine[31] := c_statusLine513;
					v_statusLine[32] := c_statusLine580;
					v_statusLine[33] := c_statusLine600;
					v_statusLine[34] := c_statusLine603;
					v_statusLine[35] := c_statusLine604;
					v_statusLine[36] := c_statusLine606;

					// PREAMBLE
					f_IMS_preamble_MGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY

					//Awaiting INVITE	
					f_awaitingINVITE(mw_INVITE_Request_IMS(*,*,*,*));
					
					select(PX_SIP_MESSAGE_VA) {           
						case(1){f_sendResponse(m_Response_18XonINVITE(c_statusLine180,vc_callId, vc_cSeq,vc_caller_From, vc_caller_To, vc_via,vc_contact));}
						case(2){f_sendResponse(m_Response_18XonINVITE(c_statusLine181,vc_callId, vc_cSeq,vc_caller_From, vc_caller_To, vc_via,vc_contact));}
						case(3){f_sendResponse(m_Response_18XonINVITE(c_statusLine182,vc_callId, vc_cSeq,vc_caller_From, vc_caller_To, vc_via,vc_contact));}
						case(4){f_sendResponse(m_Response_18XonINVITE(c_statusLine183,vc_callId, vc_cSeq,vc_caller_From, vc_caller_To, vc_via,vc_contact));}
						case else {log("Invalid PX_SIP_MESSAGE_VA variant (",PX_SIP_MESSAGE_VA,"), available variant 1-4");}
					}
					
					f_sendResponse(m_Response_4XXonINVITE_Reason(v_statusLine[PX_TC_VA],vc_callId, vc_cSeq,vc_caller_From, vc_caller_To, vc_via,vc_contact,PX_CauseValue));
					f_awaitingACK(mw_ACK_Request_Base(vc_callId));
					
					f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());// sync point test body done

					// POSTAMBLE
					f_SIP_postamble_IMS1_withoutRegistration ()
 
				}// end function f_IMS_TC_308_005
				
				/* 
				*  @desc	This is the test case function (IMS/SIP side) for TC_308_006
				*  @param	loc_CSeq_s - Transaction Id
				*/
				function f_IMS_TC_308_006(in CSeq p_cSeq_s) runs on ImsComponent {

					// expected status and cause values according to the testcase variant
					// From ETSI TS 186 009-2 TP308006 - Table 16
					var StatusLine v_statusLine[6]; 
					// dummy value for index 0 (unused)
					v_statusLine[0] := c_statusLine100;//not used
					v_statusLine[1] := c_statusLine300;
					v_statusLine[2] := c_statusLine301;
					v_statusLine[3] := c_statusLine302;
					v_statusLine[4] := c_statusLine305;
					v_statusLine[5] := c_statusLine380;
										
					// PREAMBLE
					f_IMS_preamble_MGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY

					//Awaiting INVITE	
					f_awaitingINVITE(mw_INVITE_Request_IMS(*,*,*,*));
					f_sendResponse(m_Response_4XXonINVITE(v_statusLine[PX_TC_VA],vc_callId, vc_cSeq,vc_caller_From, vc_caller_To, vc_via,vc_contact));
					f_awaitingACK(mw_ACK_Request_Base(vc_callId));
					
					f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());// sync point test body done

					// POSTAMBLE
					f_SIP_postamble_IMS1_withoutRegistration ()
 
				}// end function f_IMS_TC_308_006
				
			} // end group TP308_Sending_REL
	
			group TP309_AutonomousRelease {