Commit 3e401e73 authored by juvancic's avatar juvancic
Browse files

added de-attach TPs

parent edc1b714
Loading
Loading
Loading
Loading
+248 −60
Original line number Original line Diff line number Diff line
@@ -29,6 +29,7 @@ module AtsImsIot_TD_DTC{
    import from AtsImsIot_TP_behavior_IC all;
    import from AtsImsIot_TP_behavior_IC all;
    import from AtsImsIot_TP_behavior_CX all;
    import from AtsImsIot_TP_behavior_CX all;
    import from AtsImsIot_TP_behavior_GX all;
    import from AtsImsIot_TP_behavior_GX all;
	import from AtsImsIot_TP_behavior_RX all;
    import from AtsImsIot_TP_behavior_ISC all;
    import from AtsImsIot_TP_behavior_ISC all;
    import from AtsImsIot_TP_behavior_S6A all;
    import from AtsImsIot_TP_behavior_S6A all;
    import from AtsImsIot_TP_behavior_S9 all;
    import from AtsImsIot_TP_behavior_S9 all;
@@ -45,25 +46,34 @@ module AtsImsIot_TD_DTC{
            testcase TC_VxLTE_INT_DTC_01 ( ) runs on ImsTestCoordinator system IotSystemInterface {
            testcase TC_VxLTE_INT_DTC_01 ( ) runs on ImsTestCoordinator system IotSystemInterface {
                
                
                var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
                var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
                var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
                //var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
                var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
                var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
                var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
                //var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
    
    
                f_setVxLteMonIterfacesAvailability();
                f_setVxLteMonIterfacesAvailability();
				//Check required monitor interfaces due to TD
				//Check required monitor interfaces due to TD
				if (f_checkVxLteRequiredMonitorInterface({/*TODO*/})){
				if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_GX_INTERFACENAME})){
	                f_cf_createVxLteMonitor();    
	                f_cf_createVxLteMonitor();    
	        
	        
	                // map/connect component ports
	                // map/connect component ports
	                f_cf_adapter_up ( );
	                f_cf_adapter_up ( );
	                f_cf_user_up ( v_ueA );
	                f_cf_user_up ( v_ueA );
	                f_cf_user_up ( v_ueB );
	                //f_cf_user_up ( v_ueB );
	                f_cf_VxLteMonitor_Up();
	                f_cf_VxLteMonitor_Up();


                        //TODO preambel/test body/postamble
                    //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_PO_user_home_deregistration ( v_ueA );
					f_mtc_userRadioEnabled ( v_ueA, false, true );
					// test body
					
					f_mtc_check_TP_GX_PCRF_CCA_02 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA – Event 3)
					
					//postamble
	    
	    
	                //unmap/disconnect component ports
	                //unmap/disconnect component ports
	                f_cf_user_down ( v_ueB );
	                //f_cf_user_down ( v_ueB );
	                f_cf_user_down ( v_ueA );
	                f_cf_user_down ( v_ueA );
	                f_cf_VxLteMonitor_Down();
	                f_cf_VxLteMonitor_Down();
	                f_cf_adapter_down ( );
	                f_cf_adapter_down ( );
@@ -81,25 +91,52 @@ module AtsImsIot_TD_DTC{
            testcase TC_VxLTE_INT_DTC_02 ( ) runs on ImsTestCoordinator system IotSystemInterface {
            testcase TC_VxLTE_INT_DTC_02 ( ) runs on ImsTestCoordinator system IotSystemInterface {
                
                
                var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
                var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
                var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
                //var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
                var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
                var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
                var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
                //var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
    
    
                f_setVxLteMonIterfacesAvailability();
                f_setVxLteMonIterfacesAvailability();
				//Check required monitor interfaces due to TD
				//Check required monitor interfaces due to TD
				if (f_checkVxLteRequiredMonitorInterface({/*TODO*/})){
				if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_GX_INTERFACENAME,PX_DIAMETER_RX_INTERFACENAME,PX_DIAMETER_CX_IH_INTERFACENAME,PX_DIAMETER_CX_SH_INTERFACENAME,PX_SIP_MW_PS_INTERFACENAME,PX_SIP_MW_IS_INTERFACENAME/*,PX_SIP_MW_SI_INTERFACENAME*/})){
	                f_cf_createVxLteMonitor();    
	                f_cf_createVxLteMonitor();    
	        
	        
	                // map/connect component ports
	                // map/connect component ports
	                f_cf_adapter_up ( );
	                f_cf_adapter_up ( );
	                f_cf_user_up ( v_ueA );
	                f_cf_user_up ( v_ueA );
	                f_cf_user_up ( v_ueB );
	                //f_cf_user_up ( v_ueB );
	                f_cf_VxLteMonitor_Up();
	                f_cf_VxLteMonitor_Up();


                        //TODO preambel/test body/postamble
					//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 );
					//postamble
					//f_PO_user_home_deregistration ( v_ueB );
					//f_PO_user_home_deregistration ( v_ueA );
					f_mtc_userRadioEnabled ( v_ueA, false, true );
					// test body
					// Check that user A can register to IMS A
					//f_mtc_userRegistration ( v_ueA, v_userInfoA ); // Send REGISTER request message
					//f_mtc_check_TP_EPC_6002_01 ( vc_vxlte_monitor_components.gmA, false ); // Check
					f_mtc_check_TP_GX_PCRF_CCA_02 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA – Event 3)
					f_mtc_check_TP_MW_PCSCF_REGISTER_09 (vc_vxlte_monitor_components.mwPS, false); //Check (REGISTER - event 5)
					//f_mtc_check_TP_RX_PCSCF_ASR_01  ( vc_vxlte_monitor_components.rx, false ); // Check (ASR - Event 4)
					f_mtc_check_TP_RX_PCRF_ASA_01 ( vc_vxlte_monitor_components.rx, false ); // Check (ASA – Event 13)
                    
					f_mtc_check_TP_MW_ICSCF_REGISTER_07 (vc_vxlte_monitor_components.mwIS, false); //Check (REGISTER - event 8)
					//f_mtc_check_TP_MW_SCSCF_REGISTER_07 (vc_vxlte_monitor_components.mwSI, false); //Check (REGISTER - event 8,11)
                    
					f_mtc_check_TP_CX_HSS_UAA_04 ( vc_vxlte_monitor_components.cxIH, false ); // Check (UAA - Event 7)
					f_mtc_check_TP_CX_HSS_SAA_02 ( vc_vxlte_monitor_components.cxSH, false ); // Check (SAA – Event 10,11)
                    
					f_mtc_check_TP_RX_PCRF_STA_02 ( vc_vxlte_monitor_components.rx, false ); // Check (STA – Event 14)
                   
					//f_mtc_userCheckRegistration ( v_ueA, f_getAnyValidUser ( PX_EUT_A ) ); 
					//f_mtc_check_TP_EPC_6003_01 ( v_ueA, c_vxlte_monitor_components.gmA, v_ueB, c_vxlte_monitor_components.gmB ); // Test sequence #4-5
    
					//postamble
	    
	    
	                //unmap/disconnect component ports
	                //unmap/disconnect component ports
	                f_cf_user_down ( v_ueB );
	                //f_cf_user_down ( v_ueB );
	                f_cf_user_down ( v_ueA );
	                f_cf_user_down ( v_ueA );
	                f_cf_VxLteMonitor_Down();
	                f_cf_VxLteMonitor_Down();
	                f_cf_adapter_down ( );
	                f_cf_adapter_down ( );
@@ -123,7 +160,7 @@ module AtsImsIot_TD_DTC{
    
    
                f_setVxLteMonIterfacesAvailability();
                f_setVxLteMonIterfacesAvailability();
				//Check required monitor interfaces due to TD
				//Check required monitor interfaces due to TD
				if (f_checkVxLteRequiredMonitorInterface({/*TODO*/})){
				if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_GX_INTERFACENAME,PX_DIAMETER_RX_INTERFACENAME,PX_DIAMETER_CX_IH_INTERFACENAME,PX_DIAMETER_CX_SH_INTERFACENAME,PX_SIP_MW_PS_INTERFACENAME,PX_SIP_MW_IS_INTERFACENAME/*,PX_SIP_MW_SI_INTERFACENAME*/})){
	                f_cf_createVxLteMonitor();    
	                f_cf_createVxLteMonitor();    
	        
	        
	                // map/connect component ports
	                // map/connect component ports
@@ -132,7 +169,36 @@ module AtsImsIot_TD_DTC{
	                f_cf_user_up ( v_ueB );
	                f_cf_user_up ( v_ueB );
	                f_cf_VxLteMonitor_Up();
	                f_cf_VxLteMonitor_Up();


                        //TODO preambel/test body/postamble
					//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 );
                    //TODO: user b enable and registration
                    //TODO: make call
					//f_PO_user_home_deregistration ( v_ueA );
					f_mtc_userRadioEnabled ( v_ueA, false, true );
					// test body
					f_mtc_check_TP_GX_PCRF_CCA_02 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA – Event 3)
                  
                  
					//f_mtc_check_TP_RX_PCSCF_ASR_01  ( vc_vxlte_monitor_components.rx, false ); // Check (ASR - Event 4)
					f_mtc_check_TP_RX_PCRF_ASA_01 ( vc_vxlte_monitor_components.rx, false ); // Check (ASA – Event 4,5)
					f_mtc_check_TP_RX_PCRF_STA_02 ( vc_vxlte_monitor_components.rx, false ); // Check (STA – Event 6,7)
					//TODO: TP for check BYE?
					f_mtc_check_TP_RX_PCRF_ASA_01 ( vc_vxlte_monitor_components.rx, false ); // Check (ASA – Event 11,12)
					f_mtc_check_TP_RX_PCRF_STA_02 ( vc_vxlte_monitor_components.rx, false ); // Check (STA – Event 13,14)
                  
					//f_mtc_check_TP_MW_PCSCF_REGISTER_11 (vc_vxlte_monitor_components.mwPS, false); //Check (REGISTER - event 8,9,15,22)
                    
					f_mtc_check_TP_MW_ICSCF_REGISTER_07 (vc_vxlte_monitor_components.mwIS, false); //Check (REGISTER - event 18)
					//f_mtc_check_TP_MW_SCSCF_REGISTER_07 (vc_vxlte_monitor_components.mwSI, false); //Check (REGISTER - event 18,21)
                    
					f_mtc_check_TP_CX_HSS_UAA_04 ( vc_vxlte_monitor_components.cxIH, false ); // Check (UAA - Event 16,17)
					f_mtc_check_TP_CX_HSS_SAA_02 ( vc_vxlte_monitor_components.cxSH, false ); // Check (SAA – Event 19,20)
                    
					//f_mtc_userCheckRegistration ( v_ueA, f_getAnyValidUser ( PX_EUT_A ) ); 
					//f_mtc_check_TP_EPC_6003_01 ( v_ueA, c_vxlte_monitor_components.gmA, v_ueB, c_vxlte_monitor_components.gmB ); // Test sequence #4-5
    
					//postamble
	    
	    
	                //unmap/disconnect component ports
	                //unmap/disconnect component ports
	                f_cf_user_down ( v_ueB );
	                f_cf_user_down ( v_ueB );
@@ -153,25 +219,35 @@ module AtsImsIot_TD_DTC{
            testcase TC_VxLTE_INT_DTC_04 ( ) runs on ImsTestCoordinator system IotSystemInterface {
            testcase TC_VxLTE_INT_DTC_04 ( ) runs on ImsTestCoordinator system IotSystemInterface {
                
                
                var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
                var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
                var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
                //var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
                var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
                var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
                var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
                //var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
    
    
                f_setVxLteMonIterfacesAvailability();
                f_setVxLteMonIterfacesAvailability();
				//Check required monitor interfaces due to TD
				//Check required monitor interfaces due to TD
				if (f_checkVxLteRequiredMonitorInterface({/*TODO*/})){
				if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_GX_INTERFACENAME,PX_DIAMETER_S6A_INTERFACENAME})){
	                f_cf_createVxLteMonitor();    
	                f_cf_createVxLteMonitor();    
	        
	        
	                // map/connect component ports
	                // map/connect component ports
	                f_cf_adapter_up ( );
	                f_cf_adapter_up ( );
	                f_cf_user_up ( v_ueA );
	                f_cf_user_up ( v_ueA );
	                f_cf_user_up ( v_ueB );
	                //f_cf_user_up ( v_ueB );
	                f_cf_VxLteMonitor_Up();
	                f_cf_VxLteMonitor_Up();


                        //TODO preambel/test body/postamble
					//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_PO_user_home_deregistration ( v_ueA );
					f_mtc_userRadioEnabled ( v_ueA, false, true );
					// test body
					f_mtc_check_TP_S6A_HSS_CLR_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (CLR – Event 1)
					f_mtc_check_TP_GX_PCRF_CCA_03 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA – Event 3,5)
                  	f_mtc_check_TP_S6A_MME_CLA_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (CLA – Event 6) 
                    
                    //postamble
	    
	    
	                //unmap/disconnect component ports
	                //unmap/disconnect component ports
	                f_cf_user_down ( v_ueB );
	                //f_cf_user_down ( v_ueB );
	                f_cf_user_down ( v_ueA );
	                f_cf_user_down ( v_ueA );
	                f_cf_VxLteMonitor_Down();
	                f_cf_VxLteMonitor_Down();
	                f_cf_adapter_down ( );
	                f_cf_adapter_down ( );
@@ -189,25 +265,34 @@ module AtsImsIot_TD_DTC{
            testcase TC_VxLTE_INT_DTC_05 ( ) runs on ImsTestCoordinator system IotSystemInterface {
            testcase TC_VxLTE_INT_DTC_05 ( ) runs on ImsTestCoordinator system IotSystemInterface {
                
                
                var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
                var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
                var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
                //var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
                var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
                var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
                var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
                //var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
    
    
                f_setVxLteMonIterfacesAvailability();
                f_setVxLteMonIterfacesAvailability();
				//Check required monitor interfaces due to TD
				//Check required monitor interfaces due to TD
				if (f_checkVxLteRequiredMonitorInterface({/*TODO*/})){
				if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_S6A_INTERFACENAME})){
	                f_cf_createVxLteMonitor();    
	                f_cf_createVxLteMonitor();    
	        
	        
	                // map/connect component ports
	                // map/connect component ports
	                f_cf_adapter_up ( );
	                f_cf_adapter_up ( );
	                f_cf_user_up ( v_ueA );
	                f_cf_user_up ( v_ueA );
	                f_cf_user_up ( v_ueB );
	                //f_cf_user_up ( v_ueB );
	                f_cf_VxLteMonitor_Up();
	                f_cf_VxLteMonitor_Up();


                        //TODO preambel/test body/postamble
					//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_PO_user_home_deregistration ( v_ueA );
					//f_mtc_userRadioEnabled ( v_ueA, false, true );
					// test body
					f_mtc_check_TP_S6A_MME_PUR_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (PUR – Event 1)
					f_mtc_check_TP_S6A_HSS_PUA_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (PUA – Event 2) 
                    
					//postamble
	    
	    
	                //unmap/disconnect component ports
	                //unmap/disconnect component ports
	                f_cf_user_down ( v_ueB );
	                //f_cf_user_down ( v_ueB );
	                f_cf_user_down ( v_ueA );
	                f_cf_user_down ( v_ueA );
	                f_cf_VxLteMonitor_Down();
	                f_cf_VxLteMonitor_Down();
	                f_cf_adapter_down ( );
	                f_cf_adapter_down ( );
@@ -229,25 +314,38 @@ module AtsImsIot_TD_DTC{
            testcase TC_VxLTE_RMI_DTC_01 ( ) runs on ImsTestCoordinator system IotSystemInterface {
            testcase TC_VxLTE_RMI_DTC_01 ( ) runs on ImsTestCoordinator system IotSystemInterface {
                
                
                var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
                var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
                var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
                //var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
                var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
                var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
                var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
                //var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
    
    
                f_setVxLteMonIterfacesAvailability();
                f_setVxLteMonIterfacesAvailability();
				//Check required monitor interfaces due to TD
				//Check required monitor interfaces due to TD
				if (f_checkVxLteRequiredMonitorInterface({/*TODO*/})){
				if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_S9_INTERFACENAME,PX_DIAMETER_GX_INTERFACENAME})){
	                f_cf_createVxLteMonitor();    
	                f_cf_createVxLteMonitor();    
	        
	        
	                // map/connect component ports
	                // map/connect component ports
	                f_cf_adapter_up ( );
	                f_cf_adapter_up ( );
	                f_cf_user_up ( v_ueA );
	                f_cf_user_up ( v_ueA );
	                f_cf_user_up ( v_ueB );
	                //f_cf_user_up ( v_ueB );
	                f_cf_VxLteMonitor_Up();
	                f_cf_VxLteMonitor_Up();


                        //TODO preambel/test body/postamble
					//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_PO_user_home_deregistration ( v_ueA );
					f_mtc_userRadioEnabled ( v_ueA, false, true );
					
					
	                //unmap/disconnet component ports
					// test body
	                f_cf_user_down ( v_ueB );
                    
					f_mtc_check_TP_GX_PGW_CCR_02  ( vc_vxlte_monitor_components.gx, false ); // Check (CCR – Event 1)
					f_mtc_check_TP_S9_PCRF_CCR_02 ( vc_vxlte_monitor_components.s9, false ); // Check (CCR – Event 2)
					f_mtc_check_TP_S9_PCRF_CCA_02 ( vc_vxlte_monitor_components.s9, false ); // Check (CCA – Event 3)
					f_mtc_check_TP_GX_PCRF_CCA_05 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA – Event 4)
					
					//postamble
	    
	                //unmap/disconnect component ports
	                //f_cf_user_down ( v_ueB );
	                f_cf_user_down ( v_ueA );
	                f_cf_user_down ( v_ueA );
	                f_cf_VxLteMonitor_Down();
	                f_cf_VxLteMonitor_Down();
	                f_cf_adapter_down ( );
	                f_cf_adapter_down ( );
@@ -265,9 +363,9 @@ module AtsImsIot_TD_DTC{
            testcase TC_VxLTE_RMI_DTC_02 ( ) runs on ImsTestCoordinator system IotSystemInterface {
            testcase TC_VxLTE_RMI_DTC_02 ( ) runs on ImsTestCoordinator system IotSystemInterface {
                
                
                var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
                var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
                var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
                //var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
                var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
                var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
                var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
                //var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
    
    
                f_setVxLteMonIterfacesAvailability();
                f_setVxLteMonIterfacesAvailability();
				//Check required monitor interfaces due to TD
				//Check required monitor interfaces due to TD
@@ -277,13 +375,41 @@ module AtsImsIot_TD_DTC{
	                // map/connect component ports
	                // map/connect component ports
	                f_cf_adapter_up ( );
	                f_cf_adapter_up ( );
	                f_cf_user_up ( v_ueA );
	                f_cf_user_up ( v_ueA );
	                f_cf_user_up ( v_ueB );
	                //f_cf_user_up ( v_ueB );
	                f_cf_VxLteMonitor_Up();
	                f_cf_VxLteMonitor_Up();


                        //TODO preambel/test body/postamble
					//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_PO_user_home_deregistration ( v_ueA );
					f_mtc_userRadioEnabled ( v_ueA, false, true );
                    
					// test body
                    
					f_mtc_check_TP_GX_PGW_CCR_02  ( vc_vxlte_monitor_components.gx, false ); // Check (CCR – Event 1)
					f_mtc_check_TP_S9_PCRF_CCR_02 ( vc_vxlte_monitor_components.s9, false ); // Check (CCR – Event 2)
					f_mtc_check_TP_S9_PCRF_CCA_02 ( vc_vxlte_monitor_components.s9, false ); // Check (CCA – Event 3)
					f_mtc_check_TP_GX_PCRF_CCA_05 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA – Event 4)
					
					f_mtc_check_TP_S9_PCRF_ASR_01  ( vc_vxlte_monitor_components.s9, false ); // Check (ASR - Event 6)
                    f_mtc_check_TP_RX_PCSCF_ASR_01  ( vc_vxlte_monitor_components.rx, false ); // Check (ASR - Event 7)
					
					//f_mtc_check_TP_MW_PCSCF_REGISTER_12 (vc_vxlte_monitor_components.mwPS, false); //Check (REGISTER - event 8)
					f_mtc_check_TP_IC_IBCF_REGISTER_05 (vc_vxlte_monitor_components.ic, false); //Check (REGISTER - event 9)
                    //f_mtc_check_TP_MW_SCSCF_REGISTER_12 (vc_vxlte_monitor_components.mwSI, false); //Check (REGISTER - event 10)
                    
                    f_mtc_check_TP_CX_HSS_UAA_04 ( vc_vxlte_monitor_components.cxIH, false ); // Check (UAA - Event 11,12)
                    f_mtc_check_TP_CX_HSS_SAA_02 ( vc_vxlte_monitor_components.cxSH, false ); // Check (SAA – Event 14,15)
                    	
					f_mtc_check_TP_S9_PCRF_ASA_01 ( vc_vxlte_monitor_components.s9, false ); // Check (ASA – Event 20,22)
					f_mtc_check_TP_S9_PCRF_STR_01 ( vc_vxlte_monitor_components.s9, false ); // Check (STA – Event 21,23)
					f_mtc_check_TP_S9_PCRF_STA_02 ( vc_vxlte_monitor_components.s9, false ); // Check (STA – Event 24,25)
   
                    
					//postamble
	    
	    
	                //unmap/disconnect component ports
	                //unmap/disconnect component ports
	                f_cf_user_down ( v_ueB );
	                //f_cf_user_down ( v_ueB );
	                f_cf_user_down ( v_ueA );
	                f_cf_user_down ( v_ueA );
	                f_cf_VxLteMonitor_Down();
	                f_cf_VxLteMonitor_Down();
	                f_cf_adapter_down ( );
	                f_cf_adapter_down ( );
@@ -316,7 +442,44 @@ module AtsImsIot_TD_DTC{
	                f_cf_user_up ( v_ueB );
	                f_cf_user_up ( v_ueB );
	                f_cf_VxLteMonitor_Up();
	                f_cf_VxLteMonitor_Up();


                        //TODO preambel/test body/postamble
					//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_PO_user_home_deregistration ( v_ueA );
					f_mtc_userRadioEnabled ( v_ueA, false, true );
                    
					// test body
                    
					f_mtc_check_TP_GX_PGW_CCR_02  ( vc_vxlte_monitor_components.gx, false ); // Check (CCR – Event 1)
					f_mtc_check_TP_S9_PCRF_CCR_02 ( vc_vxlte_monitor_components.s9, false ); // Check (CCR – Event 2)
					f_mtc_check_TP_S9_PCRF_CCA_02 ( vc_vxlte_monitor_components.s9, false ); // Check (CCA – Event 3)
					f_mtc_check_TP_GX_PCRF_CCA_05 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA – Event 4)
                    
					//f_mtc_check_TP_MW_PCSCF_BYE_07 (vc_vxlte_monitor_components.mwPS, false); //Check (REGISTER - event 8)
					f_mtc_check_TP_IC_IBCF_BYE_03 (vc_vxlte_monitor_components.ic, false); //Check (REGISTER - event 9)
                    
					f_mtc_check_TP_S9_PCRF_ASR_01  ( vc_vxlte_monitor_components.s9, false ); // Check (ASR - Event 6)
					f_mtc_check_TP_RX_PCSCF_ASR_01  ( vc_vxlte_monitor_components.rx, false ); // Check (ASR - Event 7)
					f_mtc_check_TP_S9_PCRF_ASA_01 ( vc_vxlte_monitor_components.s9, false ); // Check (ASA – Event 20,22)
					f_mtc_check_TP_S9_PCRF_STR_01 ( vc_vxlte_monitor_components.s9, false ); // Check (STA – Event 21,23)
					f_mtc_check_TP_S9_PCRF_STA_02 ( vc_vxlte_monitor_components.s9, false ); // Check (STA – Event 24,25)
					
					f_mtc_check_TP_S9_PCRF_ASR_01  ( vc_vxlte_monitor_components.s9, false ); // Check (ASR - Event 6)
					f_mtc_check_TP_RX_PCSCF_ASR_01  ( vc_vxlte_monitor_components.rx, false ); // Check (ASR - Event 7)
                    
					//f_mtc_check_TP_MW_PCSCF_REGISTER_13 (vc_vxlte_monitor_components.mwPS, false); //Check (REGISTER - event 8)
					f_mtc_check_TP_IC_IBCF_REGISTER_05 (vc_vxlte_monitor_components.ic, false); //Check (REGISTER - event 9)
					//f_mtc_check_TP_MW_SCSCF_REGISTER_12 (vc_vxlte_monitor_components.mwSI, false); //Check (REGISTER - event 10)
                    
					f_mtc_check_TP_CX_HSS_UAA_04 ( vc_vxlte_monitor_components.cxIH, false ); // Check (UAA - Event 11,12)
					f_mtc_check_TP_CX_HSS_SAA_02 ( vc_vxlte_monitor_components.cxSH, false ); // Check (SAA – Event 14,15)
                        
					f_mtc_check_TP_S9_PCRF_ASA_01 ( vc_vxlte_monitor_components.s9, false ); // Check (ASA – Event 20,22)
					f_mtc_check_TP_S9_PCRF_STR_01 ( vc_vxlte_monitor_components.s9, false ); // Check (STA – Event 21,23)
					f_mtc_check_TP_S9_PCRF_STA_02 ( vc_vxlte_monitor_components.s9, false ); // Check (STA – Event 24,25)
   
                    
					//postamble
	    
	    
	                //unmap/disconnect component ports
	                //unmap/disconnect component ports
	                f_cf_user_down ( v_ueB );
	                f_cf_user_down ( v_ueB );
@@ -352,7 +515,23 @@ module AtsImsIot_TD_DTC{
	                f_cf_user_up ( v_ueB );
	                f_cf_user_up ( v_ueB );
	                f_cf_VxLteMonitor_Up();
	                f_cf_VxLteMonitor_Up();


                        //TODO preambel/test body/postamble
					//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_PO_user_home_deregistration ( v_ueA );
					f_mtc_userRadioEnabled ( v_ueA, false, true );
                    
					// test body
					f_mtc_check_TP_S6A_HSS_CLR_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (CCA – Event 4)
                   
					f_mtc_check_TP_GX_PGW_CCR_02  ( vc_vxlte_monitor_components.gx, false ); // Check (CCR – Event 1)
					f_mtc_check_TP_S9_PCRF_CCR_02 ( vc_vxlte_monitor_components.s9, false ); // Check (CCR – Event 2)
					f_mtc_check_TP_S9_PCRF_CCA_02 ( vc_vxlte_monitor_components.s9, false ); // Check (CCA – Event 3)
					f_mtc_check_TP_GX_PCRF_CCA_05 ( vc_vxlte_monitor_components.gx, false ); // Check (CCA – Event 4)
					
					f_mtc_check_TP_S6A_MME_CLA_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (CCA – Event 4)
                    
					//postamble
	    
	    
	                //unmap/disconnect component ports
	                //unmap/disconnect component ports
	                f_cf_user_down ( v_ueB );
	                f_cf_user_down ( v_ueB );
@@ -373,25 +552,34 @@ module AtsImsIot_TD_DTC{
            testcase TC_VxLTE_RMI_DTC_05 ( ) runs on ImsTestCoordinator system IotSystemInterface {
            testcase TC_VxLTE_RMI_DTC_05 ( ) runs on ImsTestCoordinator system IotSystemInterface {
                
                
				var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
				var IotEquipmentUser v_ueA    := f_cf_create_IotEquipmentUser ( c_userUE_A );
                var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
				//var IotEquipmentUser v_ueB    := f_cf_create_IotEquipmentUser ( c_userUE_B );
				var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
				var ImsUserInfo v_userInfoA    := f_getImUser ( PX_EUT_A );
                var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
				//var ImsUserInfo v_userInfoB    := f_getImUser ( PX_EUT_B ); 
    
    
				f_setVxLteMonIterfacesAvailability();
				f_setVxLteMonIterfacesAvailability();
				//Check required monitor interfaces due to TD
				//Check required monitor interfaces due to TD
				if (f_checkVxLteRequiredMonitorInterface({/*TODO*/})){
				if (f_checkVxLteRequiredMonitorInterface({PX_DIAMETER_S6A_INTERFACENAME})){
					f_cf_createVxLteMonitor();    
					f_cf_createVxLteMonitor();    
            
            
					// map/connect component ports
					// map/connect component ports
					f_cf_adapter_up ( );
					f_cf_adapter_up ( );
					f_cf_user_up ( v_ueA );
					f_cf_user_up ( v_ueA );
	                f_cf_user_up ( v_ueB );
					//f_cf_user_up ( v_ueB );
					f_cf_VxLteMonitor_Up();
					f_cf_VxLteMonitor_Up();


                        //TODO preambel/test body/postamble
					//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_PO_user_home_deregistration ( v_ueA );
					//f_mtc_userRadioEnabled ( v_ueA, false, true );
					// test body
					f_mtc_check_TP_S6A_MME_PUR_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (PUR – Event 1)
					f_mtc_check_TP_S6A_HSS_PUA_01 ( vc_vxlte_monitor_components.s6a, false ); // Check (PUA – Event 2) 
                    
					//postamble
        
        
					//unmap/disconnect component ports
					//unmap/disconnect component ports
	                f_cf_user_down ( v_ueB );
					//f_cf_user_down ( v_ueB );
					f_cf_user_down ( v_ueA );
					f_cf_user_down ( v_ueA );
					f_cf_VxLteMonitor_Down();
					f_cf_VxLteMonitor_Down();
					f_cf_adapter_down ( );
					f_cf_adapter_down ( );