Commit a4f0b6fa authored by rennoch's avatar rennoch
Browse files

added tests in group 508

parent 34aaaefb
Loading
Loading
Loading
Loading
+133 −4
Original line number Diff line number Diff line
@@ -10807,18 +10807,30 @@ module SipIsup_IMS_TCFunctions {
			} // end group TP507_MCID
			
			group TP508_SUB {

				/* 
				* @desc		This is the test case function (SIP side) for TC_508_001
				* @param	p_CSeq_s Transaction Id
				*/
				function f_IMS_TC_508_001(in CSeq p_cSeq_s) runs on ImsComponent {
					
					var NameAddr v_PAsserted;
					
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_MGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable
		
					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
					// Testbody
					
					//Prepare PAsserted parameter
					// sip uri does not expect isub parameter option
					//PAsserted should be tel uri, because of isub parameter, see RFC3966
					v_PAsserted:=PX_SIP_NameAddrTel_PAsserted;
					//v_PAsserted.addrSpec.scheme:=c_telScheme;
					v_PAsserted.addrSpec.urlParameters:=m_semicolonParams_isub(PX_SIP_NameAddr_PAsserted.addrSpec.userInfo.userOrTelephoneSubscriber & c_AT & 
												 PX_SIP_NameAddr_PAsserted.addrSpec.hostPort.host);						
					
					
					// 	INVITE UE1
					LibIms_Steps.f_setHeadersINVITE(vc_cSeq, c_userProfile_ISUP);
					f_SendINVITE(
@@ -10833,9 +10845,7 @@ module SipIsup_IMS_TCFunctions {
							m_Require_prec, 
							vc_route, 
							vc_recordRoute, 
							/*TODO check passerted with isub=...
							 */ 
							m_PAssertedID(m_AddrUnion_NameAddr(PX_SIP_NameAddr_PAsserted)), //PAsserted
							m_PAssertedID(m_AddrUnion_NameAddr(v_PAsserted)), //PAsserted
							omit, //Privacy
							omit, //Supported
							omit, //ChargingVector
@@ -10859,6 +10869,125 @@ module SipIsup_IMS_TCFunctions {
					
					f_SIP_postamble_IMS1_withoutRegistration();
				} // end function f_IMS_TC_508_001

    			/* 
    			* @desc		This is the test case function (SIP side) for TC_508_002
    			* @param	p_CSeq_s Transaction Id
    			*/
    			function f_IMS_TC_508_002(in CSeq p_cSeq_s) runs on ImsComponent {
    					
    				//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
    				f_IMS_preamble_MGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable
    		
    				f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
    				// Testbody
    					
    				// 	INVITE UE1
    				LibIms_Steps.f_setHeadersINVITE(vc_cSeq, c_userProfile_ISUP);
    				
    				//Prepare isub parameter
    				//sip uri does not expect isub parameter option
    				//should be tel uri, because of isub parameter, see RFC3966
					vc_requestUri.scheme:=c_telScheme;
					vc_requestUri.urlParameters:={
						({id:="isub",paramValue:=vc_requestUri.userInfo.userOrTelephoneSubscriber & c_AT & 
												 vc_requestUri.hostPort.host	})
					};
    				
    				vc_to.addressField.nameAddr.addrSpec.scheme:=c_telScheme;
    				vc_to.addressField.nameAddr.addrSpec.urlParameters:={
    					({id:="isub",paramValue:=vc_to.addressField.nameAddr.addrSpec.userInfo.userOrTelephoneSubscriber & c_AT & 
    		 									 vc_to.addressField.nameAddr.addrSpec.hostPort.host	})
    				};
    				
    				f_SendINVITE(
    					m_INVITE_Request_PAsserted_Privacy_IMS(
    						vc_requestUri, 
    						vc_callId, 
    						vc_cSeq, 
    						vc_from, 
    						vc_to, 
    						vc_via, 
    						vc_contact, 
    						m_Require_prec, 
    						vc_route, 
    						vc_recordRoute, 
    						omit, //PAsserted
    						omit, //Privacy
    						omit, //Supported
    						omit, //ChargingVector
    						m_MBody_SDP(vc_sdp_local)
    					)
    				);
    					
    				f_awaitingResponse(mw_Response_Base(c_statusLine180,vc_callId, vc_cSeq));
    					
    				f_check_Ringing();
    					
    				f_awaitingResponse(mw_Response_Base(c_statusLine200,vc_callId, vc_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_508_002
    			
				/* 
				* @desc		This is the test case function (SIP side) for TC_508_003
				* @param	p_CSeq_s Transaction Id
				*/
				function f_IMS_TC_508_003(in CSeq p_cSeq_s) runs on ImsComponent {
					
					//c_userProfile_ICSCFwithHomeUE or c_userProfile_IBCFwithHomeUE
					f_IMS_preamble_MGCF(c_userProfile_ICSCFwithHomeUE, p_cSeq_s); // assignment of PIXIT values to component variable
		
					f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict());
					// Testbody
					
					// 	INVITE UE1
					LibIms_Steps.f_setHeadersINVITE(vc_cSeq, c_userProfile_ISUP);
					f_SendINVITE(
						m_INVITE_Request_PAsserted_Privacy_IMS(
							vc_requestUri, 
							vc_callId, 
							vc_cSeq, 
							vc_from, 
							vc_to, 
							vc_via, 
							vc_contact, 
							m_Require_prec, 
							vc_route, 
							vc_recordRoute, 
							omit, //PAsserted
							omit, //Privacy
							omit, //Supported
							omit, //ChargingVector
							m_MBody_SDP(vc_sdp_local)
						)
					);
					
					f_awaitingResponse(mw_Response_Base(c_statusLine180,vc_callId, vc_cSeq));
					
					f_check_Ringing();
					
					f_awaitingResponse(mw_Response_PAsserted_Privacy_History(c_statusLine200,vc_callId, vc_cSeq,mw_PAssertedID(mw_PAssertedIDValue(mw_SipUrl_urlParam(m_semicolonParams_isub(*)))),*,*));					
					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_508_003    			
			
			} // end group TP508_SUB
			
			group TP509_CDIV {