AtsSccas_Testcases_TS124292.ttcn 8.98 KB
Newer Older
/*
 *    @author     TTF T016
 *    @version    $Id$
 *    @desc       This module provides the Test Cases for SCCAS ETSI TS 124 292 v1.6.0.
 */

module AtsSccas_Testcases_TS124292
{
    //LibCommon
    import from LibCommon_Sync all ;
    import from LibCommon_VerdictControl all;
    //LibSip
    import from LibSip_Interface all;
    import from LibSip_SIPTypesAndValues all;
    //LibIms
    import from LibIms_SIPTypesAndValues all;
    import from LibIms_Interface all;
    //AtsSccas
    import from AtsSccas_TestConfiguration all;
    import from AtsSccas_TestSystem all;
    import from AtsSccas_TCFunctions_TS124292 all;
    import from AtsSccas_PICS all;

    group isc_registration {
        
        /*
         * @desc Verify that the MSC successfully register to the IM CN Subsystem
         * @param p_cSeq_s Transaction Id
         */
        testcase TC_ISC_SCCAS_MSC_REG_01(inout CSeq p_cSeq_s) runs on ServerSyncComp system TestAdapter {
            // Local variables
            var ImsComponent v_imsComponent_ueims;
            
            // Test control
Bostjan Pintar's avatar
Bostjan Pintar committed
            if (not PICS_MSC_IUT) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_IUT' shall be set to true for executing the TC. ***"); 
                stop;
            }

            // Test component configuration
            f_cf_1IscUp(v_imsComponent_ueims);

            // Start
            f_IncCSeq(p_cSeq_s); v_imsComponent_ueims.start(f_TC_ISC_SCCAS_MSC_REG_01(p_cSeq_s));

            // Synchronize both PTCs on 3 sychronization points
            f_serverSync1Client({c_prDone, c_tbDone, c_poDone});

            f_cf_1IscDown(v_imsComponent_ueims);

        } // End of TC_ISC_SCCAS_MSC_REG_01
        
        /*
         * @desc Verify that the MSC successfully register to the IM CN Subsystem
         * @param p_cSeq_s Transaction Id
         */
        testcase TC_ISC_SCCAS_MSC_REG_02(inout CSeq p_cSeq_s) runs on ServerSyncComp system TestAdapter {
            // Local variables
            var ImsComponent v_imsComponent_ueims;
            
            // Test control
Bostjan Pintar's avatar
Bostjan Pintar committed
            if (not PICS_MSC_IUT) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_IUT' shall be set to true for executing the TC. ***"); 
                stop;
            }

            // Test component configuration
            f_cf_1IscUp(v_imsComponent_ueims);

            // Start
            f_IncCSeq(p_cSeq_s); v_imsComponent_ueims.start(f_TC_ISC_SCCAS_MSC_REG_02(p_cSeq_s));

            // Synchronize both PTCs on 3 sychronization points
            f_serverSync1Client({c_prDone, c_tbDone, c_poDone});

