/**
* @author STF 370
* @version $Id: $
* @desc This module provides common functions which describes behavior for each TP reference.
*/
module AtsImsIot_Behavior {
import from AtsImsIot_TestSystem {
type ImsInterfaceMonitor, ImsTestCoordinator;
}
import from LibIot_PIXITS {modulepar PX_MAX_MSG_WAIT;}
import from AtsImsIot_Templates {template all;}
import from AtsImsIot_TypesAndValues {
type SipMessage, SipMessageList, SkipType;
}
import from LibIms_UpperTester {type ImsUserInfo;}
import from LibIot_TypesAndValues {type SetFilterReq, SetFilterRsp;}
import from LibIot_Functions {
function f_setConformanceVerdict, f_setIotVerdictFAIL;
}
import from LibSip_SIPTypesAndValues all;
import from LibSip_Templates all;
import from AtsImsIot_Functions all;
import from LibIot_PIXITS {modulepar PX_EUT_A, PX_EUT_B;}
group checks {
group checksTC_IMS_MESS_0001{
/**
* @desc
* TP_IMS_4002_01 in CFW step 3 (MESSAGE)
ensure that {
* when { UE_A sends a MESSAGE to UE_B containing a Message_Body
* greater than 1300 bytes }
then { IMS_B receives the MESSAGE
* containing the Message_Body greater than 1300 bytes }
}
*/
function f_mtc_check_TP_IMS_4002_01_gm(ImsInterfaceMonitor p_monitorCompRef)
runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_4002_01(?))},//? CallId can be checked
{mw_SipRequest(mw_MESSAGE_Request_Base(?))},
{0,omit},
"TP_IMS_4002_01_gm",
false,
false
)
);
p_monitorCompRef.done;
}
function f_mtc_check_TP_IMS_4002_01_ic(ImsInterfaceMonitor p_monitorCompRef)
runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_4002_01(?))},//? CallId can be checked
{mw_SipRequest(mw_MESSAGE_Request_Base(?))},
{0, omit},
"TP_IMS_4002_01_ic",
false,
false
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_REG_0001 {
/**
* @desc Starts monitor component behavior for TP_IMS_5011_01
* the on Gm-interface
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5011_01_gm(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5011_01_gm)},
{mw_SipRequest(mw_REGISTER_Request_Base)},
{0, omit},
"TP_IMS_5011_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5011_01
* on the Mw-interface
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5011_01_ic(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
var charstring v_EUT_A_Addr := f_GetEUTPcscfAddress(PX_EUT_A);
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5011_01p_ic(v_EUT_A_Addr))},
{
mw_SipRequest(mdw_TP_IMS_5011_01f_ic),
mw_SipRequest(mw_REGISTER_Request_Base)
},
{0, omit},
"TP_IMS_5011_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5089_01 (gm)
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5089_01_gm_when (
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_REGISTER_Request_Base)},
{},
{0, omit},
"TP_IMS_5089_01_gm_when",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5011_02 (gm)
* the on Gm-interface
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5011_02_gm(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5011_02_gm)},
{mw_SipRequest(mw_REGISTER_Request_Base)},
{0, omit},
"TP_IMS_5011_02_gm",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5011_02 (mw)
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5011_02_ic(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
var charstring v_EUT_A_Addr := f_GetEUTPcscfAddress(PX_EUT_A);
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5011_02p_ic(v_EUT_A_Addr))},
{mw_SipRequest(mdw_TP_IMS_5011_02f_ic),
mw_SipRequest(mw_REGISTER_Request_Base)},
{0, omit},
"TP_IMS_5011_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5089_01 (when)
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5089_01_ic_when(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5089_01_ic_when)},
{mw_SipRequest(mw_REGISTER_Request_Base)},
{0, omit},
"TP_IMS_5089_01 (when)",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5089_01 (then)
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5089_01_ic_then(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5089_01_ic)},
{mw_SipResponse (mw_401Unauthorized_Base)},
{0, omit},
"TP_IMS_5089_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5092_01 (gm)
* the on Gm-interface
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5092_01_gm(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5011_02_gm)},
{mw_SipRequest(mw_REGISTER_Request_Base)},
{0, omit},
"TP_IMS_5092_01_gm",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5092_01 (when)
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5092_01_ic_when(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5092_01_ic_when)},
{mw_SipRequest(mw_REGISTER_Request_Base)},
{0, omit},
"TP_IMS_5092_01 (when)",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5092_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5092_01_ic(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
var charstring v_EUT_A_Addr := f_GetEUTPcscfAddress(PX_EUT_A);
var template SipUrl v_eutBUri := mw_SipUrl_Host(f_GetEUTScscfAddress(PX_EUT_B));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5092_01_ic(v_EUT_A_Addr, v_eutBUri))},
{mw_SipResponse (mw_200OK_Base)},
{0, omit},
"TP_IMS_5092_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5044_01 (when)
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5044_01_ic_when(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator return Response {
var template SipUrl v_eutBUri := mw_SipUrl_Host(f_GetEUTScscfAddress(PX_EUT_B));
var SipMessage v_sip := {response := valueof(m_Response_Dummy)};
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_200OK_Base)},
{},
{0, omit},
"TP_IMS_5044_01 (when)",
true,
p_checkMessage
)
);
p_monitorCompRef.done;
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
return v_sip.response;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5044_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5044_01_ic(
ImsInterfaceMonitor p_monitorCompRef, Response p_200OK, boolean p_checkMessage
) runs on ImsTestCoordinator {
var charstring v_UEB_PublicId := f_GetUEPublicId(PX_EUT_B);
var template SipUrl v_eutAUri := mw_SipUrl_Host(f_GetEUTPcscfAddress(PX_EUT_A));
var SipMessage v_sip := {request := valueof(m_INVITE_Dummy)};
var charstring v_Epires200OK;
var charstring v_EpiresSubscribe;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5044_01_ic(?, v_eutAUri, v_UEB_PublicId))},
{mw_SipRequest(mw_SUBSCRIBE_Request_Base)},
{0, omit},
"TP_IMS_5044_01",
true,
p_checkMessage
)
);
p_monitorCompRef.done;
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
// Check that the expires header is set to "a value greater than the one
// in the Expires_header of the 200_response"
if(ispresent(p_200OK.msgHeader.expires)) {
v_Epires200OK := p_200OK.msgHeader.expires.deltaSec;
v_EpiresSubscribe := v_sip.request.msgHeader.expires.deltaSec;
if (str2int(v_EpiresSubscribe) > str2int(v_Epires200OK)) {
f_setIotVerdictFAIL("TP_IMS_5044_01 - Expires_header of subscribe is NOT greater than the Expires_header of 200_response.");
}
}
}
/**
* @desc Starts monitor component behavior for TP_IMS_5096_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5096_01_ic_when(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator return Request {
var SipMessage v_sip := {request := valueof(m_INVITE_Dummy)};
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5096_01_ic_when)},
{mw_SipRequest(mw_SUBSCRIBE_Request_Base)},
{0, omit},
"TP_IMS_5096_01 (when)",
true,
p_checkMessage
)
);
p_monitorCompRef.done;
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
return v_sip.request;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5096_01
*/
function f_mtc_check_TP_IMS_5096_01_ic(
ImsInterfaceMonitor p_monitorCompRef, Request p_Subscribe, boolean p_checkMessage
) runs on ImsTestCoordinator
{
var SipMessage v_sip := {request := valueof(m_INVITE_Dummy)};
var charstring v_Epires200OK;
var charstring v_EpiresSubscribe;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_200OK_Base), mw_SipResponse(mw_202Accepted_Base)},
{},
{0, omit},
"TP_IMS_5096_01",
true,
p_checkMessage
)
);
p_monitorCompRef.done;
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
if(ispresent(v_sip.response.msgHeader.expires)) {
// Check that the message contains "Expires_header indicating the same or
// lower expiry time than specified in the initial SUBSCRIBE"
v_Epires200OK := v_sip.response.msgHeader.expires.deltaSec;
v_EpiresSubscribe := p_Subscribe.msgHeader.expires.deltaSec;
if (str2int(v_Epires200OK) <= str2int(v_EpiresSubscribe)) {
f_setIotVerdictFAIL("TP_IMS_5096_01 - - Expires_header Expires_header of 200_response is NOT the same or lower than the Expires_header of subscribe.");
}
}
}
} // group
group checksTC_IMS_REG_0002{
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5203_01_gm(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator {
// Check that the UE sends any register
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_REGISTER_Request_Base)},
{},
{0, omit},
"TP_IMS_5203_01",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5203_01_ic(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator return Request {
var SipMessage v_sip := {request := valueof(m_INVITE_Dummy)};
//Get first Register
//var charstring v_EUT_A_Addr := f_GetEUTAddress(PX_EUT_A);
var Request v_RegisterStep4, v_RegisterStep2;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_REGISTER_Request_Base)},
{},
{0, omit},
"TP_IMS_5203_01 first register",
true,
false
)
);
p_monitorCompRef.done;
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
v_RegisterStep2 := v_sip.request;
//Get second Register
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_REGISTER_Request_Base)},
{},
{0, omit},
"TP_IMS_5203_01 second register",
true,
false
)
);
p_monitorCompRef.done;
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
// TODO: Currently we don't check anything, just that IMS-A sent 2 consecutive Registers
v_RegisterStep4 := v_sip.request;
return v_RegisterStep4;
}
} // group
group checksTC_IMS_REG_0002H{
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5402_01_gm(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator {
// Check that the UE sends any register
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_REGISTER_Request_Base)},
{},
{0, omit},
"TP_IMS_5203_01",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5402_01_ic(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator return Request {
var SipMessage v_sip := {request := valueof(m_INVITE_Dummy)};
//Get first Register
//var charstring v_EUT_A_Addr := f_GetEUTAddress(PX_EUT_A);
var Request v_RegisterStep4, v_RegisterStep2;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_REGISTER_Request_Base)},
{},
{0, omit},
"TP_IMS_5203_01 first register",
true,
false
)
);
p_monitorCompRef.done;
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
v_RegisterStep2 := v_sip.request;
//Get second Register
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_REGISTER_Request_Base)},
{},
{0, omit},
"TP_IMS_5203_01 second register",
true,
false
)
);
p_monitorCompRef.done;
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
v_RegisterStep4 := v_sip.request;
// Check that IMS_A sends the original Register to
// another entrypoint of IMS-B
if (not (match (v_RegisterStep4.msgHeader, v_RegisterStep2.msgHeader))){
// Headers differ
f_setIotVerdictFAIL("TP_IMS_5203_01");
}
if (match (v_RegisterStep4.requestLine, v_RegisterStep4.requestLine)){
// IMS-A used same entrypoint
f_setIotVerdictFAIL("TP_IMS_5203_01");
}
return v_RegisterStep4;
}
} // group
group checksTC_IMS_REG_0003{
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5129_01_gm(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
// Check that the UE sends any register
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_REGISTER_Request_Base)},
{},
{0, omit},
"TP_IMS_5129_01 (gm)",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5129_01_ic_when(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
// Check that the IMS_A forwards register from UE_B
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_REGISTER_Request_Base)},
{},
{0, omit},
"TP_IMS_5129_01 (mw-when)",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5129_01_ic(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
var SipMessage v_sip := {request := valueof(m_INVITE_Dummy)};
p_monitorCompRef.start(
// Check that IMS_B responds with 403 forbidden
f_imsIot_receive(
{mw_SipResponse(mw_403Forbidden_Base)},
{},
{0, omit},
"TP_IMS_5129_01 (mw)",
true,
p_checkMessage
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_REG_0003H{
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5411_01_gm(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
// Check that the UE sends any register
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_REGISTER_Request_Base)},
{},
{0, omit},
"TP_IMS_5411_01 (gm)",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5411_01_ic_when(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
// Check that the IMS_A forwards register from UE_B
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_REGISTER_Request_Base)},
{},
{0, omit},
"TP_IMS_5411_01 (mw-when)",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5411_01_ic(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_403Forbidden_Base)},
{},
{0, omit},
"TP_IMS_5411_01 (mw)",
true,
p_checkMessage
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_REG_0004 {
/**
* @desc Starts monitor component behavior for TP_IMS_5088_01 (gm)
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5088_01_gm(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5088_01_gm)},
{mw_SipRequest(mw_REGISTER_Request_Base)},
{0, omit},
"TP_IMS_5088_01 (gm)",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5088_01 (mw)
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5088_01_ic(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_eutAUri := mw_SipUrl_Host(f_GetEUTPcscfAddress(PX_EUT_A));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5088_01_ic(?, v_eutAUri))},
{mw_SipRequest(mw_NOTIFY_Request_Base(*))},
{0, omit},
"TP_IMS_5088_01_ic",
false,
p_checkMessage
)
);
}
} // group
group checksTC_IMS_REG_0005{
/**
* @desc Starts monitor component behavior for TP_IMS_5093_01 (mw)
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5093_01_UE_ic(
ImsInterfaceMonitor p_monitorCompRef, ImsUserInfo v_anyValidUser, boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_request_uri := mw_SipUrl_Number(v_anyValidUser.publicId);
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5093_01_UE_ic(?, v_request_uri))},
{mw_SipRequest(mw_NOTIFY_Request_Base(?))},
{0, omit},
"TP_IMS_5093_01_ic",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5093_01 (mw)
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5093_01_IMS_ic(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_request_uri := mw_SipUrl_Host(f_GetEUTPcscfAddress(PX_EUT_A));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5093_01_IMS_ic(?, v_request_uri))},
{mw_SipRequest(mw_NOTIFY_Request_Base(?))},
{0, omit},
"TP_IMS_5093_01_ic",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
} // end group
group checksTC_IMS_REG_0006{
/**
* @desc Starts monitor component behavior for TP_IMS_5094_01 (mw)
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5094_01_UE(
ImsInterfaceMonitor p_monitorCompRef, ImsUserInfo v_anyValidUser, boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_request_uri := mw_SipUrl_Number(v_anyValidUser.publicId);
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5094_01_UE(?, v_request_uri))},
{mw_SipRequest(mw_NOTIFY_Request_Base(?))},
{0, omit},
"TP_IMS_5094_01_ic",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5094_01 (mw)
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5094_01_IMS(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_request_uri := mw_SipUrl_Host(f_GetEUTPcscfAddress(PX_EUT_A));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5094_01_IMS_ic(?, v_request_uri))},
{mw_SipRequest(mw_NOTIFY_Request_Base(?))},
{0, omit},
"TP_IMS_5094_01_ic",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
} // end group
group checksTC_IMS_REG_0007 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5134_01_gm(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_REGISTER_Request_Base)},
{},
{0, omit},
"TP_IMS_5134_01 (gm)",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5134_01_ic(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
var charstring v_IBPC := f_GetEUTIbcfAddress(PX_EUT_A);
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5134_01_ic(v_IBPC))},
{mw_SipRequest(mw_REGISTER_Request_Base)},
{0, omit},
"TP_IMS_5134_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
// fetch second register
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5134_01_ic(v_IBPC))},
{mw_SipRequest(mw_REGISTER_Request_Base)},
{0, omit},
"TP_IMS_5134_01",
true,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5405_01_gm(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_SUBSCRIBE_Request_Base)},
{},
{0, omit},
"TP_IMS_5405_01 (gm)",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5405_01_ic(
ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage
) runs on ImsTestCoordinator {
// check 1st SUBSCRIBE (step 10)
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5405_01_ic)},
{mw_SipRequest(mw_SUBSCRIBE_Request_Base)},
{0, omit},
"TP_IMS_5405_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
// check 2nd SUBSCRIBE (step 15)
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5405_01_ic)},
{mw_SipRequest(mw_SUBSCRIBE_Request_Base)},
{0, omit},
"TP_IMS_5405_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_CALL_0001 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5097_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var charstring v_EUT_A_Addr := f_GetEUTScscfAddress(PX_EUT_A);
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5097_01_ic((mw_SipUrl_Host(v_EUT_A_Addr),
mw_SipUrl_Host(f_GetEUTScscfIpAddress(PX_EUT_A))) ))},
{},
{0, omit},
"TP_IMS_5097_01",
true,
p_checkMessage
)
);
p_monitorCompRef.done;
} //function
/**
* @desc Starts monitor component behavior for TP_IMS_5097_02
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_02_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5097_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5097_02
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_02_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5097_02_ic(mw_SIP_URI_Base, mw_TEL_URI_Base))},
{mw_SipRequest(mw_INVITE_Request_Base)},
{0, omit},
"TP_IMS_5097_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5097_04
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_04_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5097_04_gm(mw_TEL_URI_Base))},//TODO check TEL_URI of UE_B
{mw_SipRequest(mw_INVITE_Request_Base)},
{0, omit},
"TP_IMS_5097_04",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5097_04
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_04_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5097_04_ic(mw_SIP_URI_Base))},//TODO check SIP_URI of UE_B
{mw_SipRequest(mw_INVITE_Request_Base)},
{0, omit},
"TP_IMS_5097_04",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5107_02_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_ACK_Request_Base(?))},
{},
{0, omit},
"TP_IMS_5107_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5107_02_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var charstring v_EUT_A_Addr := f_GetEUTScscfAddress(PX_EUT_A);
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5107_02_ic(?, mw_SipUrl_Host(v_EUT_A_Addr)))},
{},
{0, omit},
"TP_IMS_5107_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
} //function
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5107_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_BYE_Request_Base(?))},
{},
{0, omit},
"TP_IMS_5107_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5107_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var charstring v_EUT_A_Addr := f_GetEUTScscfAddress(PX_EUT_A);
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5107_01_ic(?, mw_SipUrl_Host(v_EUT_A_Addr)))},
{},
{0, omit},
"TP_IMS_5107_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
} //function
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5115_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_180Ringing_Base)},
{},
{0, omit},
"TP_IMS_5115_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5115_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5115_01_ic)},
{mw_SipResponse(mw_180Ringing_Base)},
{0, omit},
"TP_IMS_5115_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5115_02_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_200OK_Base)},
{},
{0, omit},
"TP_IMS_5115_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5115_02_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5115_02_ic)},
{mw_SipResponse(mw_200OK_Base)},
{0, omit},
"TP_IMS_5115_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5115_03_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_180Ringing_Base)},
{},
{0, omit},
"TP_IMS_5115_03",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5115_03_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5115_03_ic(mw_SIP_URI_Base, mw_TEL_URI_Base))},
{mw_SipResponse(mw_180Ringing_Base)},
{0, omit},
"TP_IMS_5115_03",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5115_04_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_200OK_Base)},
{},
{0, omit},
"TP_IMS_5115_04",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5115_04_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5115_04_ic(mw_SIP_URI_Base, mw_TEL_URI_Base))},
{mw_SipResponse(mw_200OK_Base)},
{0, omit},
"TP_IMS_5115_04",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5131_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_180Ringing_Base)},
{},
{0, omit},
"TP_IMS_5131_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5131_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5131_01_ic)},
{mw_SipResponse(mw_180Ringing_Base)},
{0, omit},
"TP_IMS_5131_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5131_02_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_200OK_Base)},
{},
{0, omit},
"TP_IMS_5131_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5131_02_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5131_02_ic)},
{mw_SipResponse(mw_200OK_Base)},
{0, omit},
"TP_IMS_5131_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_CALL_0001F {
/*functions already used in test TC_IMS_CALL_0001
* f_mtc_check_TP_IMS_5097_01_gm
* f_mtc_check_TP_IMS_5097_01_ic
* f_mtc_check_TP_IMS_5107_01_gm
* f_mtc_check_TP_IMS_5107_01_ic
* f_mtc_check_TP_IMS_5107_02_gm
* f_mtc_check_TP_IMS_5107_02_ic
* f_mtc_check_TP_IMS_5115_01_gm
* f_mtc_check_TP_IMS_5115_01_ic
* f_mtc_check_TP_IMS_5115_02_gm
* f_mtc_check_TP_IMS_5115_02_ic
* f_mtc_check_TP_IMS_5131_01_gm
* f_mtc_check_TP_IMS_5131_01_ic
* f_mtc_check_TP_IMS_5131_02_gm
* f_mtc_check_TP_IMS_5131_02_ic
*
*/
} // group
group checksTC_IMS_CALL_0002 {
/*functions already used in test TC_IMS_CALL_0001
* f_mtc_check_TP_IMS_5097_01_gm
* f_mtc_check_TP_IMS_5097_01_ic
* f_mtc_check_TP_IMS_5097_02_gm
* f_mtc_check_TP_IMS_5097_02_ic
* f_mtc_check_TP_IMS_5107_01_gm
* f_mtc_check_TP_IMS_5107_01_ic
* f_mtc_check_TP_IMS_5107_02_gm
* f_mtc_check_TP_IMS_5107_02_ic
* f_mtc_check_TP_IMS_5115_01_gm
* f_mtc_check_TP_IMS_5115_01_ic
* f_mtc_check_TP_IMS_5115_02_gm
* f_mtc_check_TP_IMS_5115_02_ic
* f_mtc_check_TP_IMS_5115_03_gm
* f_mtc_check_TP_IMS_5115_03_ic
* f_mtc_check_TP_IMS_5115_04_gm
* f_mtc_check_TP_IMS_5115_04_ic
* f_mtc_check_TP_IMS_5131_01_gm
* f_mtc_check_TP_IMS_5131_01_ic
* f_mtc_check_TP_IMS_5131_02_gm
* f_mtc_check_TP_IMS_5131_02_ic
*
*/
} // group
group checksTC_IMS_CALL_0003 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5108_05_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5108_05",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5108_05_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5108_05",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_404NotFound_Base)},
{},
{0, omit},
"TP_IMS_5108_05",
false,
false
)
);
p_monitorCompRef.done;
} //function
} // group
group checksTC_IMS_CALL_0004 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5132_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5132_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5132_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5132_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_404Or604NotFound_Base)},
{},
{0, omit},
"TP_IMS_5132_01",
false,
false
)
);
p_monitorCompRef.done;
} //function
} // group
group checksTC_IMS_CALL_0005 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5133_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5133_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5133_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5133_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_4XX_Base)},
{},
{0, omit},
"TP_IMS_5133_01",
false,
false
)
);
p_monitorCompRef.done;
} //function
} // group
group checksTC_IMS_CALL_0006 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5109_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5109_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5109_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5109_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_408Or5XX_Base)},
{},
{0, omit},
"TP_IMS_5109_01",
false,
false
)
);
p_monitorCompRef.done;
} //function
} // group
group checksTC_IMS_CALL_0007 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5055_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_180Ringing_Base)},
{},
{0, omit},
"TP_IMS_5055_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5055_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_pcscfEutAUrl := mw_SipUrl_Host(f_GetEUTPcscfAddress(PX_EUT_A));
var ImsUserInfo v_user := f_getAnyValidUser(PX_EUT_A);
var template SipUrl v_UserEutAUrl := mw_SipUrl_Host(v_user.domain);
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5055_01_ic(v_pcscfEutAUrl, v_UserEutAUrl))},
{mw_SipResponse(mw_180Ringing_Base)},
{0, omit},
"TP_IMS_5055_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5055_02_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_200OK_Base)},
{},
{0, omit},
"TP_IMS_5055_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5055_02_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_pcscfEutAUrl := mw_SipUrl_Host(f_GetEUTPcscfAddress(PX_EUT_A));
var ImsUserInfo v_user := f_getAnyValidUser(PX_EUT_A);
var template SipUrl v_UserEutAUrl := mw_SipUrl_Host(v_user.domain);
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5055_02_ic(v_pcscfEutAUrl, v_UserEutAUrl))},
{mw_SipResponse(mw_200OK_Base)},
{0, omit},
"TP_IMS_5055_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5067_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5067_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5067_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5067_01_ic)},
{mw_SipRequest(mw_INVITE_Request_Base)},
{0, omit},
"TP_IMS_5067_01",
true, //NOTE: later check in 5108_01 of same icid value
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5070_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5070_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5070_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_100Trying_Base)},
{},
{0, omit},
"TP_IMS_5070_01",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5108_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5108_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_SCSCF_IMS_B := mw_SipUrl_Host(f_GetEUTScscfAddress(PX_EUT_B));
var SemicolonParam_List p_paramList;
var GenericParam p_param;
var SipMessage v_sip := {request := valueof(m_INVITE_Dummy)};
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip); //NOTE: icid value from 5067_01
log("### f_mtc_check_TP_IMS_5108_01_ic: v_sip=", v_sip.request.msgHeader.pChargingVector);
if(ispresent(v_sip.request.msgHeader.pChargingVector)) {
if(ispresent(v_sip.request.msgHeader.pChargingVector.chargeParams)) {
log("### f_mtc_check_TP_IMS_5108_01_ic: then");
p_paramList := v_sip.request.msgHeader.pChargingVector.chargeParams;
log("### f_mtc_check_TP_IMS_5108_01_ic: p_paramList=", p_paramList);
for(var integer i := 0; i < lengthof(p_paramList); i:= i+1) {
if(p_paramList[i].id == "icid-value") {
log("### f_mtc_check_TP_IMS_5108_01_ic: find param=", p_paramList[i]);
p_param := p_paramList[i];
break;
}
}
}
}
log("### f_mtc_check_TP_IMS_5108_01_ic: start");
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5108_01_ic(v_SCSCF_IMS_B, p_param))},//pass criteria
{
mw_SipRequest(mdw_TP_IMS_5108_01_f_ic), //fail criteria
mw_SipRequest(mw_INVITE_Request_Base) //fail criteria
},
{0, omit},
"TP_IMS_5108_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5301_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_BYE_Request_Base(*))},
{},
{0, omit},
"TP_IMS_5301_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5301_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_SCSCF_IMS_A := mw_SipUrl_Host(f_GetEUTScscfAddress(PX_EUT_A));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5301_01_ic(?, v_SCSCF_IMS_A))},
{mw_SipRequest(mw_BYE_Request_Base(?))},
{0, omit},
"TP_IMS_5301_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_CALL_0008 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5081_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5081_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_100Trying_Base)},
{},
{0, omit},
"TP_IMS_5081_01",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5082_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {1, mw_SipResponse(mw_200OK_Base)};
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_200OK_Base)},
{},
v_skip,
"TP_IMS_5082_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5082_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {p_skipCount, mw_SipResponse(mw_200OK_Base)};
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5082_01_ic)},//TODO check updated access-network-charging-info
{mw_SipResponse(mw_200OK_Base)},
v_skip,
"TP_IMS_5082_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5120_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {1, mw_SipRequest(mw_INVITE_Request_Base)};
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
v_skip,
"TP_IMS_5120_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5120_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SipUrl v_scscfEutBUrl := mw_SipUrl_Host(f_GetEUTScscfAddress(PX_EUT_B));
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {p_skipCount, mw_SipRequest(mw_INVITE_Request_Base)};
}
//INVITE from IMS_A to IMS_B
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
v_skip,
"TP_IMS_5120_01",
false,
false
)
);
p_monitorCompRef.done;
// 100 Trying from IMS_B to IMS_A
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_100Trying_Base)},
{},
{0, omit},
"TP_IMS_5120_01",
false,
false
)
);
p_monitorCompRef.done;
// INVITE from IMS_B to IMS_A
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5120_01_ic(v_scscfEutBUrl))},
{},
{0, omit},
"TP_IMS_5120_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_CALL_0009 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5052_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_BYE_Request_Base(*))},
{},
{0, omit},
"TP_IMS_5052_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5052_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_PCSCF_IMS_A := mw_SipUrl_Host(f_GetEUTPcscfAddress(PX_EUT_A));
var template RecordRoute p_recordRoute := omit;
var SipMessage v_sip := {request := valueof(m_ACK_Dummy)};
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_ACK_Request_Base(?))},
{},
{1, mw_SipRequest(mw_ACK_Request_Base(?))},
"TP_IMS_5052_01",
true,
false
)
);
p_monitorCompRef.done;
// get Record-route header from prev ACK
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
if(ispresent(v_sip.request.msgHeader.recordRoute)){
p_recordRoute := v_sip.request.msgHeader.recordRoute;
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5052_01_p_ic(?,p_recordRoute))},
{
mw_SipRequest(mdw_TP_IMS_5052_01_f_ic(?, v_PCSCF_IMS_A)),
mw_SipRequest(mw_BYE_Request_Base(?))
},
{0, omit},
"TP_IMS_5052_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_CALL_0010 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5048_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {1, mw_SipRequest(mw_INVITE_Request_Base)};
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
v_skip,
"TP_IMS_5048_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5048_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SipUrl v_pcscfEutAUrl := (mw_SipUrl_Host(f_GetEUTPcscfAddress(PX_EUT_A)),
mw_SipUrl_Host(f_GetEUTPcscfIpAddress(PX_EUT_A)));
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {p_skipCount, mw_SipRequest(mw_INVITE_Request_Base)};
}
// INVITE from IMS_A to IMS_B
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5048_01_ic(v_pcscfEutAUrl))},
{},
v_skip,
"TP_IMS_5048_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5080_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
// INVITE from IMS_A to IMS_B
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5080_01_ic)},
{},
{0, omit},
"TP_IMS_5080_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_CALL_0013 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5072_02_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5072_02_gm(?))},
{},
{0, omit},
"TP_IMS_5072_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
} //function
} // group
group checksTC_IMS_CALL_0014 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5107_03_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_CANCEL_Request_Base(?))},
{},
{0, omit},
"TP_IMS_5107_03",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
} //function
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5107_03_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_scscfImsAUrl := mw_SipUrl_Host(f_GetEUTScscfAddress(PX_EUT_A));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5107_03_ic(?, v_scscfImsAUrl))},
{},
{0, omit},
"TP_IMS_5107_03",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
} //function
} // group
group checksTC_IMS_CALL_0016 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5139_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_scscfImsAUrl := mw_SipUrl_Host(f_GetEUTScscfAddress(PX_EUT_A));
var SipMessage v_sip := {request := valueof(m_INVITE_Dummy)};
var SipUrl v_UE_URI;
var To v_to;
var From v_from;
var CallId v_callId;
var CSeq v_cSeq;
var Route v_route;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5139_01",
true,
p_checkMessage
)
);
p_monitorCompRef.done;
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
// Get Contact Header from INVITE
if(ischosen(v_sip.request)) {
v_from := valueof(v_sip.request.msgHeader.fromField);
v_callId := valueof(v_sip.request.msgHeader.callId);
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_200OK_Base)},
{},
{0, omit},
"TP_IMS_5139_01",
true,
p_checkMessage
)
);
p_monitorCompRef.done;
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
// Get Contact Header from 200-OK response
if(ischosen(v_sip.response)) {
if(ispresent(v_sip.response.msgHeader.contact)) {
v_UE_URI := f_getContactAddr(v_sip.response.msgHeader.contact);
}
v_to := valueof(v_sip.response.msgHeader.toField);
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5139_01_ic(v_callId, v_UE_URI, v_to, v_from, ?, ?))},
{},
{0, omit},
"TP_IMS_5139_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
} //function
} // group
group checksTC_IMS_CALL_0024 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5135_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5135_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5135_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_ibcfEutAUrl := mw_SipUrl_Host(f_GetEUTIbcfAddress(PX_EUT_A));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5135_01_ic(v_ibcfEutAUrl))},
{},
{0, omit},
"TP_IMS_5135_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5137_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_ibcfEutAUrl := mw_SipUrl_Host(f_GetEUTIbcfAddress(PX_EUT_A));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5137_01_ic(v_ibcfEutAUrl))},
{},
{0, omit},
"TP_IMS_5137_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5404_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5404_01_gm)},
{},
{0, omit},
"TP_IMS_5404_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5404_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5404_01_ic)},
{},
{0, omit},
"TP_IMS_5404_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5414_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5414_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5414_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_100Trying_Base)},
{},
{0, omit},
"TP_IMS_5414_01",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5137_02_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_180Ringing_Base)},
{},
{0, omit},
"TP_IMS_5137_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5137_02_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5137_02_ic)},
{},
{0, omit},
"TP_IMS_5137_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5137_03_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_200OK_Base)},
{},
{0, omit},
"TP_IMS_5137_03",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5137_03_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5137_03_ic)},
{},
{0, omit},
"TP_IMS_5137_03",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5408_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_ACK_Request_Base(?))},
{},
{0, omit},
"TP_IMS_5408_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5408_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_ibcfEutAUrl := mw_SipUrl_Host(f_GetEUTIbcfAddress(PX_EUT_A));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5408_01_ic(?, v_ibcfEutAUrl))},
{},
{0, omit},
"TP_IMS_5408_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5408_03_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_BYE_Request_Base(*))},
{},
{0, omit},
"TP_IMS_5408_03",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5408_03_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_ibcfEutAUrl := mw_SipUrl_Host(f_GetEUTIbcfAddress(PX_EUT_A));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5408_03_ic(?, v_ibcfEutAUrl))},
{},
{0, omit},
"TP_IMS_5408_03",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_CALL_0025 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5408_02_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_CANCEL_Request_Base(*))},
{},
{0, omit},
"TP_IMS_5408_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5408_02_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_ibcfEutAUrl := mw_SipUrl_Host(f_GetEUTIbcfAddress(PX_EUT_A));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5408_02_ic(?, v_ibcfEutAUrl))},
{},
{0, omit},
"TP_IMS_5408_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_CALL_0026 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5408_04_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {p_skipCount, mw_SipRequest(mw_INVITE_Request_Base)};
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
v_skip,
"TP_IMS_5408_04",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5408_04_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SipUrl v_ibcfEutAUrl := mw_SipUrl_Host(f_GetEUTIbcfAddress(PX_EUT_A));
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {p_skipCount, mw_SipRequest(mw_INVITE_Request_Base)};
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5408_04_ic(v_ibcfEutAUrl))},
{},
v_skip,
"TP_IMS_5408_04",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_SS_0001 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5310_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {p_skipCount, mw_SipRequest(mw_INVITE_Request_Base)};
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5310_01_gm)},
{},
v_skip,
"TP_IMS_5310_01",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5310_01_isc(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5310_01_isc)},
{},
{0, omit},
"TP_IMS_5310_01",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5312_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {p_skipCount, mw_SipResponse(mw_Response_Base(c_statusLine200, ?, ?))};
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5312_01_ic)},
{},
v_skip,
"mdw_TP_IMS_5312_01",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5312_01_isc(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5312_01_isc)},
{},
{0, omit},
"TP_IMS_5312_01",
false,
false
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_SS_0002 {
// f_mtc_check_TP_IMS_5310_01_gm already used in test TC_IMS_SS_0001
// f_mtc_check_TP_IMS_5310_01_isc already used in test TC_IMS_SS_0001
// f_mtc_check_TP_IMS_5312_01_ic already used in test TC_IMS_SS_0001
// f_mtc_check_TP_IMS_5312_01_isc already used in test TC_IMS_SS_0001
}
group checksTC_IMS_SS_0003 {
// f_mtc_check_TP_IMS_5097_02_gm already used in test TC_IMS_CALL_0001
// f_mtc_check_TP_IMS_5097_02_ic already used in test TC_IMS_CALL_0001
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5108_03_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5108_03",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5108_03_isc(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_AS_IMS_B := (mw_SipUrl_Host(f_GetEUTASServerAddress(PX_EUT_B)),
mw_SipUrl_Host(f_GetEUTASServerIpAddress(PX_EUT_B)));
var template SipUrl v_SCSCF_IMS_B := (mw_SipUrl_Host(f_GetEUTScscfAddress(PX_EUT_B)),
mw_SipUrl_Host(f_GetEUTScscfIpAddress(PX_EUT_B)));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5108_03_isc(v_AS_IMS_B, v_SCSCF_IMS_B))},
{mw_SipRequest(mdw_TP_IMS_5108_03_f_isc)},
{0, omit},
"TP_IMS_5108_03",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5115_08_isc(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_200OK_Base)},//check 200OK from ASB->IMSB
{},
{1, mw_SipResponse(mw_200OK_Base)},//skip 200OK from IMSB->ASB
"TP_IMS_5115_08",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5115_08_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {p_skipCount, mw_SipResponse(mw_Response_Base(c_statusLine200, ?, ?))};
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5115_08_ic)},
{},
v_skip,
"TP_IMS_5115_08",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
}
group checksTC_IMS_SS_0004 {
// f_mtc_check_TP_IMS_5108_03_ic already used in test TC_IMS_SS_0003
// f_mtc_check_TP_IMS_5108_03_isc already used in test TC_IMS_SS_0003
// f_mtc_check_TP_IMS_5115_08_ic already used in test TC_IMS_SS_0003
// f_mtc_check_TP_IMS_5115_08_isc already used in test TC_IMS_SS_0003
}
group checksTC_IMS_SS_0005 {
// f_mtc_check_TP_IMS_5108_03_ic already used in test TC_IMS_SS_0003
// f_mtc_check_TP_IMS_5108_03_isc already used in test TC_IMS_SS_0003
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5313_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5313_01_ic)},
{},
{0, omit},
"TP_IMS_5313_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5313_01_isc(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5313_01_isc)},
{},
{0, omit},
"TP_IMS_5313_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
}//end group checksTC_IMS_SS_0005
group checksTC_IMS_SS_0006 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_09_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5097_09",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
} //function
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_09_isc(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_AS_IMS_B := mw_SipUrl_Host(f_GetEUTASServerAddress(PX_EUT_B));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5097_09_isc(v_AS_IMS_B))},
{mw_SipRequest(mdw_TP_IMS_5097_09_f_isc)},
{0, omit},
"TP_IMS_5097_09",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
} //function
}//end group checksTC_IMS_SS_0006
group checksTC_IMS_SS_0007 {
// f_mtc_check_TP_IMS_5097_01_gm already used in test TC_IMS_CALL_0001
// f_mtc_check_TP_IMS_5097_01_ic already used in test TC_IMS_CALL_0001
// f_mtc_check_TP_IMS_5108_03_ic already used in test TC_IMS_SS_0003
// f_mtc_check_TP_IMS_5108_03_isc already used in test TC_IMS_SS_0003
// f_mtc_check_TP_IMS_5115_08_ic already used in test TC_IMS_SS_0003
// f_mtc_check_TP_IMS_5115_08_isc already used in test TC_IMS_SS_0003
}//end group checksTC_IMS_SS_0007
group checksTC_IMS_SS_0008 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5046_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
{0, omit},
"TP_IMS_5046_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5046_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_pcscfEutAUrl := mw_SipUrl_Host(f_GetEUTPcscfAddress(PX_EUT_A));
var template SipUrl v_pcscfEutAIpUrl := mw_SipUrl_Host(f_GetEUTPcscfIpAddress(PX_EUT_A));
var ImsUserInfo v_user := f_getAnyValidUser(PX_EUT_B);
var template SipUrl v_UserEutBUrl := mw_SipUrl_Host(v_user.domain);
var SipMessage v_sip := {request := valueof(m_INVITE_Dummy)};
var Route v_Route;
var template Route vt_pcscfRoute := {
fieldName := ROUTE_E,
routeBody := ({mw_routeBody(v_pcscfEutAUrl), *},
{mw_routeBody(v_pcscfEutAIpUrl), *} )
};
var Via v_Via;
var template Via vt_pcscfVia := {
fieldName := VIA_E,
viaBody := ({mw_ViaBody_interface(v_pcscfEutAUrl.hostPort), *},
{mw_ViaBody_interface(v_pcscfEutAIpUrl.hostPort), *} )
};
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest((mdw_TP_IMS_5046_01_ic(v_pcscfEutAUrl, v_UserEutBUrl),
mdw_TP_IMS_5046_01_ic(v_pcscfEutAIpUrl, v_UserEutBUrl)))},
{mw_SipRequest(mw_INVITE_Request_Base)},
{0, omit},
"TP_IMS_5046_01",
true,
p_checkMessage
)
);
p_monitorCompRef.done;
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
if(ispresent(v_sip.request.msgHeader.route)) {
v_Route := v_sip.request.msgHeader.route;
}
//if(ispresent(v_sip.request.msgHeader.via)) {
v_Via := v_sip.request.msgHeader.via;
//}
// Check Route header
if (match(v_Route, vt_pcscfRoute)) {
f_setIotVerdictFAIL("TP_IMS_5046_01");
}
// Check Via header
if (match(v_Via, vt_pcscfVia)) {
} else {
f_setIotVerdictFAIL("TP_IMS_5046_01");
}
}
/**
* @desc Starts monitor component
*/
function f_mtc_check_TP_IMS_5110_01_isc(
ImsInterfaceMonitor p_monitorCompRef)
runs on ImsTestCoordinator
{
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_200OK_Base)},
{},
{1, mw_SipResponse(mw_200OK_Base)},
"TP_IMS_5110_01",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component
*/
function f_mtc_check_TP_IMS_5110_01_ic(
ImsInterfaceMonitor p_monitorCompRef)
runs on ImsTestCoordinator
{
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_200OK_Base)},
{},
{0, omit},
"TP_IMS_5110_01",
false,
false
)
);
p_monitorCompRef.done;
}
} // group
group checksTC_IMS_SS_0009 {
}//end group checksTC_IMS_SS_0009
group checksTC_IMS_SS_0010 {
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5308_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5308_01_gm)},
{},
{0, omit},
"TP_IMS_5308_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5308_01_isc(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5308_01_isc)},
{mw_SipResponse(mw_180Ringing_Base)},
{0, omit},
"TP_IMS_5308_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5308_02_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5308_02_gm)},
{},
{0, omit},
"TP_IMS_5308_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5308_02_isc(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_TP_IMS_5308_02_isc)},
{mw_SipResponse(mw_200OK_Base)},
{0, omit},
"TP_IMS_5308_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
}//end group checksTC_IMS_SS_0010
group messagingChecks {
/**
* @desc Starts monitor component behavior for TP_IMS_5097_05
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_05_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{},
{0, omit},
"TP_IMS_5097_05",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5097_05
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_05_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var charstring v_EUT_A_Addr := f_GetEUTScscfAddress(PX_EUT_A);
p_monitorCompRef.start(
f_imsIot_receive(
{ mw_SipRequest(mdw_TP_IMS_5097_05_p_ic(*)) },
{
mw_SipRequest(mdw_TP_IMS_5097_05_f_ic(*)),
mw_SipRequest(mdw_TP_IMS_5097_05_f2_ic(*,mw_SipUrl_Host(v_EUT_A_Addr))),
mw_SipRequest(mw_MESSAGE_Request_Base(*))
},
{0, omit},
"TP_IMS_5097_05",
false,
true
)
);
p_monitorCompRef.done;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5097_05_p_ic(*))},
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{0, omit},
"TP_IMS_5097_05",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5097_05
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_07_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{},
{0, omit},
"TP_IMS_5097_07",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5097_07
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_07_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5097_07_ic(*,mw_SIP_URI_Base, mw_TEL_URI_Base))},
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{0, omit},
"TP_IMS_5097_07",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5097_08
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_08_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5097_08_gm(*))},
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{0, omit},
"TP_IMS_5097_08",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5097_08
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5097_08_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5097_08_ic(*))},
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{0, omit},
"TP_IMS_5097_08",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5117_02
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5117_02_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_2XX_Base)},
{},
{0, omit},
"TP_IMS_5117_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5117_02
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5117_02_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_TP_IMS_5117_02_ic)},
{mw_SipResponse(mdw_2XX_Base)},
{0, omit},
"TP_IMS_5117_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5117_06
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5117_06_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_2XX_Base)},
{},
{0, omit},
"TP_IMS_5117_06",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5117_06
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5117_06_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_TP_IMS_5117_06_ic)},
{mw_SipResponse(mdw_2XX_Base)},
{0, omit},
"TP_IMS_5117_06",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5118_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5118_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_200OK_Base)},
{},
{0, omit},
"TP_IMS_5118_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5118_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5118_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_TP_IMS_5118_01_ic)},
{mw_SipResponse(mw_200OK_Base)},
{0, omit},
"TP_IMS_5118_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5108_02
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5108_02_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{},
{0, omit},
"TP_IMS_5108_02",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5108_02
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5108_02_ic(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator {
var template SipUrl v_SCSCF_IMS_B := mw_SipUrl_Host(f_GetEUTScscfAddress(PX_EUT_B));
var SemicolonParam_List p_paramList;
var GenericParam p_param;
var SipMessage v_sip := {request := valueof(m_INVITE_Dummy)};
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5108_02a_ic(*))},
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{0, omit},
"TP_IMS_5108_02",
true,
true
)
);
p_monitorCompRef.done;
f_getSipMsgFromMonitor(p_monitorCompRef, v_sip);
p_paramList := v_sip.request.msgHeader.pChargingVector.chargeParams;
for(var integer i := 0; i < lengthof(p_paramList); i:= i+1) {
if(p_paramList[i].id == "icid-value") {
p_param := p_paramList[i];
}
}
p_monitorCompRef.start(
f_imsIot_receive(
{},
{
mw_SipRequest(mdw_TP_IMS_5108_02b_f_ic(*)),
mw_SipRequest(mw_MESSAGE_Request_Base(*))
},
{0, omit},
"TP_IMS_5108_02",
false,
true
)
);
p_monitorCompRef.done;
p_monitorCompRef.start(
f_imsIot_receive(
{},
{
mw_SipRequest(mdw_TP_IMS_5108_02b_p_ic(*, v_SCSCF_IMS_B, p_param)),
mw_SipRequest(mw_MESSAGE_Request_Base(*))
},
{0, omit},
"TP_IMS_5108_02",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5050_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5050_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{},
{0, omit},
"TP_IMS_5050_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5050_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5050_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
boolean p_checkMessage
) runs on ImsTestCoordinator {
var template SipUrl v_PCSCF_IMS_B := mw_SipUrl_Host(f_GetEUTPcscfAddress(PX_EUT_B));
var template SipUrl v_UE_A := mw_SipUrl_Host(f_GetEUTPublicId(PX_EUT_A));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5050_01_ic(*, v_PCSCF_IMS_B, v_UE_A))},
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{0, omit},
"TP_IMS_5050_01",
false,
p_checkMessage
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5050_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5114_02_gm(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{},
{0, omit},
"TP_IMS_5114_02",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5050_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5114_02_ic(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{},
{0, omit},
"TP_IMS_5114_02",
false,
false
)
);
p_monitorCompRef.done;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_4XX_Base)},
{},
{0, omit},
"TP_IMS_5114_02",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5108_06
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5108_06_gm(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{},
{0, omit},
"TP_IMS_5108_06",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5108_06
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5108_06_ic(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_MESSAGE_Request_Base(*))},
{},
{0, omit},
"TP_IMS_5108_06",
false,
false
)
);
p_monitorCompRef.done;
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_404NotFound_Base)},
{},
{0, omit},
"TP_IMS_5108_06",
false,
false
)
);
p_monitorCompRef.done;
}
}
group callChecks {
/**
* @desc Starts monitor component behavior for TP_IMS_5106_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5106_01_gm(
ImsInterfaceMonitor p_monitorCompRef,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {1, mw_SipRequest(mw_INVITE_Request_Base)};
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_INVITE_Request_Base)},
{},
v_skip,
"TP_IMS_5106_01",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5106_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5106_01_ic(
ImsInterfaceMonitor p_monitorCompRef,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SipUrl v_SCSCF_A_Uri := (mw_SipUrl_Host(f_GetEUTScscfAddress(PX_EUT_A)),
mw_SipUrl_Host(f_GetEUTScscfIpAddress(PX_EUT_A)));
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {1, mw_SipRequest(mw_INVITE_Request_Base)};
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5106_01_ic(v_SCSCF_A_Uri))},
{mw_SipRequest(mw_INVITE_Request_Base)},
v_skip,
"TP_IMS_5106_01",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5106_02
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5106_02_gm(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator {
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mw_UPDATE_Request_Base(*))},
{},
{0, omit},
"TP_IMS_5106_02",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5106_02
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5106_02_ic(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator {
var template SipUrl v_SCSCF_A_Uri := mw_SipUrl_Host(f_GetEUTScscfAddress(PX_EUT_A));
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5106_02_p_ic(*,v_SCSCF_A_Uri))},
{
mw_SipRequest(mdw_TP_IMS_5106_02_f_ic(*,v_SCSCF_A_Uri)),
mw_SipRequest(mw_UPDATE_Request_Base(*))},
{0, omit},
"TP_IMS_5106_02",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5121_02
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5121_02_gm(
ImsInterfaceMonitor p_monitorCompRef,
integer p_skipCount
) runs on ImsTestCoordinator {
// TODO TP must be checked, currently only 2XX is checked
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {1, mw_SipResponse(mdw_2XX_Base)};
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mdw_2XX_Base)},
{},
v_skip,
"TP_IMS_5121_02",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5121_02
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5121_02_ic(
ImsInterfaceMonitor p_monitorCompRef,
integer p_skipCount
) runs on ImsTestCoordinator {
var template SipUrl v_SCSCF_A_Uri := mw_SipUrl_Host(f_GetEUTScscfAddress(PX_EUT_A));
var template SkipType v_skip := {0, omit};
if(p_skipCount > 0) {
v_skip := {1, mw_SipResponse(mdw_2XX_Base)};
}
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipResponse(mw_TP_IMS_5121_02_ic)},
{mw_SipResponse(mdw_2XX_Base)},
v_skip,
"TP_IMS_5121_02",
false,
false
)
);
p_monitorCompRef.done;
}
/**
* @desc Starts monitor component behavior for TP_IMS_5074_01
* @param p_monitorCompRef Reference to monitor component
*/
function f_mtc_check_TP_IMS_5074_01_ic(
ImsInterfaceMonitor p_monitorCompRef
) runs on ImsTestCoordinator {
var template SipUrl v_UE_A_Uri := f_getUeIpAddress(PX_EUT_A);
p_monitorCompRef.start(
f_imsIot_receive(
{mw_SipRequest(mdw_TP_IMS_5074_01_ic(*,v_UE_A_Uri))},
{mw_SipRequest(mw_BYE_Request_Base(*))},
{0, omit},
"TP_IMS_5074_01",
false,
false
)
);
p_monitorCompRef.done;
}
}
} // end group
}// end module