Commit 10a82cbc authored by pintar's avatar pintar
Browse files

changes due to same approach

parent efae22a9
Loading
Loading
Loading
Loading
+373 −366
Original line number Diff line number Diff line
@@ -167,6 +167,75 @@ module SipIsup_IMS_TCFunctions {
					f_SIP_postamble_IMS1_withoutRegistration();
				} // end function f_IMS_TC_101_003
				
				/* 
				* @desc		This is the test case function (SIP side) for TC_101_004
				* @param	p_CSeq_s Transaction Id
				*/
				function f_IMS_TC_101_004(in CSeq p_cSeq_s) runs on ImsComponent {
					
					var SDP_attribute_list v_attribute_list := valueof({ m_attribute_PCMU,
																		 m_attribute_curr(c_qos, c_local, c_none),
																		 m_attribute_curr(c_qos, c_remote, c_none),
													 					 m_attribute_des(c_qos, c_mandatory, c_local, c_sendrecv),	
													 					 m_attribute_des(c_qos, c_none, c_remote, c_sendrecv)			
																	  });
					var SDP_attribute_list v_attribute_list_update := valueof({  m_attribute_PCMU,
																				 m_attribute_curr(c_qos, c_local, c_sendrecv),
																				 m_attribute_curr(c_qos, c_remote, c_none),
																				 m_attribute_des(c_qos, c_mandatory, c_local, c_sendrecv),	
																				 m_attribute_des(c_qos, c_mandatory, c_remote, c_sendrecv)			
																			  });
					
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable
		
					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
					// Testbody
					
					// 	INVITE UE1
					vc_sdp_local := valueof(m_SDP_media_attr_preconditions(valueof(m_media_dynPT(PX_SIP_SDP_dyn, PX_SIP_SDP_encoding)), vc_userprofile, v_attribute_list));
					LibIms_Steps.f_setHeadersINVITE(vc_cSeq, c_userProfile_ISUP);
					f_SendINVITE(m_INVITE_Request_IMS(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via, vc_contact, omit, vc_route, vc_recordRoute, m_Supported_100rel_prec, omit, m_MBody_SDP(vc_sdp_local)));
					vc_iut_CSeq := vc_cSeq;
					
					f_awaitingResponse(mw_Response_Base(c_statusLine183,vc_callId, vc_cSeq));
					
					if (not(f_check_attribute(vc_sdp_remote, m_attribute_curr(c_qos, c_local, c_none)) and
							f_check_attribute(vc_sdp_remote, m_attribute_curr(c_qos, c_remote, c_none)) and
							f_check_attribute(vc_sdp_remote, m_attribute_des(c_qos, c_mandatory, c_local, c_sendrecv)) and
							f_check_attribute(vc_sdp_remote, m_attribute_des(c_qos, c_mandatory, c_remote, c_sendrecv)) and
							f_check_attribute(vc_sdp_remote, m_attribute_conf(c_qos, c_remote, c_sendrecv))
							)
						)
 					{setverdict(fail);
					log("FAIL: Attribute in 183 does not match");}
					
					LibIms_Steps.f_setHeadersPRACK(vc_cSeq);
					f_SendPRACK(m_PRACK_Request_Base(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via, vc_rAck));
					f_awaitingResponse(mw_Response_Base(c_statusLine200, vc_callId, vc_cSeq));
					
					vc_sdp_local := valueof(m_SDP_media_attr_preconditions(valueof(m_media_dynPT(PX_SIP_SDP_dyn, PX_SIP_SDP_encoding)), vc_userprofile, v_attribute_list_update));
					f_SendUPDATE(m_UPDATE_Request_Base(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via, vc_contact, m_MBody_SDP(vc_sdp_local)));
					f_awaitingResponse(mw_Response_Base(c_statusLine200, vc_callId, vc_cSeq));
					
					f_awaitingResponse(mw_Response_Base(c_statusLine180, vc_callId, vc_iut_CSeq));
					
					f_check_Ringing();
					
					f_awaitingResponse(mw_Response_Base(c_statusLine200, vc_callId, vc_iut_CSeq)); 
					
					f_SendACK(m_ACK_Request_Base(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via));		
					
					f_check_Conversation();
					
					//Send BYE and awaiting response
					f_terminateCall_IMS(vc_requestUri, vc_callId, vc_cSeq, vc_caller_From, vc_caller_To);
					
					f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());
					
					f_SIP_postamble_IMS1_withoutRegistration();
				} // end function f_IMS_TC_101_004
				
			} // end group TP101_SendingIAM

			group TP102_Sending_SAM {
@@ -217,10 +286,8 @@ module SipIsup_IMS_TCFunctions {
				
					// PREAMBLE
					// IMS component interface initialization
						// TODO check if initialization of interface profile is needed
						f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
						//Variables & defaults initialization
						f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY
@@ -322,10 +389,8 @@ module SipIsup_IMS_TCFunctions {
																			});
					// PREAMBLE
					// IMS component interface initialization
    					// TODO check if initialization of interface profile is needed
    					f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
    					//Variables & defaults initialization
    					f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY
@@ -425,10 +490,8 @@ module SipIsup_IMS_TCFunctions {
					
					// PREAMBLE
					// IMS component interface initialization
    					// TODO check if initialization of interface profile is needed
    					f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
    					//Variables & defaults initialization
    					f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY
@@ -464,10 +527,8 @@ module SipIsup_IMS_TCFunctions {

					// PREAMBLE
					// IMS component interface initialization
						// TODO check if initialization of interface profile is needed
						f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
						//Variables & defaults initialization
						f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY
@@ -519,12 +580,12 @@ module SipIsup_IMS_TCFunctions {
					//Specification of SDP atributes variants a_b_m_LINE values regarding TS186009-2 T.6
					
					var template SDP_attribute_list v_attribute_list[9] := {
        						({m_attribute_PCMU,m_attribute_PCMA}),
        						({m_attribute_PCMU_DPT,m_attribute_PCMA_DPT}),
        						({(m_attribute_PCMU,m_attribute_PCMA)}),
        						({(m_attribute_PCMU_DPT,m_attribute_PCMA_DPT)}),
        						({m_attribute_PCMA}),
        						({m_attribute_PCMA_DPT}),
        						({m_attribute_PCMU,m_attribute_PCMA}),
        						({m_attribute_PCMU,m_attribute_PCMA}),
        						({(m_attribute_PCMU,m_attribute_PCMA)}),
        						({(m_attribute_PCMU,m_attribute_PCMA)}),
        						({m_attribute_PCMA}),
        						({m_attribute_CLEARMODE_DPT}),
        						({m_attribute_CLEARMODE_DPT})};
@@ -556,10 +617,8 @@ module SipIsup_IMS_TCFunctions {
					
					// PREAMBLE
					// IMS component interface initialization
					// TODO check if initialization of interface profile is needed
					f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
					//Variables & defaults initialization
					f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY
@@ -603,10 +662,8 @@ module SipIsup_IMS_TCFunctions {

					// PREAMBLE
					// IMS component interface initialization
					// TODO check if initialization of interface profile is needed
					f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
					//Variables & defaults initialization
					f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY
@@ -642,10 +699,8 @@ module SipIsup_IMS_TCFunctions {

					// PREAMBLE
					// IMS component interface initialization
					// TODO check if initialization of interface profile is needed
					f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
					//Variables & defaults initialization
					f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY
@@ -692,10 +747,8 @@ module SipIsup_IMS_TCFunctions {

					// PREAMBLE
					// IMS component interface initialization
					// TODO check if initialization of interface profile is needed
					f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
					//Variables & defaults initialization
					f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY
@@ -739,10 +792,8 @@ module SipIsup_IMS_TCFunctions {

					// PREAMBLE
					// IMS component interface initialization
					// TODO check if initialization of interface profile is needed
					f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
					//Variables & defaults initialization
					f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY
@@ -789,10 +840,8 @@ module SipIsup_IMS_TCFunctions {

					// PREAMBLE
					// IMS component interface initialization
					// TODO check if initialization of interface profile is needed
					f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
					//Variables & defaults initialization
					f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY
@@ -838,10 +887,8 @@ module SipIsup_IMS_TCFunctions {

					// PREAMBLE
					// IMS component interface initialization
					// TODO check if initialization of interface profile is needed
					f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
					//Variables & defaults initialization
					f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY
@@ -893,10 +940,8 @@ module SipIsup_IMS_TCFunctions {
					
					// PREAMBLE
					// IMS component interface initialization
					// TODO check if initialization of interface profile is needed
					f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
					//Variables & defaults initialization
					f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY
@@ -937,10 +982,8 @@ module SipIsup_IMS_TCFunctions {

					// PREAMBLE
					// IMS component interface initialization
					// TODO check if initialization of interface profile is needed
					f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
					//Variables & defaults initialization
					f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());// sync point preamble done
					// TESTBODY
@@ -976,41 +1019,7 @@ module SipIsup_IMS_TCFunctions {
				*  @param	loc_CSeq_s - Transaction Id
				*/
				function f_IMS_TC_301_022(in CSeq p_cSeq_s) runs on ImsComponent {

					// PREAMBLE
					// IMS component interface initialization
					// TODO check if initialization of interface profile is needed
					f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
					//Variables & defaults initialization
					f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);

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

					//Awaiting INVITE	
					//f_awaitingINVITE(mw_INVITE_Request_Base); 
					f_awaitingINVITE(mw_INVITE_Request_IMS(*,*,*,*));
					//Check To header fields : format +CC+NDC+SN , use PIXIT
					//TODO Check/use right PIXIT
					if (not(match(vc_caller_To,mw_To_NameAddr_SipUrl(*,?/*PIXIT*/,?)))){setverdict (fail);}
					
					f_sendResponse(m_Response_18XonINVITE(c_statusLine180,vc_callId, vc_cSeq,vc_caller_From, vc_caller_To, vc_via,vc_contact));
					f_check_Ringing();
					f_sendResponse(m_Response_2xxonINVITE(c_statusLine200,vc_callId, vc_cSeq,vc_caller_From, vc_caller_To, vc_via,vc_contact,f_route(),valueof(m_mBody_SDP(vc_sdp_local))));
					f_awaitingACK(mw_ACK_Request_Base(vc_callId));
					f_check_Conversation();
					//await BYE and send 200 OK
					f_awaitingBYE_sendReply(mw_BYE_Request_Base(vc_callId));

					f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict());// sync point test body done

					// POSTAMBLE
					// send REGISTER, await 401, send REGISTER, await 200 OK 
					//f_RemoveRegistration(vc_cSeq);

	//				f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict());// sync point postamble done
					f_SIP_postamble_IMS1_withoutRegistration ()
	
					f_IMS_TC_301_021(p_cSeq_s);
				}// end function f_IMS_TC_301_022
					
			} // end group TP301_SendingINVITE
@@ -1042,10 +1051,8 @@ module SipIsup_IMS_TCFunctions {
					//}
					// PREAMBLE
					// IMS component interface initialization
					// TODO check if initialization of interface profile is needed
					f_init_interfaceprofile(c_interfaceProfile_IMS_SUT_PCSCF1);
					//Variables & defaults initialization
					f_IMS_preamble_woRegistration(c_userProfile_IBCFwithHomeUE, p_cSeq_s);
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_IMGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable

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