            f_cf_1IscDown(v_imsComponent_ueims);

        } // End of TC_ISC_SCCAS_MSC_REG_02
        
     } // End of isc_registration

    group isc_subscribe {
        
        /*
         * @desc Verify that the MSC successfully subscribe to the IM CN Subsystem
         * @param p_cSeq_s Transaction Id
         */
        testcase TC_ISC_SCCAS_MSC_SUB_01(inout CSeq p_cSeq_s) runs on ServerSyncComp system TestAdapter {
            // Local variables
            var ImsComponent v_imsComponent_ueims;
            
            // Test control
Bostjan Pintar's avatar
Bostjan Pintar committed
            if (not PICS_MSC_IUT) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_IUT' shall be set to true for executing the TC. ***"); 
                stop;
            }

            // Test component configuration
            f_cf_1IscUp(v_imsComponent_ueims);

            // Start
            f_IncCSeq(p_cSeq_s); v_imsComponent_ueims.start(f_TC_ISC_SCCAS_MSC_SUB_01(p_cSeq_s));

            // Synchronize both PTCs on 3 sychronization points
            f_serverSync1Client({c_prDone, c_tbDone, c_poDone});

            f_cf_1IscDown(v_imsComponent_ueims);

        } // End of TC_ISC_SCCAS_MSC_SUB_01
        
        /*
         * @desc Verify that the MSC receive NOTIFY on successfully subscription to the IM CN Subsystem
         * @param p_cSeq_s Transaction Id
         */
        testcase TC_ISC_SCCAS_MSC_SUB_02(inout CSeq p_cSeq_s) runs on ServerSyncComp system TestAdapter {
            // Local variables
            var ImsComponent v_imsComponent_ueims;
            
            // Test control
Bostjan Pintar's avatar
Bostjan Pintar committed
            if (not PICS_MSC_IUT) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_IUT' shall be set to true for executing the TC. ***"); 
                stop;
            }

            // Test component configuration
            f_cf_1IscUp(v_imsComponent_ueims);

            // Start
            f_IncCSeq(p_cSeq_s); v_imsComponent_ueims.start(f_TC_ISC_SCCAS_MSC_SUB_02(p_cSeq_s));

            // Synchronize both PTCs on 3 sychronization points
            f_serverSync1Client({c_prDone, c_tbDone, c_poDone});

            f_cf_1IscDown(v_imsComponent_ueims);

        } // End of TC_ISC_SCCAS_MSC_SUB_02
        
    } // End of group isc_subscribe
    
    group isc_reregistration {
        
        /*
         * @desc Verify that the MSC successfully re-register to the IM CN Subsystem
         * @param p_cSeq_s Transaction Id
         */
        testcase TC_ISC_SCCAS_MSC_REREG_01(inout CSeq p_cSeq_s) runs on ServerSyncComp system TestAdapter {
            // Local variables
            var ImsComponent v_imsComponent_ueims;
            
            // Test control
Bostjan Pintar's avatar
Bostjan Pintar committed
            if (not PICS_MSC_IUT) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_IUT' shall be set to true for executing the TC. ***"); 
                stop;
            }

            // Test component configuration
            f_cf_1IscUp(v_imsComponent_ueims);

            // Start
            f_IncCSeq(p_cSeq_s); v_imsComponent_ueims.start(f_TC_ISC_SCCAS_MSC_REREG_01(p_cSeq_s));

            // Synchronize both PTCs on 3 sychronization points
            f_serverSync1Client({c_prDone, c_tbDone, c_poDone});

            f_cf_1IscDown(v_imsComponent_ueims);

        } // End of TC_ISC_SCCAS_MSC_REREG_01
        
        /*
         * @desc Verify that the MSC successfully register to the IM CN Subsystem
         * @param p_cSeq_s Transaction Id
         */
        testcase TC_ISC_SCCAS_MSC_REREG_02(inout CSeq p_cSeq_s) runs on ServerSyncComp system TestAdapter {
            // Local variables
            var ImsComponent v_imsComponent_ueims;
            
            // Test control
Bostjan Pintar's avatar
Bostjan Pintar committed
            if (not PICS_MSC_IUT) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_IUT' shall be set to true for executing the TC. ***"); 
                stop;
            }

            // Test component configuration
            f_cf_1IscUp(v_imsComponent_ueims);

            // Start
            f_IncCSeq(p_cSeq_s); v_imsComponent_ueims.start(f_TC_ISC_SCCAS_MSC_REREG_02(p_cSeq_s));

            // Synchronize both PTCs on 3 sychronization points
            f_serverSync1Client({c_prDone, c_tbDone, c_poDone});

            f_cf_1IscDown(v_imsComponent_ueims);

        } // End of TC_ISC_SCCAS_MSC_REREG_02
        
    } // End of group isc_reregistration
    
    group call_origination {
        
        /*
         * @desc Verify that the MSC successfully sends INVITE to the IM CN Subsystem
         * @param p_cSeq_s Transaction Id
         */
        testcase TC_ISC_SCCAS_MSC_CALL_ORG_01(inout CSeq p_cSeq_s) runs on ServerSyncComp system TestAdapter {
            // Local variables
            var ImsComponent v_imsComponent_ueims;
            
            // Test control
Bostjan Pintar's avatar
Bostjan Pintar committed
            if (not PICS_MSC_IUT) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_IUT' shall be set to true for executing the TC. ***"); 
                stop;
            }

            // Test component configuration
            f_cf_1IscUp(v_imsComponent_ueims);

            // Start
            f_IncCSeq(p_cSeq_s); v_imsComponent_ueims.start(f_TC_ISC_SCCAS_MSC_CALL_ORG_01(p_cSeq_s));

            // Synchronize both PTCs on 3 sychronization points
            f_serverSync1Client({c_prDone, c_tbDone, c_poDone});

            f_cf_1IscDown(v_imsComponent_ueims);

        } // End of TC_ISC_SCCAS_MSC_CALL_ORG_01
        
        /*
         * @desc Verify that the MSC successfully sends INVITE to the IM CN Subsystem
         * @param p_cSeq_s Transaction Id
         */
        testcase TC_ISC_SCCAS_MSC_CALL_ORG_02(inout CSeq p_cSeq_s) runs on ServerSyncComp system TestAdapter {
            // Local variables
            var ImsComponent v_imsComponent_ueims;
            
            // Test control
Bostjan Pintar's avatar
Bostjan Pintar committed
            if (not PICS_MSC_IUT) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_IUT' shall be set to true for executing the TC. ***"); 
                stop;
            }

            // Test component configuration
            f_cf_1IscUp(v_imsComponent_ueims);

            // Start
            f_IncCSeq(p_cSeq_s); v_imsComponent_ueims.start(f_TC_ISC_SCCAS_MSC_CALL_ORG_02(p_cSeq_s));

            // Synchronize both PTCs on 3 sychronization points
            f_serverSync1Client({c_prDone, c_tbDone, c_poDone});

            f_cf_1IscDown(v_imsComponent_ueims);

        } // End of TC_ISC_SCCAS_MSC_CALL_ORG_02
        
    } // End of group call_origination
    
} // End of module AtsSccas_Testcases_TS124292