Loading ttcn/AtsImsIot/AtsImsIot_Behavior.ttcn +129 −0 Original line number Diff line number Diff line Loading @@ -5696,6 +5696,19 @@ group checksTC_IMS_SHARE_0009 { // TODO } // End of function f_mtc_check_TP_EPC_6012_01 /** * Starts monitor component behavior for TP_EPC_6012_02 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6012_02( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6012_02 /** * Starts monitor component behavior for TP_EPC_6013_01 * @param p_monitorCompRef Reference to monitor component Loading Loading @@ -5761,6 +5774,32 @@ group checksTC_IMS_SHARE_0009 { // TODO } // End of function f_mtc_check_TP_EPC_6015_01 /** * Starts monitor component behavior for TP_EPC_6016_01 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6016_01 ( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6016_01 /** * Starts monitor component behavior for TP_EPC_6016_02 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6016_02( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6016_02 /** * Starts monitor component behavior for TP_EPC_6017_01 * @param p_monitorCompRef Reference to monitor component Loading Loading @@ -5837,6 +5876,96 @@ group checksTC_IMS_SHARE_0009 { // TODO } // End of function f_mtc_check_TP_EPC_6019_01 /** * Starts monitor component behavior for TP_EPC_6016_02 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6020_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6020_01 /** * Starts monitor component behavior for TP_EPC_6016_02 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6021_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6021_01 /** * Starts monitor component behavior for TP_EPC_6022_01 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6022_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6022_01 /** * Starts monitor component behavior for TP_EPC_6023_01 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6023_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6023_01 /** * Starts monitor component behavior for TP_EPC_6024_01 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6024_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6024_01 /** * Starts monitor component behavior for TP_EPC_6025_01 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6025_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6025_01 /** * Starts monitor component behavior for TP_EPC_6026_01 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6026_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6026_01 /** * Starts monitor component behavior for TP_EPC_6027_01 * @param p_monitorCompRef Reference to monitor component Loading ttcn/AtsImsIot/AtsImsIot_TestCases_EPC.ttcn3 +197 −36 Original line number Diff line number Diff line Loading @@ -7,41 +7,20 @@ module AtsImsIot_TestCases_EPC { // LibCommon // LibSip // LibIms import from LibIms_UpperTester { type ImsUserInfo }; import from LibIms_UpperTester { type ImsUserInfo }; // LibIot import from LibIot_TestInterface { type IotEquipmentUser }; import from LibIot_TestConfiguration { function f_cf_create_IotEquipmentUser }; import from LibIot_PIXITS { modulepar PX_EUT_A, PX_EUT_B, PX_EUT_C }; import from LibIot_TestInterface { type IotEquipmentUser }; import from LibIot_TestConfiguration { function f_cf_create_IotEquipmentUser }; import from LibIot_PIXITS { modulepar PX_EUT_A, PX_EUT_B, PX_EUT_C }; // LibImsIot import from AtsImsIot_Functions { function f_getImUser }; import from AtsImsIot_Functions { function f_getImUser }; // ImsIot import from AtsImsIot_TestConfiguration all; import from AtsImsIot_TestSystem all; import from AtsImsIot_Functions all; import from AtsImsIot_Behavior { group epcChecks; function f_mtc_check_response_mx, f_mtc_check_TP_IMS_5011_01_gm }; import from AtsImsIot_Behavior { group epcChecks; function f_mtc_check_response_mx, f_mtc_check_TP_IMS_5011_01_gm }; group networkAttachmentAndDefaultBearer { /** Loading Loading @@ -187,6 +166,47 @@ module AtsImsIot_TestCases_EPC { f_cf_adapter_down ( ); } // End of TC TC_IMSEPC_Registration_Initial_Successful_0001 /** * @desc IMS Initial Registration - Failed. * On failed UE Registration to IMS, IMS will not trigger the creation of a bearer for the * transport of the subsequent SIP signalling. */ testcase TC_IMSEPC_Registration_Initial_Failed_0001 ( ) runs on ImsTestCoordinator system IotSystemInterface { var CF_EPC_CALL v_config; var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); v_config.gmA := f_cf_create_monitor ( c_gm_A ); v_config.gmB := f_cf_create_monitor ( c_gm_B ); v_config.rx := f_cf_create_monitor ( c_rx ); // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); f_cf_user_up ( v_ueA ); f_cf_epc_call_up ( v_config ); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile f_mtc_userRegistration ( v_ueA, v_userInfoA ); f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body f_mtc_check_TP_EPC_6016_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6016_02 ( v_config.gmA, false ); // postamble f_PO_user_home_deregistration ( v_ueB ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnet component ports f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_epc_call_down ( v_config ); f_cf_adapter_down ( ); } // End of TC TC_IMSEPC_Registration_Initial_Failed_0001 /** * @desc IMS De-registration. * On UE_A de-registration, P-CSCF signals to PCRF the termination of the IMS signalling session. Loading @@ -194,7 +214,7 @@ module AtsImsIot_TestCases_EPC { * Initial registration are still possible, but traffic will be categorized in the Default Bearer * @see TS 103 029 V3.1.1 clause 7.2.2 */ testcase TC_IMSEPC_DeRegistration_UE_0003 ( ) runs on ImsTestCoordinator system IotSystemInterface { testcase TC_IMSEPC_DeRegistration_UE_0001 ( ) runs on ImsTestCoordinator system IotSystemInterface { var CF_EPC_CALL v_config; var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); Loading Loading @@ -230,7 +250,148 @@ module AtsImsIot_TestCases_EPC { f_cf_user_down ( v_ueA ); f_cf_epc_call_down ( v_config ); f_cf_adapter_down ( ); } // End of TC TC_IMSEPC_DeRegistration_UE_0003 } // End of TC TC_IMSEPC_DeRegistration_UE_0001 /** * @desc IMS De-registration. * On UE A de-registration, the S-CSCF performs S-CSCF-initiated termination of active * session. P-CSCF will act on this event and signals to PCRF termination of the SIP session bearers. * EPC removes the SIP Session bearer. * Media cannot be exchange any longer on previous SIP Session bearer. * The S-CSCF answers to the de-registration. * The P-CSCF signals to PCRF the termination of IMS signalling session. * EPC removes IMS signalling bearer. */ testcase TC_IMSEPC_DeRegistration_UE_Active_Session_0001 ( ) runs on ImsTestCoordinator system IotSystemInterface { var CF_EPC_CALL v_config; var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); v_config.gmA := f_cf_create_monitor ( c_gm_A ); v_config.gmB := f_cf_create_monitor ( c_gm_B ); v_config.rx := f_cf_create_monitor ( c_rx ); // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); f_cf_user_up ( v_ueA ); f_cf_epc_call_up ( v_config ); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile f_mtc_userRegistration ( v_ueA, v_userInfoA ); f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body f_mtc_check_TP_EPC_6020_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6021_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6022_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6009_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6023_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6012_02 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6009_02 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6003_02 ( v_config.gmA, false ); // postamble f_PO_user_home_deregistration ( v_ueB ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnet component ports f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_epc_call_down ( v_config ); f_cf_adapter_down ( ); } // End of TC TC_IMSEPC_DeRegistration_UE_Active_Session_0001 /** * @desc IMS De-registration. * On administrative de-registration, S-CSCF notifies the UE A and P-CSCF about the event. * P-CSCF signals to PCRF the termination of the IMS signalling session. * EPC removes the IMS signalling bearer. * Initial registration are still possible, but traffic will be categorized in the Default Bearer. */ testcase TC_IMSEPC_DeRegistration_Administrative_0001 ( ) runs on ImsTestCoordinator system IotSystemInterface { var CF_EPC_CALL v_config; var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); v_config.gmA := f_cf_create_monitor ( c_gm_A ); v_config.gmB := f_cf_create_monitor ( c_gm_B ); v_config.rx := f_cf_create_monitor ( c_rx ); // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); f_cf_user_up ( v_ueA ); f_cf_epc_call_up ( v_config ); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile f_mtc_userRegistration ( v_ueA, v_userInfoA ); f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body f_mtc_check_TP_EPC_6024_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6025_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6009_02 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6018_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6019_01 ( v_config.gmA, false ); // postamble f_PO_user_home_deregistration ( v_ueB ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnet component ports f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_epc_call_down ( v_config ); f_cf_adapter_down ( ); } // End of TC TC_IMSEPC_DeRegistration_Administrative_0001 /** * @desc IMS De-registration. * On registration expiration, P-CSCF signals to PCRF the termination of the IMS signalling session. * EPC removes the IMS signalling bearer. * Initial registration are still possible, but traffic will be categorized in the Default Bearer. */ testcase TC_IMSEPC_DeRegistration_Expiration_0001 ( ) runs on ImsTestCoordinator system IotSystemInterface { var CF_EPC_CALL v_config; var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); v_config.gmA := f_cf_create_monitor ( c_gm_A ); v_config.gmB := f_cf_create_monitor ( c_gm_B ); v_config.rx := f_cf_create_monitor ( c_rx ); // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); f_cf_user_up ( v_ueA ); f_cf_epc_call_up ( v_config ); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile f_mtc_userRegistration ( v_ueA, v_userInfoA ); f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body f_mtc_check_TP_EPC_6026_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6009_02 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6019_01 ( v_config.gmA, false ); // postamble f_PO_user_home_deregistration ( v_ueB ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnet component ports f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_epc_call_down ( v_config ); f_cf_adapter_down ( ); } // End of TC TC_IMSEPC_DeRegistration_Expiration_0001 } // End of group imsRegistrationAndAFSignallingBearer group sipSessionAndSessionBearer { Loading Loading
ttcn/AtsImsIot/AtsImsIot_Behavior.ttcn +129 −0 Original line number Diff line number Diff line Loading @@ -5696,6 +5696,19 @@ group checksTC_IMS_SHARE_0009 { // TODO } // End of function f_mtc_check_TP_EPC_6012_01 /** * Starts monitor component behavior for TP_EPC_6012_02 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6012_02( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6012_02 /** * Starts monitor component behavior for TP_EPC_6013_01 * @param p_monitorCompRef Reference to monitor component Loading Loading @@ -5761,6 +5774,32 @@ group checksTC_IMS_SHARE_0009 { // TODO } // End of function f_mtc_check_TP_EPC_6015_01 /** * Starts monitor component behavior for TP_EPC_6016_01 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6016_01 ( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6016_01 /** * Starts monitor component behavior for TP_EPC_6016_02 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6016_02( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6016_02 /** * Starts monitor component behavior for TP_EPC_6017_01 * @param p_monitorCompRef Reference to monitor component Loading Loading @@ -5837,6 +5876,96 @@ group checksTC_IMS_SHARE_0009 { // TODO } // End of function f_mtc_check_TP_EPC_6019_01 /** * Starts monitor component behavior for TP_EPC_6016_02 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6020_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6020_01 /** * Starts monitor component behavior for TP_EPC_6016_02 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6021_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6021_01 /** * Starts monitor component behavior for TP_EPC_6022_01 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6022_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6022_01 /** * Starts monitor component behavior for TP_EPC_6023_01 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6023_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6023_01 /** * Starts monitor component behavior for TP_EPC_6024_01 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6024_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6024_01 /** * Starts monitor component behavior for TP_EPC_6025_01 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6025_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6025_01 /** * Starts monitor component behavior for TP_EPC_6026_01 * @param p_monitorCompRef Reference to monitor component * @param p_checkMessage indicate if the incomming message should only be checked (port.check) or consumed (port.receive). * The check operation allows read access to the top element of incoming port queues without removing the top element from the queue. */ function f_mtc_check_TP_EPC_6026_01( ImsInterfaceMonitor p_monitorCompRef, boolean p_checkMessage ) runs on ImsTestCoordinator { // TODO } // End of function f_mtc_check_TP_EPC_6026_01 /** * Starts monitor component behavior for TP_EPC_6027_01 * @param p_monitorCompRef Reference to monitor component Loading
ttcn/AtsImsIot/AtsImsIot_TestCases_EPC.ttcn3 +197 −36 Original line number Diff line number Diff line Loading @@ -7,41 +7,20 @@ module AtsImsIot_TestCases_EPC { // LibCommon // LibSip // LibIms import from LibIms_UpperTester { type ImsUserInfo }; import from LibIms_UpperTester { type ImsUserInfo }; // LibIot import from LibIot_TestInterface { type IotEquipmentUser }; import from LibIot_TestConfiguration { function f_cf_create_IotEquipmentUser }; import from LibIot_PIXITS { modulepar PX_EUT_A, PX_EUT_B, PX_EUT_C }; import from LibIot_TestInterface { type IotEquipmentUser }; import from LibIot_TestConfiguration { function f_cf_create_IotEquipmentUser }; import from LibIot_PIXITS { modulepar PX_EUT_A, PX_EUT_B, PX_EUT_C }; // LibImsIot import from AtsImsIot_Functions { function f_getImUser }; import from AtsImsIot_Functions { function f_getImUser }; // ImsIot import from AtsImsIot_TestConfiguration all; import from AtsImsIot_TestSystem all; import from AtsImsIot_Functions all; import from AtsImsIot_Behavior { group epcChecks; function f_mtc_check_response_mx, f_mtc_check_TP_IMS_5011_01_gm }; import from AtsImsIot_Behavior { group epcChecks; function f_mtc_check_response_mx, f_mtc_check_TP_IMS_5011_01_gm }; group networkAttachmentAndDefaultBearer { /** Loading Loading @@ -187,6 +166,47 @@ module AtsImsIot_TestCases_EPC { f_cf_adapter_down ( ); } // End of TC TC_IMSEPC_Registration_Initial_Successful_0001 /** * @desc IMS Initial Registration - Failed. * On failed UE Registration to IMS, IMS will not trigger the creation of a bearer for the * transport of the subsequent SIP signalling. */ testcase TC_IMSEPC_Registration_Initial_Failed_0001 ( ) runs on ImsTestCoordinator system IotSystemInterface { var CF_EPC_CALL v_config; var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); v_config.gmA := f_cf_create_monitor ( c_gm_A ); v_config.gmB := f_cf_create_monitor ( c_gm_B ); v_config.rx := f_cf_create_monitor ( c_rx ); // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); f_cf_user_up ( v_ueA ); f_cf_epc_call_up ( v_config ); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile f_mtc_userRegistration ( v_ueA, v_userInfoA ); f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body f_mtc_check_TP_EPC_6016_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6016_02 ( v_config.gmA, false ); // postamble f_PO_user_home_deregistration ( v_ueB ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnet component ports f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_epc_call_down ( v_config ); f_cf_adapter_down ( ); } // End of TC TC_IMSEPC_Registration_Initial_Failed_0001 /** * @desc IMS De-registration. * On UE_A de-registration, P-CSCF signals to PCRF the termination of the IMS signalling session. Loading @@ -194,7 +214,7 @@ module AtsImsIot_TestCases_EPC { * Initial registration are still possible, but traffic will be categorized in the Default Bearer * @see TS 103 029 V3.1.1 clause 7.2.2 */ testcase TC_IMSEPC_DeRegistration_UE_0003 ( ) runs on ImsTestCoordinator system IotSystemInterface { testcase TC_IMSEPC_DeRegistration_UE_0001 ( ) runs on ImsTestCoordinator system IotSystemInterface { var CF_EPC_CALL v_config; var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); Loading Loading @@ -230,7 +250,148 @@ module AtsImsIot_TestCases_EPC { f_cf_user_down ( v_ueA ); f_cf_epc_call_down ( v_config ); f_cf_adapter_down ( ); } // End of TC TC_IMSEPC_DeRegistration_UE_0003 } // End of TC TC_IMSEPC_DeRegistration_UE_0001 /** * @desc IMS De-registration. * On UE A de-registration, the S-CSCF performs S-CSCF-initiated termination of active * session. P-CSCF will act on this event and signals to PCRF termination of the SIP session bearers. * EPC removes the SIP Session bearer. * Media cannot be exchange any longer on previous SIP Session bearer. * The S-CSCF answers to the de-registration. * The P-CSCF signals to PCRF the termination of IMS signalling session. * EPC removes IMS signalling bearer. */ testcase TC_IMSEPC_DeRegistration_UE_Active_Session_0001 ( ) runs on ImsTestCoordinator system IotSystemInterface { var CF_EPC_CALL v_config; var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); v_config.gmA := f_cf_create_monitor ( c_gm_A ); v_config.gmB := f_cf_create_monitor ( c_gm_B ); v_config.rx := f_cf_create_monitor ( c_rx ); // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); f_cf_user_up ( v_ueA ); f_cf_epc_call_up ( v_config ); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile f_mtc_userRegistration ( v_ueA, v_userInfoA ); f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body f_mtc_check_TP_EPC_6020_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6021_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6022_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6009_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6023_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6012_02 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6009_02 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6003_02 ( v_config.gmA, false ); // postamble f_PO_user_home_deregistration ( v_ueB ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnet component ports f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_epc_call_down ( v_config ); f_cf_adapter_down ( ); } // End of TC TC_IMSEPC_DeRegistration_UE_Active_Session_0001 /** * @desc IMS De-registration. * On administrative de-registration, S-CSCF notifies the UE A and P-CSCF about the event. * P-CSCF signals to PCRF the termination of the IMS signalling session. * EPC removes the IMS signalling bearer. * Initial registration are still possible, but traffic will be categorized in the Default Bearer. */ testcase TC_IMSEPC_DeRegistration_Administrative_0001 ( ) runs on ImsTestCoordinator system IotSystemInterface { var CF_EPC_CALL v_config; var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); v_config.gmA := f_cf_create_monitor ( c_gm_A ); v_config.gmB := f_cf_create_monitor ( c_gm_B ); v_config.rx := f_cf_create_monitor ( c_rx ); // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); f_cf_user_up ( v_ueA ); f_cf_epc_call_up ( v_config ); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile f_mtc_userRegistration ( v_ueA, v_userInfoA ); f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body f_mtc_check_TP_EPC_6024_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6025_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6009_02 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6018_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6019_01 ( v_config.gmA, false ); // postamble f_PO_user_home_deregistration ( v_ueB ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnet component ports f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_epc_call_down ( v_config ); f_cf_adapter_down ( ); } // End of TC TC_IMSEPC_DeRegistration_Administrative_0001 /** * @desc IMS De-registration. * On registration expiration, P-CSCF signals to PCRF the termination of the IMS signalling session. * EPC removes the IMS signalling bearer. * Initial registration are still possible, but traffic will be categorized in the Default Bearer. */ testcase TC_IMSEPC_DeRegistration_Expiration_0001 ( ) runs on ImsTestCoordinator system IotSystemInterface { var CF_EPC_CALL v_config; var IotEquipmentUser v_ueA := f_cf_create_IotEquipmentUser ( c_userUE_A ); var IotEquipmentUser v_ueB := f_cf_create_IotEquipmentUser ( c_userUE_B ); var ImsUserInfo v_userInfoA := f_getImUser ( PX_EUT_A ); var ImsUserInfo v_userInfoB := f_getImUser ( PX_EUT_B ); v_config.gmA := f_cf_create_monitor ( c_gm_A ); v_config.gmB := f_cf_create_monitor ( c_gm_B ); v_config.rx := f_cf_create_monitor ( c_rx ); // map/connect component ports f_cf_adapter_up ( ); f_cf_user_up ( v_ueA ); f_cf_user_up ( v_ueA ); f_cf_epc_call_up ( v_config ); // preamble f_mtc_userRadioEnabled ( v_ueA, true, true ); // UA-A trigger an initial network_attachment by enabling radio interface of its mobile f_mtc_userRegistration ( v_ueA, v_userInfoA ); f_mtc_userRegistration ( v_ueB, v_userInfoB ); // test body f_mtc_check_TP_EPC_6026_01 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6009_02 ( v_config.gmA, false ); f_mtc_check_TP_EPC_6019_01 ( v_config.gmA, false ); // postamble f_PO_user_home_deregistration ( v_ueB ); f_mtc_userRadioEnabled ( v_ueA, false, true ); //unmap/disconnet component ports f_cf_user_down ( v_ueB ); f_cf_user_down ( v_ueA ); f_cf_epc_call_down ( v_config ); f_cf_adapter_down ( ); } // End of TC TC_IMSEPC_DeRegistration_Expiration_0001 } // End of group imsRegistrationAndAFSignallingBearer group sipSessionAndSessionBearer { Loading