Loading AtsImsIot/AtsImsIot_Behavior.ttcn +15 −28 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ module AtsImsIot_Behavior { import from LibIms_UpperTester {type ImsUserInfo;} import from LibIot_TypesAndValues {type DefaultList;} import from LibIot_Functions {function f_setIotVerdictFAIL, f_setIotVerdictPASS;} import from LibSip_SIPTypesAndValues all; // import from LibSip_SIPTypesAndValues { Loading Loading @@ -403,7 +404,7 @@ group checksTC_IMS_REG_0001 { v_Epires200OK := p_200OK.msgHeader.expires.deltaSec; v_EpiresSubscribe := v_sip.request.msgHeader.expires.deltaSec; if (char2int(v_EpiresSubscribe) <= char2int(v_Epires200OK)) { setverdict(fail); // TODO use oracle functions for vericts f_setIotVerdictFAIL("TP_IMS_5044_01"); // TODO use oracle functions for vericts } return v_sip.request; } Loading Loading @@ -437,7 +438,7 @@ group checksTC_IMS_REG_0001 { v_Epires200OK := v_sip.response.msgHeader.expires.deltaSec; v_EpiresSubscribe := p_Subscribe.msgHeader.expires.deltaSec; if (char2int(v_EpiresSubscribe) >= char2int(v_Epires200OK)) { setverdict(fail); // TODO use oracle functions for verdicts f_setIotVerdictFAIL("TP_IMS_5096_01"); } Loading Loading @@ -576,25 +577,18 @@ group checksTC_IMS_REG_0002H{ ); 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 (match (v_RegisterStep4.msgHeader, v_RegisterStep2.msgHeader)){ // Identical set of headers setverdict(pass); // TODO use oracle functions for verdicts } else { // Some headers differ setverdict(fail); // TODO use oracle functions for verdicts 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 setverdict(fail); // TODO use oracle functions for verdicts } else { // IMS-A used a different entrypoint setverdict(pass); // TODO use oracle functions for verdicts f_setIotVerdictFAIL("TP_IMS_5203_01"); } v_RegisterStep4 := v_sip.request; return v_RegisterStep4; } Loading Loading @@ -710,7 +704,7 @@ group checksTC_IMS_REG_0004 { p_monitorCompRef.start( f_imsIot_receive( {mw_SipRequest(mdw_TP_IMS_5088_01_gm)}, {mw_SipRequest(mw_MESSAGE_Request_Base(?))}, {mw_SipRequest(mw_REGISTER_Request_Base)}, "TP_IMS_5088_01_gm", "REGISTER request", 0, Loading @@ -733,7 +727,7 @@ group checksTC_IMS_REG_0004 { p_monitorCompRef.start( f_imsIot_receive( {mw_SipRequest(mdw_TP_IMS_5088_01_mw(?, mw_SipUrl_Host(v_hostname)))}, // TODO getHostname(PCSCF) how to hande the callid? {mw_SipRequest(mw_MESSAGE_Request_Base(?))}, {mw_SipRequest(mw_REGISTER_Request_Base)}, "TP_IMS_5088_01_mw", "NOTIFY response", 0, Loading Loading @@ -1052,19 +1046,12 @@ group checksTC_IMS_SS_0007 { // Check Route header if (match(v_Route, vt_pcscfRoute)) { // TODO use oracle functions for verdicts setverdict(fail); // Route header shall not have P-CSCF of IMS A } else { // TODO use oracle functions for verdicts setverdict(pass); f_setIotVerdictFAIL("TP_IMS_5046_01"); } // Check Via header if (match(v_Via, vt_pcscfVia)) { // TODO use oracle functions for verdicts setverdict(pass); } else { // TODO use oracle functions for verdicts setverdict(fail); f_setIotVerdictFAIL("TP_IMS_5046_01"); } } Loading LibIot/LibIot_Functions.ttcn +20 −0 Original line number Diff line number Diff line Loading @@ -85,6 +85,26 @@ module LibIot_Functions { } } /** * @desc Set verdict PASS on main component (to be used, e.g on TestCoordinator) */ function f_setIotVerdictPASS(in charstring p_reason) runs on OracleServer { var IotVerdict p_verdict := { conformance := {verdict := pass, reason := p_reason} }; f_setIotVerdict(p_verdict); } /** * @desc Set verdict PASS on main component (to be used, e.g on TestCoordinator) */ function f_setIotVerdictFAIL(in charstring p_reason) runs on OracleServer { var IotVerdict p_verdict := { conformance := {verdict := fail, reason := p_reason} }; f_setIotVerdict(p_verdict); } /** * * @desc logs the received IOT verdict Loading Loading
AtsImsIot/AtsImsIot_Behavior.ttcn +15 −28 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ module AtsImsIot_Behavior { import from LibIms_UpperTester {type ImsUserInfo;} import from LibIot_TypesAndValues {type DefaultList;} import from LibIot_Functions {function f_setIotVerdictFAIL, f_setIotVerdictPASS;} import from LibSip_SIPTypesAndValues all; // import from LibSip_SIPTypesAndValues { Loading Loading @@ -403,7 +404,7 @@ group checksTC_IMS_REG_0001 { v_Epires200OK := p_200OK.msgHeader.expires.deltaSec; v_EpiresSubscribe := v_sip.request.msgHeader.expires.deltaSec; if (char2int(v_EpiresSubscribe) <= char2int(v_Epires200OK)) { setverdict(fail); // TODO use oracle functions for vericts f_setIotVerdictFAIL("TP_IMS_5044_01"); // TODO use oracle functions for vericts } return v_sip.request; } Loading Loading @@ -437,7 +438,7 @@ group checksTC_IMS_REG_0001 { v_Epires200OK := v_sip.response.msgHeader.expires.deltaSec; v_EpiresSubscribe := p_Subscribe.msgHeader.expires.deltaSec; if (char2int(v_EpiresSubscribe) >= char2int(v_Epires200OK)) { setverdict(fail); // TODO use oracle functions for verdicts f_setIotVerdictFAIL("TP_IMS_5096_01"); } Loading Loading @@ -576,25 +577,18 @@ group checksTC_IMS_REG_0002H{ ); 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 (match (v_RegisterStep4.msgHeader, v_RegisterStep2.msgHeader)){ // Identical set of headers setverdict(pass); // TODO use oracle functions for verdicts } else { // Some headers differ setverdict(fail); // TODO use oracle functions for verdicts 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 setverdict(fail); // TODO use oracle functions for verdicts } else { // IMS-A used a different entrypoint setverdict(pass); // TODO use oracle functions for verdicts f_setIotVerdictFAIL("TP_IMS_5203_01"); } v_RegisterStep4 := v_sip.request; return v_RegisterStep4; } Loading Loading @@ -710,7 +704,7 @@ group checksTC_IMS_REG_0004 { p_monitorCompRef.start( f_imsIot_receive( {mw_SipRequest(mdw_TP_IMS_5088_01_gm)}, {mw_SipRequest(mw_MESSAGE_Request_Base(?))}, {mw_SipRequest(mw_REGISTER_Request_Base)}, "TP_IMS_5088_01_gm", "REGISTER request", 0, Loading @@ -733,7 +727,7 @@ group checksTC_IMS_REG_0004 { p_monitorCompRef.start( f_imsIot_receive( {mw_SipRequest(mdw_TP_IMS_5088_01_mw(?, mw_SipUrl_Host(v_hostname)))}, // TODO getHostname(PCSCF) how to hande the callid? {mw_SipRequest(mw_MESSAGE_Request_Base(?))}, {mw_SipRequest(mw_REGISTER_Request_Base)}, "TP_IMS_5088_01_mw", "NOTIFY response", 0, Loading Loading @@ -1052,19 +1046,12 @@ group checksTC_IMS_SS_0007 { // Check Route header if (match(v_Route, vt_pcscfRoute)) { // TODO use oracle functions for verdicts setverdict(fail); // Route header shall not have P-CSCF of IMS A } else { // TODO use oracle functions for verdicts setverdict(pass); f_setIotVerdictFAIL("TP_IMS_5046_01"); } // Check Via header if (match(v_Via, vt_pcscfVia)) { // TODO use oracle functions for verdicts setverdict(pass); } else { // TODO use oracle functions for verdicts setverdict(fail); f_setIotVerdictFAIL("TP_IMS_5046_01"); } } Loading
LibIot/LibIot_Functions.ttcn +20 −0 Original line number Diff line number Diff line Loading @@ -85,6 +85,26 @@ module LibIot_Functions { } } /** * @desc Set verdict PASS on main component (to be used, e.g on TestCoordinator) */ function f_setIotVerdictPASS(in charstring p_reason) runs on OracleServer { var IotVerdict p_verdict := { conformance := {verdict := pass, reason := p_reason} }; f_setIotVerdict(p_verdict); } /** * @desc Set verdict PASS on main component (to be used, e.g on TestCoordinator) */ function f_setIotVerdictFAIL(in charstring p_reason) runs on OracleServer { var IotVerdict p_verdict := { conformance := {verdict := fail, reason := p_reason} }; f_setIotVerdict(p_verdict); } /** * * @desc logs the received IOT verdict Loading