Commit 7f4e359a authored by Yann Garcia's avatar Yann Garcia
Browse files

Merge branch 'TTF0002' of https://forge.etsi.org/gitlab/ITS/ITS into TTF0002

parents a5225a0d 0a7b989f
Loading
Loading
Loading
Loading
+334 −46
Original line number Diff line number Diff line
@@ -251,17 +251,10 @@ module ItsIvim_TpFunctions {
                                mw_itsPduHeader,
                                mw_ivimStructure(
                                    ?,
                                    {permutation(mw_iviContainer_geographicLocationContainer(
                                    {mw_iviContainer_geographicLocationContainer( //awaiting only one geographical location due to TP
                                        mw_geographicLocationContainer(
                                            ?,
                                            {mw_glcPart(PX_ZONEID_1)}
                                        )
                                    ),
                                    mw_iviContainer_geographicLocationContainer(
                                        mw_geographicLocationContainer(
                                            ?,
                                            {mw_glcPart(PX_ZONEID_2)}
                                        )
                                            {mw_glcPart(-)}
                                        )
                                    )}
                                )
@@ -320,7 +313,7 @@ module ItsIvim_TpFunctions {
                                    {mw_iviContainer_geographicLocationContainer(
                                        mw_geographicLocationContainer(
                                            ?,
                                            {mw_glcPart(PX_ZONEID_1,PX_LANE,-,-,?)} //zone Id., LaneNumber and zone should be present
                                            {mw_glcPart(PX_ZONEID_1,-,-,-,?)} //zone Id. and zone should be present
                                        )
                                    )}
                                )
@@ -1622,12 +1615,18 @@ module ItsIvim_TpFunctions {
            
            function f_IS_IVI_GEN_GENAPP_BV_05() runs on ItsIvim {
                
                log("Removed from TP document. Maybe renumbering required");
                
            } // End of function f_IS_IVI_GEN_GENAPP_BV_05
            
            function f_IS_IVI_GEN_GENAPP_BV_06() runs on ItsIvim {
                
                // Local variables
                var IviIdentificationNumber v_iviIdentificationNumber;
                
                // Test control
                if (not (PICS_IVIM_GENERATION)) {
                    log("*** " & testcasename() & ": PICS_IVIM_GENERATION required for executing the TC ***");
                if (not (PICS_IVIM_GENERATION and PICS_IVIM_HAS_GENERAL_CONTAINER and PICS_IVIM_HAS_LAYOUT_CONTAINER)) {
                    log("*** " & testcasename() & ": PICS_IVIM_GENERATION AND PICS_IVIM_HAS_GENERAL_CONTAINER AND PICS_IVIM_HAS_LAYOUT_CONTAINER required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
@@ -1642,7 +1641,7 @@ module ItsIvim_TpFunctions {
                f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
                
                // Test Body
                v_iviIdentificationNumber := f_utTriggerEvent(valueof(m_utTriggerEvent(omit,-,-,{PX_ZONEID_1},-)));//TODO check how to trigger GiC General Application Containers
                v_iviIdentificationNumber := f_utTriggerEvent(valueof(m_utTriggerEvent(omit,-,-,-,-,-,-,-,-,-,PX_LAYOUTID)));
                
                tc_ac.start;
                alt {
@@ -1654,15 +1653,70 @@ module ItsIvim_TpFunctions {
                                    ?,
                                    {mw_iviContainer_generalIviContainer(
                                        {
                                          mw_gicPart_basic(
                                              -,
                                              {
                                                mw_rSCode_iso14823
                                          mw_gicPart_layoutId
                                        }
                                        )
                                    }
                                )
                    ))) { 
                        tc_ac.stop;
                        log("*** " & testcasename() & ": PASS: Expected IVIM received ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_success);  
                    }
                    [] tc_ac.timeout {
                        log("*** " & testcasename() & ": INCONC: IVIM not received ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
                    }
                }
                
                // Postamble
                f_poCancelEvent(e_iut, v_iviIdentificationNumber);
                f_cfDown();
                
            } // End of function f_IS_IVI_GEN_GENAPP_BV_06
        
        } // End of group iviGeneralApplicationContainer
        
        group iviRoadConfigurationContainer{
            
            function f_IS_IVI_GEN_RCC_BV_01() runs on ItsIvim {
                
                // Local variables
                var IviIdentificationNumber v_iviIdentificationNumber;
                
                // Test control
                if (not (PICS_IVIM_GENERATION and PICS_IVIM_HAS_ROAD_CFG_CONTAINER)) {
                    log("*** " & testcasename() & ": PICS_IVIM_GENERATION AND PICS_IVIM_HAS_ROAD_CFG_CONTAINER required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
                
                // Test component configuration
                f_cfUp();
                
                // Test adapter configuration
                
                // Preamble
                f_prInitialState();
                f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
                
                // Test Body
                v_iviIdentificationNumber := f_utTriggerEvent(valueof(m_utTriggerEvent(omit,-,-,{PX_ZONEID_1},-)));//Check if trigger should be different for RCC

                tc_ac.start;
                alt {
                    [] ivimPort.receive(
                        mw_ivimInd(
                            mw_anyIvimPdu(
                                mw_itsPduHeader,
                                mw_ivimStructure(
                                    ?,
                                    {mw_iviContainer_geographicLocationContainer(
                                        mw_geographicLocationContainer(
                                            ?,
                                            {mw_glcPart(PX_ZONEID_1)}
                                        )
                                    )}
                                )
                    ))) { 
                        tc_ac.stop;
@@ -1679,16 +1733,16 @@ module ItsIvim_TpFunctions {
                f_poCancelEvent(e_iut, v_iviIdentificationNumber);
                f_cfDown();
                
            } // End of function f_IS_IVI_GEN_GENAPP_BV_05
            } // End of function f_IS_IVI_GEN_RCC_BV_01
            
            function f_IS_IVI_GEN_GENAPP_BV_06() runs on ItsIvim {
            function f_IS_IVI_GEN_RCC_BV_02() runs on ItsIvim {
                
                // Local variables
                var IviIdentificationNumber v_iviIdentificationNumber;
                
                // Test control
                if (not (PICS_IVIM_GENERATION and PICS_IVIM_HAS_GENERAL_CONTAINER and PICS_IVIM_HAS_LAYOUT_CONTAINER)) {
                    log("*** " & testcasename() & ": PICS_IVIM_GENERATION AND PICS_IVIM_HAS_GENERAL_CONTAINER AND PICS_IVIM_HAS_LAYOUT_CONTAINER required for executing the TC ***");
                if (not (PICS_IVIM_GENERATION and PICS_IVIM_HAS_ROAD_CFG_CONTAINER)) {
                    log("*** " & testcasename() & ": PICS_IVIM_GENERATION AND PICS_IVIM_HAS_ROAD_CFG_CONTAINER required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
@@ -1703,7 +1757,7 @@ module ItsIvim_TpFunctions {
                f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
                
                // Test Body
                v_iviIdentificationNumber := f_utTriggerEvent(valueof(m_utTriggerEvent(omit,-,-,-,-,-,-,-,-,-,PX_LAYOUTID)));
                v_iviIdentificationNumber := f_utTriggerEvent(valueof(m_utTriggerEvent(omit,-,-,{PX_ZONEID_1},-)));//Check if trigger should be different for RCC

                tc_ac.start;
                alt {
@@ -1713,10 +1767,14 @@ module ItsIvim_TpFunctions {
                                mw_itsPduHeader,
                                mw_ivimStructure(
                                    ?,
                                    {mw_iviContainer_generalIviContainer(
                                        {
                                          mw_gicPart_layoutId
                                        }
                                    {mw_iviContainer_geographicLocationContainer(
                                        mw_geographicLocationContainer(
                                            ?,
                                            {mw_glcPart(PX_ZONEID_1)}
                                        )
                                    ),
                                    mw_iviContainer_roadConfigurationContainer(
                                        {mw_rccPart(-,-,-)}
                                    )
                                    }
                                )
@@ -1735,27 +1793,63 @@ module ItsIvim_TpFunctions {
                f_poCancelEvent(e_iut, v_iviIdentificationNumber);
                f_cfDown();
                
            } // End of function f_IS_IVI_GEN_GENAPP_BV_06
            } // End of function f_IS_IVI_GEN_RCC_BV_02
            
        } // End of group iviGeneralApplicationContainer
            function f_IS_IVI_GEN_RCC_BV_03() runs on ItsIvim {
                
        group iviRoadConfigurationContainer{
                // Local variables
                var IviIdentificationNumber v_iviIdentificationNumber;
                
            function f_IS_IVI_GEN_RCC_BV_01() runs on ItsIvim {
                // Test control
                if (not (PICS_IVIM_GENERATION and PICS_IVIM_HAS_ROAD_CFG_CONTAINER)) {
                    log("*** " & testcasename() & ": PICS_IVIM_GENERATION AND PICS_IVIM_HAS_ROAD_CFG_CONTAINER required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
                
                // TODO
                // Test component configuration
                f_cfUp();
                
            } // End of function f_IS_IVI_GEN_RCC_BV_01
                // Preamble
                f_prInitialState();
                
            function f_IS_IVI_GEN_RCC_BV_02() runs on ItsIvim {
                action("IUT should send or receive MAPEM first.");
                
                // TODO
                f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
                
            } // End of function f_IS_IVI_GEN_RCC_BV_02
                // Test Body
                v_iviIdentificationNumber := f_utTriggerEvent(valueof(m_utTriggerEvent(omit,-,-,{PX_ZONEID_1},-)));//Check if trigger should be different for RCC

            function f_IS_IVI_GEN_RCC_BV_03() runs on ItsIvim {
                tc_ac.start;
                alt {
                    [] ivimPort.receive(
                        mw_ivimInd(
                            mw_anyIvimPdu(
                                mw_itsPduHeader,
                                mw_ivimStructure(
                                    ?,
                                    {mw_iviContainer_roadConfigurationContainer(
                                        {mw_rccPart(-,
                                                    -,
                                                    {mw_laneInformation}
                                        )}
                                    )
                                    }
                                )
                    ))) { 
                        tc_ac.stop;
                        log("*** " & testcasename() & ": PASS: Expected IVIM received ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_success);  
                    }
                    [] tc_ac.timeout {
                        log("*** " & testcasename() & ": INCONC: IVIM not received ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
                    }
                }
                
                // TODO
                // Postamble
                f_poCancelEvent(e_iut, v_iviIdentificationNumber);
                f_cfDown();
                
            } // End of function f_IS_IVI_GEN_RCC_BV_03
        
@@ -1765,25 +1859,219 @@ module ItsIvim_TpFunctions {
            
            function f_IS_IVI_GEN_TEXT_BV_01() runs on ItsIvim {
                
                // TODO
                // Local variables
                var IviIdentificationNumber v_iviIdentificationNumber;
                
                // Test control
                if (not (PICS_IVIM_GENERATION and PICS_IVIM_HAS_TEXT_CONTAINER)) {
                    log("*** " & testcasename() & ": PICS_IVIM_GENERATION AND PICS_IVIM_HAS_TEXT_CONTAINER required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
                
                // Test component configuration
                f_cfUp();
                
                // Test adapter configuration
                
                // Preamble
                f_prInitialState();
                f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
                
                // Test Body
                v_iviIdentificationNumber := f_utTriggerEvent(valueof(m_utTriggerEvent(omit,-,-,-,-,{PX_RELAVANCE_ZONEID},{PX_DETECTION_ZONEID},{PX_DRIVER_AWARENES_ZONEID})));

                tc_ac.start;
                alt {
                    [] ivimPort.receive(
                        mw_ivimInd(
                            mw_anyIvimPdu(
                                mw_itsPduHeader,
                                mw_ivimStructure(
                                    ?,
                                    {mw_iviContainer_textContainer
                                     ({mw_tcPart_allZoneIds({PX_RELAVANCE_ZONEID},       //relevanceZoneIds
                                                            -,                           //data
                                                            {PX_DETECTION_ZONEID},       //detectionZoneIds
                                                            {PX_DRIVER_AWARENES_ZONEID}  //driverAwarenessZoneIds
                                       )}
                                     )}
                                )
                    ))) { 
                        tc_ac.stop;
                        log("*** " & testcasename() & ": PASS: Expected IVIM received ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_success);  
                    }
                    [] tc_ac.timeout {
                        log("*** " & testcasename() & ": INCONC: IVIM not received ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
                    }
                }
                
                // Postamble
                f_poCancelEvent(e_iut, v_iviIdentificationNumber);
                f_cfDown();
                
            } // End of function f_IS_IVI_GEN_TEXT_BV_01
            
            function f_IS_IVI_GEN_TEXT_BV_02() runs on ItsIvim {
                
                // TODO
                // Local variables
                var IviIdentificationNumber v_iviIdentificationNumber;
                
                // Test control
                if (not (PICS_IVIM_GENERATION and PICS_IVIM_HAS_TEXT_CONTAINER)) {
                    log("*** " & testcasename() & ": PICS_IVIM_GENERATION AND PICS_IVIM_HAS_TEXT_CONTAINER required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
                
                // Test component configuration
                f_cfUp();
                
                // Test adapter configuration
                
                // Preamble
                f_prInitialState();
                f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
                
                // Test Body
                v_iviIdentificationNumber := f_utTriggerEvent(valueof(m_utTriggerEvent(omit,-,-,{PX_ZONEID_1})));

                tc_ac.start;
                alt {
                    [] ivimPort.receive(
                        mw_ivimInd(
                            mw_anyIvimPdu(
                                mw_itsPduHeader,
                                mw_ivimStructure(
                                    ?,
                                    {mw_iviContainer_textContainer
                                     ({mw_tcPart_direction})
                                    }
                                )
                    ))) { 
                        tc_ac.stop;
                        log("*** " & testcasename() & ": PASS: Expected IVIM received ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_success);  
                    }
                    [] tc_ac.timeout {
                        log("*** " & testcasename() & ": INCONC: IVIM not received ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
                    }
                }
                
                // Postamble
                f_poCancelEvent(e_iut, v_iviIdentificationNumber);
                f_cfDown();
                
            } // End of function f_IS_IVI_GEN_TEXT_BV_02
            
            function f_IS_IVI_GEN_TEXT_BV_03() runs on ItsIvim {
                
                // TODO
                // Local variables
                var IviIdentificationNumber v_iviIdentificationNumber;
                
                // Test control
                if (not (PICS_IVIM_GENERATION and PICS_IVIM_HAS_TEXT_CONTAINER)) {
                    log("*** " & testcasename() & ": PICS_IVIM_GENERATION AND PICS_IVIM_HAS_TEXT_CONTAINER required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
                
                // Test component configuration
                f_cfUp();
                
                // Test adapter configuration
                
                // Preamble
                f_prInitialState();
                f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
                
                // Test Body
                v_iviIdentificationNumber := f_utTriggerEvent(valueof(m_utTriggerEvent(omit,-,-,{PX_ZONEID_1})));

                tc_ac.start;
                alt {
                    [] ivimPort.receive(
                        mw_ivimInd(
                            mw_anyIvimPdu(
                                mw_itsPduHeader,
                                mw_ivimStructure(
                                    ?,
                                    {mw_iviContainer_textContainer
                                     ({mw_tcPart_text(-,
                                                      -,
                                                      {mw_text})})
                                    }
                                )
                    ))) { 
                        tc_ac.stop;
                        log("*** " & testcasename() & ": PASS: Expected IVIM received ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_success);  
                    }
                    [] tc_ac.timeout {
                        log("*** " & testcasename() & ": INCONC: IVIM not received ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
                    }
                }
                
                // Postamble
                f_poCancelEvent(e_iut, v_iviIdentificationNumber);
                f_cfDown();
                
            } // End of function f_IS_IVI_GEN_TEXT_BV_03
            
            function f_IS_IVI_GEN_TEXT_BV_04() runs on ItsIvim {
                
                // TODO
                // Local variables
                var IviIdentificationNumber v_iviIdentificationNumber;
                
                // Test control
                if (not (PICS_IVIM_GENERATION and PICS_IVIM_HAS_TEXT_CONTAINER  and PICS_IVIM_HAS_LAYOUT_CONTAINER)) {
                    log("*** " & testcasename() & ": PICS_IVIM_GENERATION AND PICS_IVIM_HAS_TEXT_CONTAINER AND PICS_IVIM_HAS_LAYOUT_CONTAINER required for executing the TC ***");
                    setverdict(inconc);
                    stop;
                }
                
                // Test component configuration
                f_cfUp();
                
                // Test adapter configuration
                
                // Preamble
                f_prInitialState();
                f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success);
                
                // Test Body
                v_iviIdentificationNumber := f_utTriggerEvent(valueof(m_utTriggerEvent(omit,-,-,-,-,-,-,-,-,-,PX_LAYOUTID)));

                tc_ac.start;
                alt {
                    [] ivimPort.receive(
                        mw_ivimInd(
                            mw_anyIvimPdu(
                                mw_itsPduHeader,
                                mw_ivimStructure(
                                    ?,
                                    {mw_iviContainer_textContainer
                                     ({mw_tcPart_layoutId(-,-,PX_LAYOUTID)})
                                    }
                                )
                    ))) { 
                        tc_ac.stop;
                        log("*** " & testcasename() & ": PASS: Expected IVIM received ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_success);  
                    }
                    [] tc_ac.timeout {
                        log("*** " & testcasename() & ": INCONC: IVIM not received ***");
                        f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout);
                    }
                }
                
                // Postamble
                f_poCancelEvent(e_iut, v_iviIdentificationNumber);
                f_cfDown();
                
            } // End of function f_IS_IVI_GEN_TEXT_BV_04