Loading AtsImsIot/AtsImsIot_Behavior.ttcn +95 −63 Original line number Diff line number Diff line Loading @@ -808,7 +808,7 @@ group checksTC_IMS_REG_0003{ * @param p_monitorCompRef Reference to monitor component */ function f_mtc_check_TP_IMS_5129_01_gm( ImsInterfaceMonitor p_monitorCompRef ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // Check that the UE sends any register p_monitorCompRef.start( Loading @@ -816,9 +816,30 @@ group checksTC_IMS_REG_0003{ {mw_SipRequest(mw_REGISTER_Request_Base)}, {}, {0, omit}, "TP_IMS_5129_01", "TP_IMS_5129_01 (gm)", false, 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_mw_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; Loading @@ -829,35 +850,31 @@ group checksTC_IMS_REG_0003{ * @param p_monitorCompRef Reference to monitor component */ function f_mtc_check_TP_IMS_5129_01_mw( ImsInterfaceMonitor p_monitorCompRef ) runs on ImsTestCoordinator return Response { ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { var SipMessage v_sip; p_monitorCompRef.start( // Check that IMS_B responds with 403 forbidden f_imsIot_receive( {mw_SipResponse(mw_403Forbidden_Base)}, {}, {1, mw_SipResponse(mw_403Forbidden_Base)}, // TODO check that "TP_IMS_5129_01", {0, omit}, "TP_IMS_5129_01 (mw)", true, false p_checkMessage ) ); p_monitorCompRef.done; f_getSipMsgFromMonitor(p_monitorCompRef, v_sip); return v_sip.response; } } // 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 ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // Check that the UE sends any register p_monitorCompRef.start( Loading @@ -865,9 +882,30 @@ group checksTC_IMS_REG_0003H{ {mw_SipRequest(mw_REGISTER_Request_Base)}, {}, {0, omit}, "TP_IMS_5411_01", "TP_IMS_5411_01 (gm)", false, 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_mw_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; Loading @@ -878,26 +916,20 @@ group checksTC_IMS_REG_0003H{ * @param p_monitorCompRef Reference to monitor component */ function f_mtc_check_TP_IMS_5411_01_mw( ImsInterfaceMonitor p_monitorCompRef ) runs on ImsTestCoordinator return Response { var SipMessage v_sip; ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { p_monitorCompRef.start( f_imsIot_receive( {mw_SipResponse(mw_403Forbidden_Base)}, {}, {1, mw_SipResponse(mw_403Forbidden_Base)}, "TP_IMS_5411_01", {0, omit}, "TP_IMS_5411_01 (mw)", true, false p_checkMessage ) ); p_monitorCompRef.done; f_getSipMsgFromMonitor(p_monitorCompRef, v_sip); return v_sip.response; } } // group group checksTC_IMS_REG_0004 { Loading AtsImsIot/AtsImsIot_Functions.ttcn +40 −2 Original line number Diff line number Diff line Loading @@ -57,6 +57,23 @@ module AtsImsIot_Functions { return v_status; } /** * @desc * Starts user component behavior for checking that UE * is not registerd. * @param p_userCompRef Reference to IMS UE user component * @return * true in case of successfull execution of the trigger command * otherwise false **/ function f_mtc_userCheckNoRegistration(EquipmentUser p_userCompRef, ImsUserInfo p_userInfo) runs on TestCoordinator return boolean { var boolean v_status := true; if( p_userInfo.publicId == "dummy" ) { return true; } v_status := f_mtc_userCheckRegistrationUnsuccessful(p_userCompRef); return v_status; } /** * @desc Trigger UE given by p_ueRef to initiate an MO call * @param p_userCompRef Reference to IMS UE user component Loading Loading @@ -260,7 +277,28 @@ module AtsImsIot_Functions { return v_success; } /** * * @desc Starts user component behaviour for checking that the UE * is not registered * @param p_userCompRef Reference to IMS UE user component * @return * true in case of successfull execution of the trigger command * otherwise false */ function f_mtc_userCheckRegistrationUnsuccessful(EquipmentUser p_userCompRef) runs on TestCoordinator return boolean { var boolean v_success := false; p_userCompRef.start(f_checkUserIsNotRegistered()); p_userCompRef.done; if(f_getE2EVerdict() == pass) { v_success := true; } return v_success; } /** * @desc Starts user component behaviour for registration from test coordinator Loading AtsImsIot/AtsImsIot_TestCases_REG.ttcn +21 −20 Original line number Diff line number Diff line Loading @@ -55,7 +55,7 @@ module AtsImsIot_TestCases_REG { f_cf_monitor_up(v_mw); // test body f_mtc_userTriggerRegistration(v_ueB, f_getAnyValidUser(PX_EUT_B)); // Test Sequence Step 1 f_mtc_userTriggerRegistration(v_ueB, f_getAnyValidUser(PX_EUT_B)); // Test Sequence Step 1 @TODO shouldn't this be EUT_A? // @TODO check mw_credentialIntegrityNo, mw_credentialIntegrityYes Loading Loading @@ -85,16 +85,18 @@ module AtsImsIot_TestCases_REG { // postamble f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports //unmap/disconnect component ports f_cf_user_down(v_ueB); f_cf_monitor_down(v_gmA); f_cf_monitor_down(v_mw); } /** * @desc * No response from first entry point on REGISTER with topology hiding * (TS 186 011-2 V2.3.1 cause 4.5.2.2) */ // @TODO testcase TC_IMS_REG_0002() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B); Loading @@ -109,7 +111,7 @@ module AtsImsIot_TestCases_REG { f_cf_monitor_up(v_mw); // test body f_mtc_userTriggerRegistration(v_ueB, f_getAnyValidUser(PX_EUT_A)); // Step1 f_mtc_userTriggerRegistration(v_ueB, f_getAnyValidUser(PX_EUT_A)); // Test Sequence Step 1 // check no response (check1-when) -message skip (1st register) // check included in check1-then Loading Loading @@ -138,9 +140,10 @@ module AtsImsIot_TestCases_REG { /** * @desc * No response from first entry point on REGISTER with topology hiding * 403 response from first entry point on REGISTER with topology hiding * (ETSI TS 186 011-2 V2.3.1 cause 4.5.2.3) */ // @TODO testcase TC_IMS_REG_0002H() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B); Loading Loading @@ -180,6 +183,7 @@ module AtsImsIot_TestCases_REG { var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B); var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A); var ImsInterfaceMonitor v_mw := f_cf_create_monitor(c_mw); var ImsUserInfo v_anyValidUser := f_getAnyValidUser(PX_EUT_B); // map/connect component ports f_cf_user_up(v_ueB); Loading @@ -187,18 +191,16 @@ module AtsImsIot_TestCases_REG { f_cf_monitor_up(v_mw); // test body f_mtc_userTriggerRegistration(v_ueB, f_getAnyValidUser(PX_EUT_A)); f_mtc_check_TP_IMS_5129_01_gm(v_gmA); f_mtc_userTriggerRegistration(v_ueB, v_anyValidUser); // Test Sequence Step 1 f_mtc_check_TP_IMS_5129_01_mw(v_mw); // Check1 f_mtc_check_TP_IMS_5129_01_gm(v_gmA, false); // Check1 when (Gm) f_mtc_check_TP_IMS_5129_01_mw_when(v_mw, false); // Check1 when (Mw) // f_mtc_userCheckRegistration(v_ueB, PX_EUT_B); f_mtc_check_TP_IMS_5129_01_mw(v_mw, false); // Check1 then // postamble // f_PO_user_home_deregistration(v_ueB); f_mtc_userCheckNoRegistration(v_ueB, v_anyValidUser); // Test Sequence Step 2 - unsuccessful registration //unmap/disconnet component ports //unmap/disconnect component ports f_cf_user_down(v_ueB); f_cf_monitor_down(v_gmA); f_cf_monitor_down(v_mw); Loading @@ -214,6 +216,7 @@ module AtsImsIot_TestCases_REG { var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B); var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A); var ImsInterfaceMonitor v_mw := f_cf_create_monitor(c_mw); var ImsUserInfo v_anyValidUser := f_getAnyValidUser(PX_EUT_B); // map/connect component ports f_cf_user_up(v_ueB); Loading @@ -221,16 +224,14 @@ module AtsImsIot_TestCases_REG { f_cf_monitor_up(v_mw); // test body f_mtc_userTriggerRegistration(v_ueB, f_getAnyValidUser(PX_EUT_A)); f_mtc_userTriggerRegistration(v_ueB, v_anyValidUser); // Test Sequence Step 1 f_mtc_check_TP_IMS_5411_01_gm(v_gmA); f_mtc_check_TP_IMS_5411_01_gm(v_gmA, false); // Check1 when (Gm) f_mtc_check_TP_IMS_5411_01_mw_when(v_gmA, false); //Check1 when (Mw) f_mtc_check_TP_IMS_5411_01_mw(v_mw); // Check1 f_mtc_check_TP_IMS_5411_01_mw(v_mw, false); // Check1 then // f_mtc_userCheckRegistration(v_ueB, f_getAnyValidUser(PX_EUT_B)); // postamble // f_PO_user_home_deregistration(v_ueB); f_mtc_userCheckNoRegistration(v_ueB, v_anyValidUser); // Test Sequence Step 2 - unsuccessful registration //unmap/disconnet component ports f_cf_user_down(v_ueB); Loading Loading
AtsImsIot/AtsImsIot_Behavior.ttcn +95 −63 Original line number Diff line number Diff line Loading @@ -808,7 +808,7 @@ group checksTC_IMS_REG_0003{ * @param p_monitorCompRef Reference to monitor component */ function f_mtc_check_TP_IMS_5129_01_gm( ImsInterfaceMonitor p_monitorCompRef ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // Check that the UE sends any register p_monitorCompRef.start( Loading @@ -816,9 +816,30 @@ group checksTC_IMS_REG_0003{ {mw_SipRequest(mw_REGISTER_Request_Base)}, {}, {0, omit}, "TP_IMS_5129_01", "TP_IMS_5129_01 (gm)", false, 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_mw_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; Loading @@ -829,35 +850,31 @@ group checksTC_IMS_REG_0003{ * @param p_monitorCompRef Reference to monitor component */ function f_mtc_check_TP_IMS_5129_01_mw( ImsInterfaceMonitor p_monitorCompRef ) runs on ImsTestCoordinator return Response { ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { var SipMessage v_sip; p_monitorCompRef.start( // Check that IMS_B responds with 403 forbidden f_imsIot_receive( {mw_SipResponse(mw_403Forbidden_Base)}, {}, {1, mw_SipResponse(mw_403Forbidden_Base)}, // TODO check that "TP_IMS_5129_01", {0, omit}, "TP_IMS_5129_01 (mw)", true, false p_checkMessage ) ); p_monitorCompRef.done; f_getSipMsgFromMonitor(p_monitorCompRef, v_sip); return v_sip.response; } } // 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 ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // Check that the UE sends any register p_monitorCompRef.start( Loading @@ -865,9 +882,30 @@ group checksTC_IMS_REG_0003H{ {mw_SipRequest(mw_REGISTER_Request_Base)}, {}, {0, omit}, "TP_IMS_5411_01", "TP_IMS_5411_01 (gm)", false, 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_mw_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; Loading @@ -878,26 +916,20 @@ group checksTC_IMS_REG_0003H{ * @param p_monitorCompRef Reference to monitor component */ function f_mtc_check_TP_IMS_5411_01_mw( ImsInterfaceMonitor p_monitorCompRef ) runs on ImsTestCoordinator return Response { var SipMessage v_sip; ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { p_monitorCompRef.start( f_imsIot_receive( {mw_SipResponse(mw_403Forbidden_Base)}, {}, {1, mw_SipResponse(mw_403Forbidden_Base)}, "TP_IMS_5411_01", {0, omit}, "TP_IMS_5411_01 (mw)", true, false p_checkMessage ) ); p_monitorCompRef.done; f_getSipMsgFromMonitor(p_monitorCompRef, v_sip); return v_sip.response; } } // group group checksTC_IMS_REG_0004 { Loading
AtsImsIot/AtsImsIot_Functions.ttcn +40 −2 Original line number Diff line number Diff line Loading @@ -57,6 +57,23 @@ module AtsImsIot_Functions { return v_status; } /** * @desc * Starts user component behavior for checking that UE * is not registerd. * @param p_userCompRef Reference to IMS UE user component * @return * true in case of successfull execution of the trigger command * otherwise false **/ function f_mtc_userCheckNoRegistration(EquipmentUser p_userCompRef, ImsUserInfo p_userInfo) runs on TestCoordinator return boolean { var boolean v_status := true; if( p_userInfo.publicId == "dummy" ) { return true; } v_status := f_mtc_userCheckRegistrationUnsuccessful(p_userCompRef); return v_status; } /** * @desc Trigger UE given by p_ueRef to initiate an MO call * @param p_userCompRef Reference to IMS UE user component Loading Loading @@ -260,7 +277,28 @@ module AtsImsIot_Functions { return v_success; } /** * * @desc Starts user component behaviour for checking that the UE * is not registered * @param p_userCompRef Reference to IMS UE user component * @return * true in case of successfull execution of the trigger command * otherwise false */ function f_mtc_userCheckRegistrationUnsuccessful(EquipmentUser p_userCompRef) runs on TestCoordinator return boolean { var boolean v_success := false; p_userCompRef.start(f_checkUserIsNotRegistered()); p_userCompRef.done; if(f_getE2EVerdict() == pass) { v_success := true; } return v_success; } /** * @desc Starts user component behaviour for registration from test coordinator Loading
AtsImsIot/AtsImsIot_TestCases_REG.ttcn +21 −20 Original line number Diff line number Diff line Loading @@ -55,7 +55,7 @@ module AtsImsIot_TestCases_REG { f_cf_monitor_up(v_mw); // test body f_mtc_userTriggerRegistration(v_ueB, f_getAnyValidUser(PX_EUT_B)); // Test Sequence Step 1 f_mtc_userTriggerRegistration(v_ueB, f_getAnyValidUser(PX_EUT_B)); // Test Sequence Step 1 @TODO shouldn't this be EUT_A? // @TODO check mw_credentialIntegrityNo, mw_credentialIntegrityYes Loading Loading @@ -85,16 +85,18 @@ module AtsImsIot_TestCases_REG { // postamble f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports //unmap/disconnect component ports f_cf_user_down(v_ueB); f_cf_monitor_down(v_gmA); f_cf_monitor_down(v_mw); } /** * @desc * No response from first entry point on REGISTER with topology hiding * (TS 186 011-2 V2.3.1 cause 4.5.2.2) */ // @TODO testcase TC_IMS_REG_0002() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B); Loading @@ -109,7 +111,7 @@ module AtsImsIot_TestCases_REG { f_cf_monitor_up(v_mw); // test body f_mtc_userTriggerRegistration(v_ueB, f_getAnyValidUser(PX_EUT_A)); // Step1 f_mtc_userTriggerRegistration(v_ueB, f_getAnyValidUser(PX_EUT_A)); // Test Sequence Step 1 // check no response (check1-when) -message skip (1st register) // check included in check1-then Loading Loading @@ -138,9 +140,10 @@ module AtsImsIot_TestCases_REG { /** * @desc * No response from first entry point on REGISTER with topology hiding * 403 response from first entry point on REGISTER with topology hiding * (ETSI TS 186 011-2 V2.3.1 cause 4.5.2.3) */ // @TODO testcase TC_IMS_REG_0002H() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B); Loading Loading @@ -180,6 +183,7 @@ module AtsImsIot_TestCases_REG { var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B); var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A); var ImsInterfaceMonitor v_mw := f_cf_create_monitor(c_mw); var ImsUserInfo v_anyValidUser := f_getAnyValidUser(PX_EUT_B); // map/connect component ports f_cf_user_up(v_ueB); Loading @@ -187,18 +191,16 @@ module AtsImsIot_TestCases_REG { f_cf_monitor_up(v_mw); // test body f_mtc_userTriggerRegistration(v_ueB, f_getAnyValidUser(PX_EUT_A)); f_mtc_check_TP_IMS_5129_01_gm(v_gmA); f_mtc_userTriggerRegistration(v_ueB, v_anyValidUser); // Test Sequence Step 1 f_mtc_check_TP_IMS_5129_01_mw(v_mw); // Check1 f_mtc_check_TP_IMS_5129_01_gm(v_gmA, false); // Check1 when (Gm) f_mtc_check_TP_IMS_5129_01_mw_when(v_mw, false); // Check1 when (Mw) // f_mtc_userCheckRegistration(v_ueB, PX_EUT_B); f_mtc_check_TP_IMS_5129_01_mw(v_mw, false); // Check1 then // postamble // f_PO_user_home_deregistration(v_ueB); f_mtc_userCheckNoRegistration(v_ueB, v_anyValidUser); // Test Sequence Step 2 - unsuccessful registration //unmap/disconnet component ports //unmap/disconnect component ports f_cf_user_down(v_ueB); f_cf_monitor_down(v_gmA); f_cf_monitor_down(v_mw); Loading @@ -214,6 +216,7 @@ module AtsImsIot_TestCases_REG { var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser(c_userUE_B); var ImsInterfaceMonitor v_gmA := f_cf_create_monitor(c_gm_A); var ImsInterfaceMonitor v_mw := f_cf_create_monitor(c_mw); var ImsUserInfo v_anyValidUser := f_getAnyValidUser(PX_EUT_B); // map/connect component ports f_cf_user_up(v_ueB); Loading @@ -221,16 +224,14 @@ module AtsImsIot_TestCases_REG { f_cf_monitor_up(v_mw); // test body f_mtc_userTriggerRegistration(v_ueB, f_getAnyValidUser(PX_EUT_A)); f_mtc_userTriggerRegistration(v_ueB, v_anyValidUser); // Test Sequence Step 1 f_mtc_check_TP_IMS_5411_01_gm(v_gmA); f_mtc_check_TP_IMS_5411_01_gm(v_gmA, false); // Check1 when (Gm) f_mtc_check_TP_IMS_5411_01_mw_when(v_gmA, false); //Check1 when (Mw) f_mtc_check_TP_IMS_5411_01_mw(v_mw); // Check1 f_mtc_check_TP_IMS_5411_01_mw(v_mw, false); // Check1 then // f_mtc_userCheckRegistration(v_ueB, f_getAnyValidUser(PX_EUT_B)); // postamble // f_PO_user_home_deregistration(v_ueB); f_mtc_userCheckNoRegistration(v_ueB, v_anyValidUser); // Test Sequence Step 2 - unsuccessful registration //unmap/disconnet component ports f_cf_user_down(v_ueB); Loading