Loading AtsNIT_SipSip/ttcn/AtsNIT_SipSip_SS_TCFunctions.ttcn +440 −3 Original line number Diff line number Diff line Loading @@ -1614,6 +1614,10 @@ module AtsNIT_SipSip_SS_TCFunctions { // await ACK f_awaitingACK(mw_ACK_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // session termination //SendBYE and await response f_terminateCall_UE( vc_requestUri, Loading @@ -1623,8 +1627,6 @@ module AtsNIT_SipSip_SS_TCFunctions { vc_caller_To ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); Loading @@ -1633,6 +1635,441 @@ module AtsNIT_SipSip_SS_TCFunctions { }//end group TP2_4_SS_TIR group TP2_5_HOLD { /* * @desc This is the test case function (originating side) for AtsNIT_TC_SS___XXSSCH01 * @param p_CSeq_s Transaction Id */ function f_AtsNIT_TC_SS___XXSSCH01UE1(in CSeq p_cSeq_s) runs on ImsComponent { f_IMS_preamble_withRegistrationBasic(c_userProfile_UE1atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable // Testbody // prepare and send INVITE UE2@SUT LibIms_Steps.f_setHeadersINVITE( vc_cSeq, c_userProfile_UE2atSUThome ); f_SendINVITE(m_INVITE_Request_UE( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via, vc_contact, omit, vc_route, omit, m_MBody_SDP(vc_sdp_local) )); // await 180 response without // 100rel in require header field f_awaitingResponse(mw_Response_Require_ifpresent( c_statusLine180, vc_callId, vc_cSeq, mw_Require_not_100rel )); // await 200 OK response f_awaitingOkResponse(vc_cSeq); // send ACK f_SendACK(m_ACK_Request_Base( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via )); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // set HOLD f_SIP_modSessionDirection(m_attribute_sendonly); // handling of attribute in session f_SendUPDATE(m_UPDATE_Request_Base(vc_requestUri, vc_callId, p_cSeq_s, 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_SendACK(m_ACK_Request_Base(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via)); f_SIP_checkSDPrespDirection(mw_attribute_recvonly); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //await BYE and send 200OK f_awaitingBYE_sendReply(mw_BYE_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); } // end function f_AtsNIT_TC_SS___XXSSCH01UE1 /* * @desc This is the test case function (terminating side) for TC_SS___XXSSCH01 * @param p_CSeq_s Transaction Id */ function f_AtsNIT_TC_SS___XXSSCH01UE2(in CSeq p_cSeq_s) runs on ImsComponent { f_IMS_preamble_withRegistrationBasic(c_userProfile_UE2atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable // Testbody f_awaitingINVITE(mw_INVITE_Request_require( mw_Require_not_100rel )); f_sendResponse(m_Response_18XonINVITE_Require_ifpresent( c_statusLine180, vc_callId, vc_cSeq, vc_caller_From, vc_caller_To, vc_via, vc_contact, mw_Require_not_100rel )); f_sendResponse(m_Response_2xxonINVITE_UE( 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)) )); // await ACK f_awaitingACK(mw_ACK_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); //Awaiting UPDATE, reply 200 f_awaitingUPDATE(mw_UPDATE_Request_Base(vc_callId)); f_SIP_checksetSDPreqDirection(mw_attribute_sendonly,m_attribute_recvonly); // handling of attribute in media description f_sendResponse(m_Response_2xxonUPDATE(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_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //SendBYE and await response f_terminateCall_UE( vc_requestUri, vc_callId, vc_cSeq, vc_caller_From, vc_caller_To ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); } // end function f_AtsNIT_TC_SS___XXSSCH01UE2 /* * @desc This is the test case function (originating side) for AtsNIT_TC_SS___XXSSCH02 * @param p_CSeq_s Transaction Id */ function f_AtsNIT_TC_SS___XXSSCH02UE1(in CSeq p_cSeq_s) runs on ImsComponent { f_IMS_preamble_withRegistrationBasic(c_userProfile_UE1atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable // Testbody // prepare and send INVITE UE2@SUT LibIms_Steps.f_setHeadersINVITE( vc_cSeq, c_userProfile_UE2atSUThome ); f_SendINVITE(m_INVITE_Request_UE( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via, vc_contact, omit, vc_route, omit, m_MBody_SDP(vc_sdp_local) )); // await 180 response without // 100rel in require header field f_awaitingResponse(mw_Response_Require_ifpresent( c_statusLine180, vc_callId, vc_cSeq, mw_Require_not_100rel )); // await 200 OK response f_awaitingOkResponse(vc_cSeq); // send ACK f_SendACK(m_ACK_Request_Base( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via )); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // await HOLD, reply 200 f_awaitingUPDATE(mw_UPDATE_Request_Base(vc_callId)); f_SIP_checksetSDPreqDirection(mw_attribute_sendonly,m_attribute_recvonly); // handling of attribute in media description f_sendResponse(m_Response_2xxonUPDATE(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)); // set INACTIIVE f_SIP_modSessionDirection(m_attribute_inactive); // handling of attribute in session f_SendUPDATE(m_UPDATE_Request_Base(vc_requestUri, vc_callId, p_cSeq_s, 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_SendACK(m_ACK_Request_Base(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via)); f_SIP_checkSDPrespDirection(mw_attribute_inactive); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //await BYE and send 200OK f_awaitingBYE_sendReply(mw_BYE_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); } // end function f_AtsNIT_TC_SS___XXSSCH02UE1 /* * @desc This is the test case function (terminating side) for TC_SS___XXSSCH02 * @param p_CSeq_s Transaction Id */ function f_AtsNIT_TC_SS___XXSSCH02UE2(in CSeq p_cSeq_s) runs on ImsComponent { f_IMS_preamble_withRegistrationBasic(c_userProfile_UE2atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable // Testbody f_awaitingINVITE(mw_INVITE_Request_require( mw_Require_not_100rel )); f_sendResponse(m_Response_18XonINVITE_Require_ifpresent( c_statusLine180, vc_callId, vc_cSeq, vc_caller_From, vc_caller_To, vc_via, vc_contact, mw_Require_not_100rel )); f_sendResponse(m_Response_2xxonINVITE_UE( 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)) )); // await ACK f_awaitingACK(mw_ACK_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // SET HOLD f_SIP_modSessionDirection(m_attribute_sendonly); // handling of attribute in session f_SendUPDATE(m_UPDATE_Request_Base(vc_requestUri, vc_callId, p_cSeq_s, 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_SendACK(m_ACK_Request_Base(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via)); f_SIP_checkSDPrespDirection(mw_attribute_recvonly); //Awaiting UPDATE INACTIVE, reply 200 f_awaitingUPDATE(mw_UPDATE_Request_Base(vc_callId)); f_SIP_checksetSDPreqDirection(mw_attribute_inactive,m_attribute_inactive); // handling of attribute in media description f_sendResponse(m_Response_2xxonUPDATE(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_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //SendBYE and await response f_terminateCall_UE( vc_requestUri, vc_callId, vc_cSeq, vc_caller_From, vc_caller_To ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); } // end function f_AtsNIT_TC_SS___XXSSCH02UE2 /* * @desc This is the test case function (originating side) for AtsNIT_TC_SS___XXSSCH03 * @param p_CSeq_s Transaction Id */ function f_AtsNIT_TC_SS___XXSSCH03UE1(in CSeq p_cSeq_s) runs on ImsComponent { f_IMS_preamble_withRegistrationBasic(c_userProfile_UE1atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable // Testbody // prepare and send INVITE UE2@SUT LibIms_Steps.f_setHeadersINVITE( vc_cSeq, c_userProfile_UE2atSUThome ); f_SendINVITE(m_INVITE_Request_UE( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via, vc_contact, omit, vc_route, omit, m_MBody_SDP(vc_sdp_local) )); // await 180 response without // 100rel in require header field f_awaitingResponse(mw_Response_Require_ifpresent( c_statusLine180, vc_callId, vc_cSeq, mw_Require_not_100rel )); // await 200 OK response f_awaitingOkResponse(vc_cSeq); // send ACK f_SendACK(m_ACK_Request_Base( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via )); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // set HOLD f_SIP_modSessionDirection(m_attribute_sendonly); // handling of attribute in session f_SendUPDATE(m_UPDATE_Request_Base(vc_requestUri, vc_callId, p_cSeq_s, 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_SendACK(m_ACK_Request_Base(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via)); f_SIP_checkSDPrespDirection(mw_attribute_recvonly); // unset HOLD f_SIP_modSessionDirection(m_attribute_sendrecv); // handling of attribute in session f_SendUPDATE(m_UPDATE_Request_Base(vc_requestUri, vc_callId, p_cSeq_s, 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_SendACK(m_ACK_Request_Base(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via)); f_SIP_checkSDPrespDirection(mw_attribute_sendrecv); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //await BYE and send 200OK f_awaitingBYE_sendReply(mw_BYE_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); } // end function f_AtsNIT_TC_SS___XXSSCH03UE1 /* * @desc This is the test case function (terminating side) for TC_SS___XXSSCH03 * @param p_CSeq_s Transaction Id */ function f_AtsNIT_TC_SS___XXSSCH03UE2(in CSeq p_cSeq_s) runs on ImsComponent { f_IMS_preamble_withRegistrationBasic(c_userProfile_UE2atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable // Testbody f_awaitingINVITE(mw_INVITE_Request_require( mw_Require_not_100rel )); f_sendResponse(m_Response_18XonINVITE_Require_ifpresent( c_statusLine180, vc_callId, vc_cSeq, vc_caller_From, vc_caller_To, vc_via, vc_contact, mw_Require_not_100rel )); f_sendResponse(m_Response_2xxonINVITE_UE( 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)) )); // await ACK f_awaitingACK(mw_ACK_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); //Awaiting UPDATE, reply 200 f_awaitingUPDATE(mw_UPDATE_Request_Base(vc_callId)); f_SIP_checksetSDPreqDirection(mw_attribute_sendonly,m_attribute_recvonly); // handling of attribute in media description f_sendResponse(m_Response_2xxonUPDATE(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)); //Awaiting UPDATE (unset), reply 200 f_awaitingUPDATE(mw_UPDATE_Request_Base(vc_callId)); f_SIP_checksetSDPreqDirection(mw_attribute_sendrecv,m_attribute_sendrecv); // handling of attribute in media description f_sendResponse(m_Response_2xxonUPDATE(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_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //SendBYE and await response f_terminateCall_UE( vc_requestUri, vc_callId, vc_cSeq, vc_caller_From, vc_caller_To ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); } // end function f_AtsNIT_TC_SS___XXSSCH03UE2 }//end group TP2_5_HOLD group TP2_6_SS_CFU { Loading Loading
AtsNIT_SipSip/ttcn/AtsNIT_SipSip_SS_TCFunctions.ttcn +440 −3 Original line number Diff line number Diff line Loading @@ -1614,6 +1614,10 @@ module AtsNIT_SipSip_SS_TCFunctions { // await ACK f_awaitingACK(mw_ACK_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // session termination //SendBYE and await response f_terminateCall_UE( vc_requestUri, Loading @@ -1623,8 +1627,6 @@ module AtsNIT_SipSip_SS_TCFunctions { vc_caller_To ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); Loading @@ -1633,6 +1635,441 @@ module AtsNIT_SipSip_SS_TCFunctions { }//end group TP2_4_SS_TIR group TP2_5_HOLD { /* * @desc This is the test case function (originating side) for AtsNIT_TC_SS___XXSSCH01 * @param p_CSeq_s Transaction Id */ function f_AtsNIT_TC_SS___XXSSCH01UE1(in CSeq p_cSeq_s) runs on ImsComponent { f_IMS_preamble_withRegistrationBasic(c_userProfile_UE1atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable // Testbody // prepare and send INVITE UE2@SUT LibIms_Steps.f_setHeadersINVITE( vc_cSeq, c_userProfile_UE2atSUThome ); f_SendINVITE(m_INVITE_Request_UE( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via, vc_contact, omit, vc_route, omit, m_MBody_SDP(vc_sdp_local) )); // await 180 response without // 100rel in require header field f_awaitingResponse(mw_Response_Require_ifpresent( c_statusLine180, vc_callId, vc_cSeq, mw_Require_not_100rel )); // await 200 OK response f_awaitingOkResponse(vc_cSeq); // send ACK f_SendACK(m_ACK_Request_Base( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via )); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // set HOLD f_SIP_modSessionDirection(m_attribute_sendonly); // handling of attribute in session f_SendUPDATE(m_UPDATE_Request_Base(vc_requestUri, vc_callId, p_cSeq_s, 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_SendACK(m_ACK_Request_Base(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via)); f_SIP_checkSDPrespDirection(mw_attribute_recvonly); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //await BYE and send 200OK f_awaitingBYE_sendReply(mw_BYE_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); } // end function f_AtsNIT_TC_SS___XXSSCH01UE1 /* * @desc This is the test case function (terminating side) for TC_SS___XXSSCH01 * @param p_CSeq_s Transaction Id */ function f_AtsNIT_TC_SS___XXSSCH01UE2(in CSeq p_cSeq_s) runs on ImsComponent { f_IMS_preamble_withRegistrationBasic(c_userProfile_UE2atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable // Testbody f_awaitingINVITE(mw_INVITE_Request_require( mw_Require_not_100rel )); f_sendResponse(m_Response_18XonINVITE_Require_ifpresent( c_statusLine180, vc_callId, vc_cSeq, vc_caller_From, vc_caller_To, vc_via, vc_contact, mw_Require_not_100rel )); f_sendResponse(m_Response_2xxonINVITE_UE( 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)) )); // await ACK f_awaitingACK(mw_ACK_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); //Awaiting UPDATE, reply 200 f_awaitingUPDATE(mw_UPDATE_Request_Base(vc_callId)); f_SIP_checksetSDPreqDirection(mw_attribute_sendonly,m_attribute_recvonly); // handling of attribute in media description f_sendResponse(m_Response_2xxonUPDATE(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_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //SendBYE and await response f_terminateCall_UE( vc_requestUri, vc_callId, vc_cSeq, vc_caller_From, vc_caller_To ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); } // end function f_AtsNIT_TC_SS___XXSSCH01UE2 /* * @desc This is the test case function (originating side) for AtsNIT_TC_SS___XXSSCH02 * @param p_CSeq_s Transaction Id */ function f_AtsNIT_TC_SS___XXSSCH02UE1(in CSeq p_cSeq_s) runs on ImsComponent { f_IMS_preamble_withRegistrationBasic(c_userProfile_UE1atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable // Testbody // prepare and send INVITE UE2@SUT LibIms_Steps.f_setHeadersINVITE( vc_cSeq, c_userProfile_UE2atSUThome ); f_SendINVITE(m_INVITE_Request_UE( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via, vc_contact, omit, vc_route, omit, m_MBody_SDP(vc_sdp_local) )); // await 180 response without // 100rel in require header field f_awaitingResponse(mw_Response_Require_ifpresent( c_statusLine180, vc_callId, vc_cSeq, mw_Require_not_100rel )); // await 200 OK response f_awaitingOkResponse(vc_cSeq); // send ACK f_SendACK(m_ACK_Request_Base( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via )); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // await HOLD, reply 200 f_awaitingUPDATE(mw_UPDATE_Request_Base(vc_callId)); f_SIP_checksetSDPreqDirection(mw_attribute_sendonly,m_attribute_recvonly); // handling of attribute in media description f_sendResponse(m_Response_2xxonUPDATE(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)); // set INACTIIVE f_SIP_modSessionDirection(m_attribute_inactive); // handling of attribute in session f_SendUPDATE(m_UPDATE_Request_Base(vc_requestUri, vc_callId, p_cSeq_s, 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_SendACK(m_ACK_Request_Base(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via)); f_SIP_checkSDPrespDirection(mw_attribute_inactive); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //await BYE and send 200OK f_awaitingBYE_sendReply(mw_BYE_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); } // end function f_AtsNIT_TC_SS___XXSSCH02UE1 /* * @desc This is the test case function (terminating side) for TC_SS___XXSSCH02 * @param p_CSeq_s Transaction Id */ function f_AtsNIT_TC_SS___XXSSCH02UE2(in CSeq p_cSeq_s) runs on ImsComponent { f_IMS_preamble_withRegistrationBasic(c_userProfile_UE2atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable // Testbody f_awaitingINVITE(mw_INVITE_Request_require( mw_Require_not_100rel )); f_sendResponse(m_Response_18XonINVITE_Require_ifpresent( c_statusLine180, vc_callId, vc_cSeq, vc_caller_From, vc_caller_To, vc_via, vc_contact, mw_Require_not_100rel )); f_sendResponse(m_Response_2xxonINVITE_UE( 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)) )); // await ACK f_awaitingACK(mw_ACK_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // SET HOLD f_SIP_modSessionDirection(m_attribute_sendonly); // handling of attribute in session f_SendUPDATE(m_UPDATE_Request_Base(vc_requestUri, vc_callId, p_cSeq_s, 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_SendACK(m_ACK_Request_Base(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via)); f_SIP_checkSDPrespDirection(mw_attribute_recvonly); //Awaiting UPDATE INACTIVE, reply 200 f_awaitingUPDATE(mw_UPDATE_Request_Base(vc_callId)); f_SIP_checksetSDPreqDirection(mw_attribute_inactive,m_attribute_inactive); // handling of attribute in media description f_sendResponse(m_Response_2xxonUPDATE(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_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //SendBYE and await response f_terminateCall_UE( vc_requestUri, vc_callId, vc_cSeq, vc_caller_From, vc_caller_To ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); } // end function f_AtsNIT_TC_SS___XXSSCH02UE2 /* * @desc This is the test case function (originating side) for AtsNIT_TC_SS___XXSSCH03 * @param p_CSeq_s Transaction Id */ function f_AtsNIT_TC_SS___XXSSCH03UE1(in CSeq p_cSeq_s) runs on ImsComponent { f_IMS_preamble_withRegistrationBasic(c_userProfile_UE1atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable // Testbody // prepare and send INVITE UE2@SUT LibIms_Steps.f_setHeadersINVITE( vc_cSeq, c_userProfile_UE2atSUThome ); f_SendINVITE(m_INVITE_Request_UE( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via, vc_contact, omit, vc_route, omit, m_MBody_SDP(vc_sdp_local) )); // await 180 response without // 100rel in require header field f_awaitingResponse(mw_Response_Require_ifpresent( c_statusLine180, vc_callId, vc_cSeq, mw_Require_not_100rel )); // await 200 OK response f_awaitingOkResponse(vc_cSeq); // send ACK f_SendACK(m_ACK_Request_Base( vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via )); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // set HOLD f_SIP_modSessionDirection(m_attribute_sendonly); // handling of attribute in session f_SendUPDATE(m_UPDATE_Request_Base(vc_requestUri, vc_callId, p_cSeq_s, 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_SendACK(m_ACK_Request_Base(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via)); f_SIP_checkSDPrespDirection(mw_attribute_recvonly); // unset HOLD f_SIP_modSessionDirection(m_attribute_sendrecv); // handling of attribute in session f_SendUPDATE(m_UPDATE_Request_Base(vc_requestUri, vc_callId, p_cSeq_s, 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_SendACK(m_ACK_Request_Base(vc_requestUri, vc_callId, vc_cSeq, vc_from, vc_to, vc_via)); f_SIP_checkSDPrespDirection(mw_attribute_sendrecv); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //await BYE and send 200OK f_awaitingBYE_sendReply(mw_BYE_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); } // end function f_AtsNIT_TC_SS___XXSSCH03UE1 /* * @desc This is the test case function (terminating side) for TC_SS___XXSSCH03 * @param p_CSeq_s Transaction Id */ function f_AtsNIT_TC_SS___XXSSCH03UE2(in CSeq p_cSeq_s) runs on ImsComponent { f_IMS_preamble_withRegistrationBasic(c_userProfile_UE2atSUThome, p_cSeq_s); // assignment of PIXIT values to component variable // Testbody f_awaitingINVITE(mw_INVITE_Request_require( mw_Require_not_100rel )); f_sendResponse(m_Response_18XonINVITE_Require_ifpresent( c_statusLine180, vc_callId, vc_cSeq, vc_caller_From, vc_caller_To, vc_via, vc_contact, mw_Require_not_100rel )); f_sendResponse(m_Response_2xxonINVITE_UE( 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)) )); // await ACK f_awaitingACK(mw_ACK_Request_Base(vc_callId)); f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); //Awaiting UPDATE, reply 200 f_awaitingUPDATE(mw_UPDATE_Request_Base(vc_callId)); f_SIP_checksetSDPreqDirection(mw_attribute_sendonly,m_attribute_recvonly); // handling of attribute in media description f_sendResponse(m_Response_2xxonUPDATE(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)); //Awaiting UPDATE (unset), reply 200 f_awaitingUPDATE(mw_UPDATE_Request_Base(vc_callId)); f_SIP_checksetSDPreqDirection(mw_attribute_sendrecv,m_attribute_sendrecv); // handling of attribute in media description f_sendResponse(m_Response_2xxonUPDATE(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_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); //SendBYE and await response f_terminateCall_UE( vc_requestUri, vc_callId, vc_cSeq, vc_caller_From, vc_caller_To ); f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // postamble f_IMS_postamble_withDeRegistration(vc_cSeq); } // end function f_AtsNIT_TC_SS___XXSSCH03UE2 }//end group TP2_5_HOLD group TP2_6_SS_CFU { Loading