Loading AtsImsIot/AtsImsIot_Behavior.ttcn +50 −0 Original line number Diff line number Diff line Loading @@ -3638,6 +3638,56 @@ group checksTC_IMS_SHARE_0001 { }//end group checksTC_IMS_SHARE_0001 group checksTC_IMS_SHARE_0009 { /** * @desc Starts monitor component behavior * @param p_monitorCompRef Reference to monitor component */ function f_mtc_check_TP_IMS_CONTENT_SHARE_03_gm( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { p_monitorCompRef.start( f_imsIot_receive( {mw_SipResponse(mw_603Decline_Base)}, {}, {0, omit}, "TP_IMS_CONTENT_SHARE_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_CONTENT_SHARE_03_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_SipResponse(mw_603Decline_Base)}, {}, {0, omit}, "TP_IMS_CONTENT_SHARE_03", false, p_checkMessage ) ); p_monitorCompRef.done; } //function*/ }//end group checksTC_IMS_SHARE_0009 group messagingChecks { /** * @desc Starts monitor component behavior for TP_IMS_5097_05 Loading AtsImsIot/AtsImsIot_Functions.ttcn +59 −0 Original line number Diff line number Diff line Loading @@ -1486,6 +1486,65 @@ module AtsImsIot_Functions { return v_status; } /** * @desc Trigger UE given by p_ueRef to verify that user is informed * that connected user cannot share content * @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_userInformedAboutPartnerCannotShareContent(EquipmentUser p_userCompRef) runs on TestCoordinator return boolean { var boolean v_status := true; // TODO return v_status; } /** * @desc Trigger UE given by p_ueRef to verify that user is informed * that connected user cannot share content * @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_userInformedAboutPartnerCanShareContent(EquipmentUser p_userCompRef) runs on TestCoordinator return boolean { var boolean v_status := true; // TODO return v_status; } /** * @desc Trigger UE given by p_ueRef to verify that user rejects sharing * @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_userRejectsSharing(EquipmentUser p_userCompRef) runs on TestCoordinator return boolean { var boolean v_status := true; // TODO return v_status; } /** * @desc Trigger UE given by p_ueRef to verify that user is informed * that request has been rejected * @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_userCheckSharingRequestRejected(EquipmentUser p_userCompRef) runs on TestCoordinator return boolean { var boolean v_status := true; // TODO return v_status; } /** * @desc Trigger IMS Network to deregister UE given by p_ueRef Loading AtsImsIot/AtsImsIot_Templates.ttcn +8 −0 Original line number Diff line number Diff line Loading @@ -1794,6 +1794,14 @@ module AtsImsIot_Templates { msgHeader := ?, messageBody := *, payload := * } template Response mw_603Decline_Base modifies m_Response_Dummy := { statusLine := c_statusLine603, msgHeader := ?, messageBody := *, payload := * } template REGISTER_Request mdw_TP_IMS_5088_01_gm modifies mw_REGISTER_Request_Base := { Loading AtsImsIot/AtsImsIot_TestCases_RCS.ttcn +370 −0 Original line number Diff line number Diff line Loading @@ -2157,5 +2157,375 @@ module AtsImsIot_TestCases_RCS { f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0004 /** * @desc User A sets up a voice call to user B and user B shares content with user A. * @see TS 102 901-2 V0.0.1 clause 4.5.5.3.1 */ testcase TC_IMS_SHARE_0005() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A); 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_gmB := f_cf_create_monitor(c_gm_B); var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic); var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A); var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B); var ImsUserInfo v_userInfoA := f_getShareUser(PX_EUT_A); var ImsUserInfo v_userInfoB := f_getShareUser(PX_EUT_B); var CF_INT_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB}; // map/connect component ports f_cf_adapter_up(); f_cf_user_up(v_ueA); f_cf_user_up(v_ueB); f_cf_int_as_up(v_config); // preamble f_mtc_userRegistration(v_ueA, v_userInfoA); f_mtc_userRegistration(v_ueB, v_userInfoB); // test body f_mtc_StartAllTrafficCapture(); f_mtc_userSetupVoiceCall(v_ueA, v_ueB, v_userInfoB); //Test Sequence Step 1 // check 1 (OPTIONS) f_mtc_check_TP_IMS_CONTENT_SHARE_01_gm(v_gmA, false); // Check1 f_mtc_check_TP_IMS_CONTENT_SHARE_01_ic(v_ic, false); // Check1 f_mtc_userCheckPartnerSharingCapabilities(v_ueA); //Test Sequence Step 2 f_mtc_userCheckPartnerSharingCapabilities(v_ueB); //Test Sequence Step 3 f_mtc_userInitiateShare (v_ueB, v_userInfoA); //Test Sequence Step 4 f_mtc_userRequestedToAcceptSharing(v_ueA); //Test Sequence Step 5 f_mtc_userAcceptsSharing(v_ueA); //Test Sequence Step 6 f_mtc_userCheckSharingRequestAnswered(v_ueB); //Test Sequence Step 7 f_mtc_EndSharing(v_ueB); //Test Sequence Step 8 f_mtc_userCheckSharingEnded(v_ueB); //Test Sequence Step 9 f_mtc_userCheckSharingEnded(v_ueA); //Test Sequence Step 10 f_mtc_EndCall(v_ueB); //Test Sequence Step 11 f_mtc_userCheckCallEnded(v_ueB); //Test Sequence Step 11 f_mtc_userCheckCallEnded(v_ueA); //Test Sequence Step 11 // postamble f_PO_user_home_deregistration(v_ueA); f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports f_cf_user_down(v_ueA); f_cf_user_down(v_ueB); f_cf_int_as_down(v_config); f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0005 /** * @desc User A sets up a voice call to user B and user B shares content with user A. * @see TS 102 901-2 V0.0.1 clause 4.5.5.3.2 */ testcase TC_IMS_SHARE_0006() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A); 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_gmB := f_cf_create_monitor(c_gm_B); var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic); var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A); var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B); var ImsUserInfo v_userInfoA := f_getShareUser(PX_EUT_A); var ImsUserInfo v_userInfoB := f_getShareUser(PX_EUT_B); var CF_ROAM_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB}; // map/connect component ports f_cf_adapter_up(); f_cf_user_up(v_ueA); f_cf_user_up(v_ueB); f_cf_roam_as_up(v_config); // preamble f_mtc_userRegistration(v_ueA, v_userInfoA); f_mtc_userRegistration(v_ueB, v_userInfoB); // test body f_mtc_StartAllTrafficCapture(); f_mtc_userSetupVoiceCall(v_ueA, v_ueB, v_userInfoB); //Test Sequence Step 1 // check 1 (OPTIONS) f_mtc_check_TP_IMS_CONTENT_SHARE_01_gm(v_gmA, false); // Check1 f_mtc_check_TP_IMS_CONTENT_SHARE_01_ic(v_ic, false); // Check1 f_mtc_userCheckPartnerSharingCapabilities(v_ueA); //Test Sequence Step 2 f_mtc_userCheckPartnerSharingCapabilities(v_ueB); //Test Sequence Step 3 f_mtc_userInitiateShare (v_ueB, v_userInfoA); //Test Sequence Step 4 f_mtc_userRequestedToAcceptSharing(v_ueA); //Test Sequence Step 5 f_mtc_userAcceptsSharing(v_ueA); //Test Sequence Step 6 f_mtc_userCheckSharingRequestAnswered(v_ueB); //Test Sequence Step 7 f_mtc_EndSharing(v_ueB); //Test Sequence Step 8 f_mtc_userCheckSharingEnded(v_ueB); //Test Sequence Step 9 f_mtc_userCheckSharingEnded(v_ueA); //Test Sequence Step 10 f_mtc_EndCall(v_ueB); //Test Sequence Step 11 f_mtc_userCheckCallEnded(v_ueB); //Test Sequence Step 11 f_mtc_userCheckCallEnded(v_ueA); //Test Sequence Step 11 // postamble f_PO_user_home_deregistration(v_ueA); f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports f_cf_user_down(v_ueA); f_cf_user_down(v_ueB); f_cf_roam_as_down(v_config); f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0006 /** * @desc User A receive information that content sharing is not possible with user B. * @see TS 102 901-2 V0.0.1 clause 4.5.5.4.1 */ testcase TC_IMS_SHARE_0007() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A); 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_gmB := f_cf_create_monitor(c_gm_B); var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic); var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A); var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B); var ImsUserInfo v_userInfoA := f_getShareUser(PX_EUT_A); var ImsUserInfo v_userInfoB := f_getShareUser(PX_EUT_B); var CF_INT_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB}; // map/connect component ports f_cf_adapter_up(); f_cf_user_up(v_ueA); f_cf_user_up(v_ueB); f_cf_int_as_up(v_config); // preamble f_mtc_userRegistration(v_ueA, v_userInfoA); f_mtc_userRegistration(v_ueB, v_userInfoB); // test body f_mtc_StartAllTrafficCapture(); f_mtc_userSetupVoiceCall(v_ueA, v_ueB, v_userInfoB); //Test Sequence Step 1 // check 1 (OPTIONS) f_mtc_check_TP_IMS_CONTENT_SHARE_01_gm(v_gmA, false); // Check1 f_mtc_check_TP_IMS_CONTENT_SHARE_01_ic(v_ic, false); // Check1 f_mtc_userInformedAboutPartnerCannotShareContent(v_ueA); //Test Sequence Step 2 f_mtc_userInformedAboutPartnerCanShareContent(v_ueB); //Test Sequence Step 3 f_mtc_EndCall(v_ueA); //Test Sequence Step 4 f_mtc_userCheckCallEnded(v_ueB); //Test Sequence Step 4 f_mtc_userCheckCallEnded(v_ueA); //Test Sequence Step 4 // postamble f_PO_user_home_deregistration(v_ueA); f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports f_cf_user_down(v_ueA); f_cf_user_down(v_ueB); f_cf_int_as_down(v_config); f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0007 /** * @desc User A receive information that content sharing is not possible with user B. * @see TS 102 901-2 V0.0.1 clause 4.5.5.4.2 */ testcase TC_IMS_SHARE_0008() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A); 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_gmB := f_cf_create_monitor(c_gm_B); var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic); var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A); var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B); var ImsUserInfo v_userInfoA := f_getShareUser(PX_EUT_A); var ImsUserInfo v_userInfoB := f_getShareUser(PX_EUT_B); var CF_ROAM_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB}; // map/connect component ports f_cf_adapter_up(); f_cf_user_up(v_ueA); f_cf_user_up(v_ueB); f_cf_roam_as_up(v_config); // preamble f_mtc_userRegistration(v_ueA, v_userInfoA); f_mtc_userRegistration(v_ueB, v_userInfoB); // test body f_mtc_StartAllTrafficCapture(); f_mtc_userSetupVoiceCall(v_ueA, v_ueB, v_userInfoB); //Test Sequence Step 1 // check 1 (OPTIONS) f_mtc_check_TP_IMS_CONTENT_SHARE_01_gm(v_gmA, false); // Check1 f_mtc_check_TP_IMS_CONTENT_SHARE_01_ic(v_ic, false); // Check1 f_mtc_userInformedAboutPartnerCannotShareContent(v_ueA); //Test Sequence Step 2 f_mtc_userInformedAboutPartnerCanShareContent(v_ueB); //Test Sequence Step 3 f_mtc_EndCall(v_ueA); //Test Sequence Step 4 f_mtc_userCheckCallEnded(v_ueB); //Test Sequence Step 4 f_mtc_userCheckCallEnded(v_ueA); //Test Sequence Step 4 // postamble f_PO_user_home_deregistration(v_ueA); f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports f_cf_user_down(v_ueA); f_cf_user_down(v_ueB); f_cf_roam_as_down(v_config); f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0008 /** * @desc User B rejects to share content with user A * @see TS 102 901-2 V0.0.1 clause 4.5.5.5.1 */ testcase TC_IMS_SHARE_0009() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A); 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_gmB := f_cf_create_monitor(c_gm_B); var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic); var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A); var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B); var ImsUserInfo v_userInfoA := f_getShareUser(PX_EUT_A); var ImsUserInfo v_userInfoB := f_getShareUser(PX_EUT_B); var CF_INT_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB}; // map/connect component ports f_cf_adapter_up(); f_cf_user_up(v_ueA); f_cf_user_up(v_ueB); f_cf_int_as_up(v_config); // preamble f_mtc_userRegistration(v_ueA, v_userInfoA); f_mtc_userRegistration(v_ueB, v_userInfoB); // test body f_mtc_StartAllTrafficCapture(); f_mtc_userSetupVoiceCall(v_ueA, v_ueB, v_userInfoB); //Test Sequence Step 1 // check 1 (OPTIONS) f_mtc_check_TP_IMS_CONTENT_SHARE_01_gm(v_gmA, false); // Check1 f_mtc_check_TP_IMS_CONTENT_SHARE_01_ic(v_ic, false); // Check1 f_mtc_userCheckPartnerSharingCapabilities(v_ueA); //Test Sequence Step 2 f_mtc_userCheckPartnerSharingCapabilities(v_ueB); //Test Sequence Step 3 f_mtc_userInitiateShare (v_ueA, v_userInfoB); //Test Sequence Step 4 f_mtc_userRequestedToAcceptSharing(v_ueB); //Test Sequence Step 5 f_mtc_userRejectsSharing(v_ueB); //Test Sequence Step 6 // check 2 (603) f_mtc_check_TP_IMS_CONTENT_SHARE_03_gm(v_gmA, false); // Check2 f_mtc_check_TP_IMS_CONTENT_SHARE_03_ic(v_ic, false); // Check2 f_mtc_userCheckSharingRequestRejected(v_ueA); //Test Sequence Step 7 f_mtc_EndCall(v_ueA); //Test Sequence Step 8 f_mtc_userCheckCallEnded(v_ueB); //Test Sequence Step 8 f_mtc_userCheckCallEnded(v_ueA); //Test Sequence Step 8 // postamble f_PO_user_home_deregistration(v_ueA); f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports f_cf_user_down(v_ueA); f_cf_user_down(v_ueB); f_cf_int_as_down(v_config); f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0009 /** * @desc Content sharing rejection * @see TS 102 901-2 V0.0.1 clause 4.5.5.5.2 */ testcase TC_IMS_SHARE_0010() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A); 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_gmB := f_cf_create_monitor(c_gm_B); var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic); var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A); var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B); var ImsUserInfo v_userInfoA := f_getShareUser(PX_EUT_A); var ImsUserInfo v_userInfoB := f_getShareUser(PX_EUT_B); var CF_ROAM_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB}; // map/connect component ports f_cf_adapter_up(); f_cf_user_up(v_ueA); f_cf_user_up(v_ueB); f_cf_roam_as_up(v_config); // preamble f_mtc_userRegistration(v_ueA, v_userInfoA); f_mtc_userRegistration(v_ueB, v_userInfoB); // test body f_mtc_StartAllTrafficCapture(); f_mtc_userSetupVoiceCall(v_ueA, v_ueB, v_userInfoB); //Test Sequence Step 1 // check 1 (OPTIONS) f_mtc_check_TP_IMS_CONTENT_SHARE_01_gm(v_gmA, false); // Check1 f_mtc_check_TP_IMS_CONTENT_SHARE_01_ic(v_ic, false); // Check1 f_mtc_userCheckPartnerSharingCapabilities(v_ueA); //Test Sequence Step 2 f_mtc_userCheckPartnerSharingCapabilities(v_ueB); //Test Sequence Step 3 f_mtc_userInitiateShare (v_ueA, v_userInfoB); //Test Sequence Step 4 f_mtc_userRequestedToAcceptSharing(v_ueB); //Test Sequence Step 5 f_mtc_userRejectsSharing(v_ueB); //Test Sequence Step 6 // check 2 (603) f_mtc_check_TP_IMS_CONTENT_SHARE_03_gm(v_gmA, false); // Check2 f_mtc_check_TP_IMS_CONTENT_SHARE_03_ic(v_ic, false); // Check2 f_mtc_userCheckSharingRequestRejected(v_ueA); //Test Sequence Step 7 f_mtc_EndCall(v_ueA); //Test Sequence Step 8 f_mtc_userCheckCallEnded(v_ueB); //Test Sequence Step 8 f_mtc_userCheckCallEnded(v_ueA); //Test Sequence Step 8 // postamble f_PO_user_home_deregistration(v_ueA); f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports f_cf_user_down(v_ueA); f_cf_user_down(v_ueB); f_cf_roam_as_down(v_config); f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0010 }//end module AtsImsIot_TestCases_RCS No newline at end of file Loading
AtsImsIot/AtsImsIot_Behavior.ttcn +50 −0 Original line number Diff line number Diff line Loading @@ -3638,6 +3638,56 @@ group checksTC_IMS_SHARE_0001 { }//end group checksTC_IMS_SHARE_0001 group checksTC_IMS_SHARE_0009 { /** * @desc Starts monitor component behavior * @param p_monitorCompRef Reference to monitor component */ function f_mtc_check_TP_IMS_CONTENT_SHARE_03_gm( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { p_monitorCompRef.start( f_imsIot_receive( {mw_SipResponse(mw_603Decline_Base)}, {}, {0, omit}, "TP_IMS_CONTENT_SHARE_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_CONTENT_SHARE_03_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_SipResponse(mw_603Decline_Base)}, {}, {0, omit}, "TP_IMS_CONTENT_SHARE_03", false, p_checkMessage ) ); p_monitorCompRef.done; } //function*/ }//end group checksTC_IMS_SHARE_0009 group messagingChecks { /** * @desc Starts monitor component behavior for TP_IMS_5097_05 Loading
AtsImsIot/AtsImsIot_Functions.ttcn +59 −0 Original line number Diff line number Diff line Loading @@ -1486,6 +1486,65 @@ module AtsImsIot_Functions { return v_status; } /** * @desc Trigger UE given by p_ueRef to verify that user is informed * that connected user cannot share content * @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_userInformedAboutPartnerCannotShareContent(EquipmentUser p_userCompRef) runs on TestCoordinator return boolean { var boolean v_status := true; // TODO return v_status; } /** * @desc Trigger UE given by p_ueRef to verify that user is informed * that connected user cannot share content * @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_userInformedAboutPartnerCanShareContent(EquipmentUser p_userCompRef) runs on TestCoordinator return boolean { var boolean v_status := true; // TODO return v_status; } /** * @desc Trigger UE given by p_ueRef to verify that user rejects sharing * @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_userRejectsSharing(EquipmentUser p_userCompRef) runs on TestCoordinator return boolean { var boolean v_status := true; // TODO return v_status; } /** * @desc Trigger UE given by p_ueRef to verify that user is informed * that request has been rejected * @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_userCheckSharingRequestRejected(EquipmentUser p_userCompRef) runs on TestCoordinator return boolean { var boolean v_status := true; // TODO return v_status; } /** * @desc Trigger IMS Network to deregister UE given by p_ueRef Loading
AtsImsIot/AtsImsIot_Templates.ttcn +8 −0 Original line number Diff line number Diff line Loading @@ -1794,6 +1794,14 @@ module AtsImsIot_Templates { msgHeader := ?, messageBody := *, payload := * } template Response mw_603Decline_Base modifies m_Response_Dummy := { statusLine := c_statusLine603, msgHeader := ?, messageBody := *, payload := * } template REGISTER_Request mdw_TP_IMS_5088_01_gm modifies mw_REGISTER_Request_Base := { Loading
AtsImsIot/AtsImsIot_TestCases_RCS.ttcn +370 −0 Original line number Diff line number Diff line Loading @@ -2157,5 +2157,375 @@ module AtsImsIot_TestCases_RCS { f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0004 /** * @desc User A sets up a voice call to user B and user B shares content with user A. * @see TS 102 901-2 V0.0.1 clause 4.5.5.3.1 */ testcase TC_IMS_SHARE_0005() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A); 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_gmB := f_cf_create_monitor(c_gm_B); var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic); var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A); var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B); var ImsUserInfo v_userInfoA := f_getShareUser(PX_EUT_A); var ImsUserInfo v_userInfoB := f_getShareUser(PX_EUT_B); var CF_INT_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB}; // map/connect component ports f_cf_adapter_up(); f_cf_user_up(v_ueA); f_cf_user_up(v_ueB); f_cf_int_as_up(v_config); // preamble f_mtc_userRegistration(v_ueA, v_userInfoA); f_mtc_userRegistration(v_ueB, v_userInfoB); // test body f_mtc_StartAllTrafficCapture(); f_mtc_userSetupVoiceCall(v_ueA, v_ueB, v_userInfoB); //Test Sequence Step 1 // check 1 (OPTIONS) f_mtc_check_TP_IMS_CONTENT_SHARE_01_gm(v_gmA, false); // Check1 f_mtc_check_TP_IMS_CONTENT_SHARE_01_ic(v_ic, false); // Check1 f_mtc_userCheckPartnerSharingCapabilities(v_ueA); //Test Sequence Step 2 f_mtc_userCheckPartnerSharingCapabilities(v_ueB); //Test Sequence Step 3 f_mtc_userInitiateShare (v_ueB, v_userInfoA); //Test Sequence Step 4 f_mtc_userRequestedToAcceptSharing(v_ueA); //Test Sequence Step 5 f_mtc_userAcceptsSharing(v_ueA); //Test Sequence Step 6 f_mtc_userCheckSharingRequestAnswered(v_ueB); //Test Sequence Step 7 f_mtc_EndSharing(v_ueB); //Test Sequence Step 8 f_mtc_userCheckSharingEnded(v_ueB); //Test Sequence Step 9 f_mtc_userCheckSharingEnded(v_ueA); //Test Sequence Step 10 f_mtc_EndCall(v_ueB); //Test Sequence Step 11 f_mtc_userCheckCallEnded(v_ueB); //Test Sequence Step 11 f_mtc_userCheckCallEnded(v_ueA); //Test Sequence Step 11 // postamble f_PO_user_home_deregistration(v_ueA); f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports f_cf_user_down(v_ueA); f_cf_user_down(v_ueB); f_cf_int_as_down(v_config); f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0005 /** * @desc User A sets up a voice call to user B and user B shares content with user A. * @see TS 102 901-2 V0.0.1 clause 4.5.5.3.2 */ testcase TC_IMS_SHARE_0006() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A); 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_gmB := f_cf_create_monitor(c_gm_B); var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic); var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A); var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B); var ImsUserInfo v_userInfoA := f_getShareUser(PX_EUT_A); var ImsUserInfo v_userInfoB := f_getShareUser(PX_EUT_B); var CF_ROAM_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB}; // map/connect component ports f_cf_adapter_up(); f_cf_user_up(v_ueA); f_cf_user_up(v_ueB); f_cf_roam_as_up(v_config); // preamble f_mtc_userRegistration(v_ueA, v_userInfoA); f_mtc_userRegistration(v_ueB, v_userInfoB); // test body f_mtc_StartAllTrafficCapture(); f_mtc_userSetupVoiceCall(v_ueA, v_ueB, v_userInfoB); //Test Sequence Step 1 // check 1 (OPTIONS) f_mtc_check_TP_IMS_CONTENT_SHARE_01_gm(v_gmA, false); // Check1 f_mtc_check_TP_IMS_CONTENT_SHARE_01_ic(v_ic, false); // Check1 f_mtc_userCheckPartnerSharingCapabilities(v_ueA); //Test Sequence Step 2 f_mtc_userCheckPartnerSharingCapabilities(v_ueB); //Test Sequence Step 3 f_mtc_userInitiateShare (v_ueB, v_userInfoA); //Test Sequence Step 4 f_mtc_userRequestedToAcceptSharing(v_ueA); //Test Sequence Step 5 f_mtc_userAcceptsSharing(v_ueA); //Test Sequence Step 6 f_mtc_userCheckSharingRequestAnswered(v_ueB); //Test Sequence Step 7 f_mtc_EndSharing(v_ueB); //Test Sequence Step 8 f_mtc_userCheckSharingEnded(v_ueB); //Test Sequence Step 9 f_mtc_userCheckSharingEnded(v_ueA); //Test Sequence Step 10 f_mtc_EndCall(v_ueB); //Test Sequence Step 11 f_mtc_userCheckCallEnded(v_ueB); //Test Sequence Step 11 f_mtc_userCheckCallEnded(v_ueA); //Test Sequence Step 11 // postamble f_PO_user_home_deregistration(v_ueA); f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports f_cf_user_down(v_ueA); f_cf_user_down(v_ueB); f_cf_roam_as_down(v_config); f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0006 /** * @desc User A receive information that content sharing is not possible with user B. * @see TS 102 901-2 V0.0.1 clause 4.5.5.4.1 */ testcase TC_IMS_SHARE_0007() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A); 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_gmB := f_cf_create_monitor(c_gm_B); var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic); var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A); var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B); var ImsUserInfo v_userInfoA := f_getShareUser(PX_EUT_A); var ImsUserInfo v_userInfoB := f_getShareUser(PX_EUT_B); var CF_INT_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB}; // map/connect component ports f_cf_adapter_up(); f_cf_user_up(v_ueA); f_cf_user_up(v_ueB); f_cf_int_as_up(v_config); // preamble f_mtc_userRegistration(v_ueA, v_userInfoA); f_mtc_userRegistration(v_ueB, v_userInfoB); // test body f_mtc_StartAllTrafficCapture(); f_mtc_userSetupVoiceCall(v_ueA, v_ueB, v_userInfoB); //Test Sequence Step 1 // check 1 (OPTIONS) f_mtc_check_TP_IMS_CONTENT_SHARE_01_gm(v_gmA, false); // Check1 f_mtc_check_TP_IMS_CONTENT_SHARE_01_ic(v_ic, false); // Check1 f_mtc_userInformedAboutPartnerCannotShareContent(v_ueA); //Test Sequence Step 2 f_mtc_userInformedAboutPartnerCanShareContent(v_ueB); //Test Sequence Step 3 f_mtc_EndCall(v_ueA); //Test Sequence Step 4 f_mtc_userCheckCallEnded(v_ueB); //Test Sequence Step 4 f_mtc_userCheckCallEnded(v_ueA); //Test Sequence Step 4 // postamble f_PO_user_home_deregistration(v_ueA); f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports f_cf_user_down(v_ueA); f_cf_user_down(v_ueB); f_cf_int_as_down(v_config); f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0007 /** * @desc User A receive information that content sharing is not possible with user B. * @see TS 102 901-2 V0.0.1 clause 4.5.5.4.2 */ testcase TC_IMS_SHARE_0008() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A); 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_gmB := f_cf_create_monitor(c_gm_B); var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic); var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A); var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B); var ImsUserInfo v_userInfoA := f_getShareUser(PX_EUT_A); var ImsUserInfo v_userInfoB := f_getShareUser(PX_EUT_B); var CF_ROAM_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB}; // map/connect component ports f_cf_adapter_up(); f_cf_user_up(v_ueA); f_cf_user_up(v_ueB); f_cf_roam_as_up(v_config); // preamble f_mtc_userRegistration(v_ueA, v_userInfoA); f_mtc_userRegistration(v_ueB, v_userInfoB); // test body f_mtc_StartAllTrafficCapture(); f_mtc_userSetupVoiceCall(v_ueA, v_ueB, v_userInfoB); //Test Sequence Step 1 // check 1 (OPTIONS) f_mtc_check_TP_IMS_CONTENT_SHARE_01_gm(v_gmA, false); // Check1 f_mtc_check_TP_IMS_CONTENT_SHARE_01_ic(v_ic, false); // Check1 f_mtc_userInformedAboutPartnerCannotShareContent(v_ueA); //Test Sequence Step 2 f_mtc_userInformedAboutPartnerCanShareContent(v_ueB); //Test Sequence Step 3 f_mtc_EndCall(v_ueA); //Test Sequence Step 4 f_mtc_userCheckCallEnded(v_ueB); //Test Sequence Step 4 f_mtc_userCheckCallEnded(v_ueA); //Test Sequence Step 4 // postamble f_PO_user_home_deregistration(v_ueA); f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports f_cf_user_down(v_ueA); f_cf_user_down(v_ueB); f_cf_roam_as_down(v_config); f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0008 /** * @desc User B rejects to share content with user A * @see TS 102 901-2 V0.0.1 clause 4.5.5.5.1 */ testcase TC_IMS_SHARE_0009() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A); 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_gmB := f_cf_create_monitor(c_gm_B); var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic); var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A); var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B); var ImsUserInfo v_userInfoA := f_getShareUser(PX_EUT_A); var ImsUserInfo v_userInfoB := f_getShareUser(PX_EUT_B); var CF_INT_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB}; // map/connect component ports f_cf_adapter_up(); f_cf_user_up(v_ueA); f_cf_user_up(v_ueB); f_cf_int_as_up(v_config); // preamble f_mtc_userRegistration(v_ueA, v_userInfoA); f_mtc_userRegistration(v_ueB, v_userInfoB); // test body f_mtc_StartAllTrafficCapture(); f_mtc_userSetupVoiceCall(v_ueA, v_ueB, v_userInfoB); //Test Sequence Step 1 // check 1 (OPTIONS) f_mtc_check_TP_IMS_CONTENT_SHARE_01_gm(v_gmA, false); // Check1 f_mtc_check_TP_IMS_CONTENT_SHARE_01_ic(v_ic, false); // Check1 f_mtc_userCheckPartnerSharingCapabilities(v_ueA); //Test Sequence Step 2 f_mtc_userCheckPartnerSharingCapabilities(v_ueB); //Test Sequence Step 3 f_mtc_userInitiateShare (v_ueA, v_userInfoB); //Test Sequence Step 4 f_mtc_userRequestedToAcceptSharing(v_ueB); //Test Sequence Step 5 f_mtc_userRejectsSharing(v_ueB); //Test Sequence Step 6 // check 2 (603) f_mtc_check_TP_IMS_CONTENT_SHARE_03_gm(v_gmA, false); // Check2 f_mtc_check_TP_IMS_CONTENT_SHARE_03_ic(v_ic, false); // Check2 f_mtc_userCheckSharingRequestRejected(v_ueA); //Test Sequence Step 7 f_mtc_EndCall(v_ueA); //Test Sequence Step 8 f_mtc_userCheckCallEnded(v_ueB); //Test Sequence Step 8 f_mtc_userCheckCallEnded(v_ueA); //Test Sequence Step 8 // postamble f_PO_user_home_deregistration(v_ueA); f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports f_cf_user_down(v_ueA); f_cf_user_down(v_ueB); f_cf_int_as_down(v_config); f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0009 /** * @desc Content sharing rejection * @see TS 102 901-2 V0.0.1 clause 4.5.5.5.2 */ testcase TC_IMS_SHARE_0010() runs on ImsTestCoordinator system IotSystemInterface { // create components var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser(c_userUE_A); 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_gmB := f_cf_create_monitor(c_gm_B); var ImsInterfaceMonitor v_ic := f_cf_create_monitor(c_ic); var ImsInterfaceMonitor v_iscA := f_cf_create_monitor(c_isc_A); var ImsInterfaceMonitor v_iscB := f_cf_create_monitor(c_isc_B); var ImsUserInfo v_userInfoA := f_getShareUser(PX_EUT_A); var ImsUserInfo v_userInfoB := f_getShareUser(PX_EUT_B); var CF_ROAM_AS v_config := {v_gmA, v_ic, v_gmB, v_iscA, v_iscB}; // map/connect component ports f_cf_adapter_up(); f_cf_user_up(v_ueA); f_cf_user_up(v_ueB); f_cf_roam_as_up(v_config); // preamble f_mtc_userRegistration(v_ueA, v_userInfoA); f_mtc_userRegistration(v_ueB, v_userInfoB); // test body f_mtc_StartAllTrafficCapture(); f_mtc_userSetupVoiceCall(v_ueA, v_ueB, v_userInfoB); //Test Sequence Step 1 // check 1 (OPTIONS) f_mtc_check_TP_IMS_CONTENT_SHARE_01_gm(v_gmA, false); // Check1 f_mtc_check_TP_IMS_CONTENT_SHARE_01_ic(v_ic, false); // Check1 f_mtc_userCheckPartnerSharingCapabilities(v_ueA); //Test Sequence Step 2 f_mtc_userCheckPartnerSharingCapabilities(v_ueB); //Test Sequence Step 3 f_mtc_userInitiateShare (v_ueA, v_userInfoB); //Test Sequence Step 4 f_mtc_userRequestedToAcceptSharing(v_ueB); //Test Sequence Step 5 f_mtc_userRejectsSharing(v_ueB); //Test Sequence Step 6 // check 2 (603) f_mtc_check_TP_IMS_CONTENT_SHARE_03_gm(v_gmA, false); // Check2 f_mtc_check_TP_IMS_CONTENT_SHARE_03_ic(v_ic, false); // Check2 f_mtc_userCheckSharingRequestRejected(v_ueA); //Test Sequence Step 7 f_mtc_EndCall(v_ueA); //Test Sequence Step 8 f_mtc_userCheckCallEnded(v_ueB); //Test Sequence Step 8 f_mtc_userCheckCallEnded(v_ueA); //Test Sequence Step 8 // postamble f_PO_user_home_deregistration(v_ueA); f_PO_user_home_deregistration(v_ueB); //unmap/disconnet component ports f_cf_user_down(v_ueA); f_cf_user_down(v_ueB); f_cf_roam_as_down(v_config); f_cf_adapter_down(); } //end testcase TC_IMS_SHARE_0010 }//end module AtsImsIot_TestCases_RCS No newline at end of file