Commit 2ba45bfb authored by YannGarcia's avatar YannGarcia
Browse files

Add testcase templates for the MSC modules

parent 656dbf3a
Loading
Loading
Loading
Loading
+210 −6
Original line number Diff line number Diff line
@@ -34,25 +34,229 @@ module AtsSccas_TCFunctions_TS124292 {
         *  @param    p_cSeq_s
         */
        function f_TC_ISC_SCCAS_MSC_REG_01(in CSeq p_cSeq_s) runs on ImsComponent {

            // Local variables
            var template REGISTER_Request v_register;

            v_register := valueof(m_REGISTER_Request_Base(vc_requestUri,
            // Preambule
            v_register := valueof(
                                  m_REGISTER_Request_Base(
                                                          vc_requestUri,
                                                          vc_callId, p_cSeq_s, vc_from, vc_to, vc_via_REG, vc_contact,
            vc_authorization));
            
                                                          vc_authorization
                                  ));
            f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync

            // Registration

            f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync

            // deregistration
            // Deregistration
            
            f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

        } // End of function f_TC_ISC_SCCAS_RSC_REG_01
        
        /*
         *  @desc     This is the test case function for TC_ISC_SCCAS_MSC_REG_02
         *  @param    p_cSeq_s
         */
        function f_TC_ISC_SCCAS_MSC_REG_02(in CSeq p_cSeq_s) runs on ImsComponent {
            // Local variables
            var template REGISTER_Request v_register;

            // Preambule
            v_register := valueof(
                                  m_REGISTER_Request_Base(
                                                          vc_requestUri,
                                                          vc_callId, p_cSeq_s, vc_from, vc_to, vc_via_REG, vc_contact,
                                                          vc_authorization
                                  ));
            f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync

            // Registration

            f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync

            // Deregistration
            
            f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

        } // End of function f_TC_ISC_SCCAS_RSC_REG_02
        
     } // End of group isc_registration
     
    group isc_subscribe {

        /*
         *  @desc     This is the test case function for TC_ISC_SCCAS_MSC_SUB_01
         *  @param    p_cSeq_s
         */
        function f_TC_ISC_SCCAS_MSC_SUB_01(in CSeq p_cSeq_s) runs on ImsComponent {
            // Local variables
            var template REGISTER_Request v_register;

            // Preambule
            v_register := valueof(
                                  m_REGISTER_Request_Base(
                                                          vc_requestUri,
                                                          vc_callId, p_cSeq_s, vc_from, vc_to, vc_via_REG, vc_contact,
                                                          vc_authorization
                                  ));
            f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync

            // Registration

            f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync

            // Deregistration
            
            f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

        } // End of function f_TC_ISC_SCCAS_RSC_SUB_01
        
        /*
         *  @desc     This is the test case function for TC_ISC_SCCAS_MSC_SUB_02
         *  @param    p_cSeq_s
         */
        function f_TC_ISC_SCCAS_MSC_SUB_02(in CSeq p_cSeq_s) runs on ImsComponent {
            // Local variables
            var template REGISTER_Request v_register;

            // Preambule
            v_register := valueof(
                                  m_REGISTER_Request_Base(
                                                          vc_requestUri,
                                                          vc_callId, p_cSeq_s, vc_from, vc_to, vc_via_REG, vc_contact,
                                                          vc_authorization
                                  ));
            f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync

            // Registration

            f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync

            // Deregistration
            
            f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

        } // End of function f_TC_ISC_SCCAS_RSC_SUB_02
        
    } // End of isc_subscribe
    
    group isc_reregistration {

        /*
         *  @desc     This is the test case function for TC_ISC_SCCAS_MSC_REREG_01
         *  @param    p_cSeq_s
         */
        function f_TC_ISC_SCCAS_MSC_REREG_01(in CSeq p_cSeq_s) runs on ImsComponent {
            // Local variables
            var template REGISTER_Request v_register;

            // Preambule
            v_register := valueof(
                                  m_REGISTER_Request_Base(
                                                          vc_requestUri,
                                                          vc_callId, p_cSeq_s, vc_from, vc_to, vc_via_REG, vc_contact,
                                                          vc_authorization
                                  ));
            f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync

            // Registration

            f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync

            // Deregistration
            
            f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

        } // End of function f_TC_ISC_SCCAS_RSC_REREG_01
        
        /*
         *  @desc     This is the test case function for TC_ISC_SCCAS_MSC_REREG_02
         *  @param    p_cSeq_s
         */
        function f_TC_ISC_SCCAS_MSC_REREG_02(in CSeq p_cSeq_s) runs on ImsComponent {
            // Local variables
            var template REGISTER_Request v_register;

            // Preambule
            v_register := valueof(
                                  m_REGISTER_Request_Base(
                                                          vc_requestUri,
                                                          vc_callId, p_cSeq_s, vc_from, vc_to, vc_via_REG, vc_contact,
                                                          vc_authorization
                                  ));
            f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync

            // Registration

            f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync

            // Deregistration
            
            f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

        } // End of function f_TC_ISC_SCCAS_RSC_REREG_02
        
    } // End of isc_reregistration
    
    group call_origination {

        /*
         *  @desc     This is the test case function for TC_ISC_SCCAS_MSC_CALL_ORG_01
         *  @param    p_cSeq_s
         */
        function f_TC_ISC_SCCAS_MSC_CALL_ORG_01(in CSeq p_cSeq_s) runs on ImsComponent {
            // Local variables
            var template REGISTER_Request v_register;

            // Preambule
            v_register := valueof(
                                  m_REGISTER_Request_Base(
                                                          vc_requestUri,
                                                          vc_callId, p_cSeq_s, vc_from, vc_to, vc_via_REG, vc_contact,
                                                          vc_authorization
                                  ));
            f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync

            // Registration

            f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync

            // Deregistration
            
            f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

        } // End of function f_TC_ISC_SCCAS_RSC_CALL_ORG_01
        
        /*
         *  @desc     This is the test case function for TC_ISC_SCCAS_MSC_CALL_ORG_02
         *  @param    p_cSeq_s
         */
        function f_TC_ISC_SCCAS_MSC_CALL_ORG_02(in CSeq p_cSeq_s) runs on ImsComponent {
            // Local variables
            var template REGISTER_Request v_register;

            // Preambule
            v_register := valueof(
                                  m_REGISTER_Request_Base(
                                                          vc_requestUri,
                                                          vc_callId, p_cSeq_s, vc_from, vc_to, vc_via_REG, vc_contact,
                                                          vc_authorization
                                  ));
            f_selfOrClientSyncAndVerdict(c_prDone, f_getVerdict()); // sync

            // Registration

            f_selfOrClientSyncAndVerdict(c_tbDone, f_getVerdict()); // sync

            // Deregistration
            
            f_selfOrClientSyncAndVerdict(c_poDone, f_getVerdict()); // sync

        } // End of function f_TC_ISC_SCCAS_RSC_CALL_ORG_02
        
    } // End of call_origination
    
} // End of module AtsSccas_TCFunctions_TS124292
 No newline at end of file
+214 −5
Original line number Diff line number Diff line
@@ -18,7 +18,7 @@ module AtsSccas_Testcases_TS124292
    //AtsIms
    import from AtsSccas_TestConfiguration all;
    import from AtsSccas_TestSystem all;
    import from AtsSccas_TCFunctions all;
    import from AtsSccas_TCFunctions_TS124292 all;
    import from AtsSccas_PICS all;

    group isc_registration {
@@ -28,20 +28,229 @@ module AtsSccas_Testcases_TS124292
         * @param p_cSeq_s Transaction Id
         */
        testcase TC_ISC_SCCAS_MSC_REG_01(inout CSeq p_cSeq_s) runs on ServerSyncComp system TestAdapter {
            //Variables
            // Local variables
            var ImsComponent v_imsComponent_ueims;
            
            // Test control
            if (not PICS_MSC_GM) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_GM' 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
            // 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
            if (not PICS_MSC_GM) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_GM' 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
            if (not PICS_MSC_GM) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_GM' 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
            if (not PICS_MSC_GM) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_GM' 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
            if (not PICS_MSC_GM) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_GM' 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
            if (not PICS_MSC_GM) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_GM' 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
            if (not PICS_MSC_GM) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_GM' 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
            if (not PICS_MSC_GM) {
                log("*** " & __SCOPE__ & ": ERROR: 'PICS_MSC_GM' 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